Monte Carlo ile Kullback Leibler (KL) Diverjansını Tahmin Edin


10

F ve g'nin iki sürekli dağılımı arasındaki KL sapmasını tahmin etmek istiyorum. Ancak, f veya g için yoğunluğu yazamıyorum. Bazı yöntemlerle (örneğin, markov zinciri monte carlo) hem f hem de g'den numune alabilirim.

F'den g'ye KL sapması şöyle tanımlanır

DKL(f||g)=-f(x)günlük(f(x)g(x))dx

Bu, ilgili beklentisidir, böylece bazı monte carlo tahminleri hayal edebilirsinizgünlük(f(x)g(x))

1N-ΣbenN-günlük(f(xben)g(xben))

Burada i , i = 1, ..., N için f'den (yani alınan N örneklerini endekslerxben~f()

Ancak, f () ve g () bilmediğim için, bu monte carlo tahminini bile kullanamıyorum. Bu durumda KL'yi tahmin etmenin standart yolu nedir?

EDIT: f () veya g () için normalleştirilmemiş yoğunluğu bilmiyorum


Ecdfs kullanmayı düşündünüz mü?
Toby

Bu işe yarayacaktır ancak sert f ve g seçimi için (yavaş veya kapalı kuyruklar) keyfi olarak yavaş olabilir. Örnekleri kuyruklardan uzak tutmaya karar verirseniz, roc'u üst sınırlamada daha fazla şansınız olabilir.
Christian Chapman

Yanıtlar:


7

Bence değerlendirebilirsin f ve gnormalleştirici bir sabite kadar. Göstermekf(x)=fu(x)/cf ve g(x)=gu(x)/cg.

Kullanılabilecek tutarlı bir tahmin edici

DKL^(f||g)=[n1jfu(xj)/πf(xj)]11NiN[log(fu(zi)gu(zi))fu(zi)πr(zi)]log(r^)
nerede
(1)r^=1/n1/nΣjfu(xj)/πf(xj)Σjgu(yj)/πg(yj).
oran için önemli bir örnekleme tahmin edicisidir cf/cg. Burada kullanπf ve πg enstrümantal yoğunluk olarak fu ve gu sırasıyla ve πr normal olmayan yoğunlukların log oranını hedeflemek.

İzin ver {xben}~πf, {yben}~πg, ve {zben}~πr. (1) 'in payıcf. Payda yakınsarcg. Oran, sürekli haritalama teoremi ile tutarlıdır. Oranın günlüğü tekrar sürekli haritalama ile tutarlıdır.

Tahmincinin diğer kısmı ile ilgili olarak,

1NiN[log(fu(zi)gu(zi))fu(zi)πr(zi)]ascfE[log(fu(zi)gu(zi))]
büyük sayılar kanunu.

Motivasyonum şu:

DKL(f||g)=-f(x)günlük(f(x)g(x))dx=-f(x){günlük[fu(x)gu(x)]+günlük[cgcf]}dx=Ef[günlükfu(x)gu(x)]+günlük[cgcf]=cf-1Eπr[günlükfu(x)gu(x)fu(x)πr(x)]+günlük[cgcf].
Bu yüzden onu izlenebilir parçalara ayırıyorum.

Olabilirlik oranının nasıl simüle edileceğiyle ilgili daha fazla fikir için, birkaç tane içeren bir kağıt buldum: https://projecteuclid.org/download/pdf_1/euclid.aos/1031594732


(+1) Burada, hedef dağılım, örneklediğiniz dağıtımdan daha büyük kuyruklara sahipse ve / veya boyutların sayısının çok fazla olması durumunda önem örneklemesinin son derece yüksek varyansa (sonsuz varyansa) sahip olabileceğini belirtmek gerekir.
David J. Harris

DavidJ.Harris çok çok doğru
Taylor

6

Burada sadece modellerden örnek alabileceğinizi varsayıyorum; normal olmayan bir yoğunluk fonksiyonu mevcut değildir.

Sen yaz

DKL(f||g)=-f(x)günlük(f(x)g(x)=:r)dx,

burada olasılıkların oranını r. Alex Smola, farklı bir bağlamda , sadece bir sınıflandırıcı eğiterek bu oranları "kolayca" tahmin edebileceğinizi yazıyor . Bir sınıflandırıcı aldığınızı varsayalımp(f|x), bu size bir gözlemin x tarafından oluşturuldu f. Bunu not etp(g|x)=1-p(f|x). Sonra:

r=p(x|f)p(x|g)=p(f|x)p(x)p(g)p(g|x)p(x)p(f)=p(f|x)p(g|x),

burada ilk adım Bayes'e, son adım ise p(g)=p(f).

Böyle bir sınıflandırıcı almak iki nedenden dolayı oldukça kolay olabilir.

İlk olarak, stokastik güncellemeler yapabilirsiniz. Bu, lojistik regresyon veya sinir ağları için tipik olan degrade tabanlı bir optimize edici kullanıyorsanız, her birinden bir örnek çizebileceğiniz anlamına gelir.f ve g ve bir güncelleme yapın.

İkincisi, neredeyse sınırsız veriye sahip olduğunuz için, f ve g ölüme - aşırı takma veya benzeri şeyler için endişelenmenize gerek yoktur.


0

@Bayerj tarafından bahsedilen olasılık sınıflandırıcı yönteminin yanı sıra, [1-2] 'de türetilen KL ıraksamasının alt sınırını da kullanabilirsiniz:

KL[fg]yudumT{Ex~f[T(x)]-Ex~g[tecrübe(T(x)-1)]},
nerede T:XR,isteğe bağlı bir işlevdir. Bazı hafif koşullar altında, sınır aşağıdakiler için sıkıdır:
T(x)=1+ln[f(x)g(x)]

KL farklılığını tahmin etmek f ve g, fonksiyona alt sınır wrt T(x).

Referanslar:

[1] Nguyen, X., Wainwright, MJ ve Jordan, MI, 2010. Dışbükey risk minimizasyonu ile diverjans fonksiyonlarını ve olabilirlik oranını tahmin etmek. IEEE Bilgi Teorisi İşlemleri, 56 (11), s.5847-5861.

[2] Nowozin, S., Cseke, B. ve Tomioka, R., 2016. f-gan: Değişken ıraksama minimizasyonu kullanarak üretken nöral örnekleyicilerin eğitimi. Sinirsel bilgi işleme sistemlerindeki ilerlemeler (s. 271-279).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.