Ters dönüşüm yöntemi nasıl çalışır?


21

Tersine çevirme yöntemi nasıl çalışır?
Rasgele bir numune olması demek yoğunluğu ile boyunca ve bu nedenle ile . Sonra inversiyon yöntemi ile olarak dağılımını elde ederim . X1,X2,...,Xnf(x;θ)=1θx(1θ)θ
0<x<1FX(x)=x1/θ(0,1)XFX1(u)=uθ

Peki dağılımına sahip mi? Tersine çevirme yöntemi böyle mi çalışır?uθX

u<-runif(n)
x<-u^(theta)

3
Olasılık integrali dönüşümüyle ilgili konularımıza bakın .
whuber

1
Evet, buna rağmen genellikle "olasılık integral dönüşümü" denir. Neden çalıştığını görmek için dağıtım işlevini türetmeyi deneyin . F1(U)
dsaxton

Yanıtlar:


20

Yöntem çok basit, bu yüzden basit kelimelerle açıklayacağım. İlk olarak, örneklemek istediğiniz bazı dağıtımların toplu dağıtım işlevini alın. Fonksiyon, giriş olarak değerini alır ve size elde etme olasılığının ne olduğunu söyler . Yani x X xFXxXx

FX(x)=Pr(Xx)=p

bu fonksiyon fonksiyonunun tersine , , giriş ve olarak döndürür . 'lerin eşit olarak dağıtıldığına dikkat edin - biliyorsanız bu herhangi bir örnekleme için kullanılabilir . Yönteme ters dönüşüm örneklemesi denir . Fikir çok basit: ondan eşit örnek değerler kolaydır Eğer bazı numuneye istiyorum eğer öyleyse, , sadece değerler alan ve pas aracılığıyla elde etmek için 'inFX1pxpFXFX1U(0,1)FXuU(0,1)uFX1x

FX1(u)=x

veya R (normal dağılım için)

U <- runif(1e6)
X <- qnorm(U)

Aşağıdaki CDF'ye bakmasını görselleştirmek için genellikle ekseninden değerlerin olasılıkları için eksenine bakma açısından dağılımları düşünüyoruz . Bu örnekleme yöntemi ile tersini yapıyoruz ve "olasılıklar" ile başlıyor ve bunları kendileriyle ilgili değerleri seçmek için kullanıyoruz. Kesikli dağılımların ile tedavi bir hat olarak ile bir noktada yaptığı yere bağlı olarak ve atama değerleri bu hat üzerinde yer (örneğin, ise veya ise numune için ).yxU01u00u<0.510.5u1Bernoulli(0.5)

resim açıklamasını buraya girin

Ne yazık ki, bu her zaman mümkün değildir, çünkü her fonksiyonun tersi yoktur, örneğin bu yöntemi iki değişkenli dağılımlarla kullanamazsınız. Ayrıca her durumda en verimli yöntem olmak zorunda değildir , birçok durumda daha iyi algoritmalar vardır.

Ayrıca nun dağılımı nedir . Yana tersidir ardından ve , yani evet değerleri kullanılarak elde edilen bu yöntem aynı dağılıma sahiptir . Bunu basit bir simülasyonla kontrol edebilirsinizFX1(u)FX1FXF - 1 X ( F X ( x ) ) = x XFX(FX1(u))=uFX1(FX(x))=xX

U <- runif(1e6)
all.equal(pnorm(qnorm(U)), U)

İyi cevap. Aşağıdaki gibi dağılımları olduğunda bu yöntem çalışır üstel, Cauchy, geometrik, Pareto, Lojistik, Extreme Değer Weibull bir kapalı bir formu bulamıyorum Örneğin, vb normal dağılıma . Bu nedenle, bu yöntemi kullanamazsınız. Reddetme Yöntemi gibi diğer yöntemleri deneyebilirsiniz .
Abbas Salimi

2
Ters dönüşüm yöntemini normal dağılımla kullanabilirsiniz. Normal ters CDF için çok sayıda uygulama var . Örneğin, tamamlayıcı hata işlevini kullanarak normal ters CDF yazabilirsiniz . Örnek erfc uygulaması burada . Erfc kodunu kendiniz kodlamayın; bir kütüphane kullanın. Kapalı form formülü yok varolduğunu değil yüksek kaliteli sayısal yaklaşımlar kullanamaz ima.
Matthew Gunn

2

Evet, dağılımına sahiptir .UθX

Ters dönüşüm yönteminin arkasındaki sezgide iki ek nokta yararlı olabilir

(1) gerçekte ne anlama geldiğini anlamak için lütfen kantil (ters CDF) fonksiyonunu anlamama yardımcı olacak Tim'in cevabındaki bir grafiğe bakınız.F1

(2) [Açıklık yerine daha fazla karışıklık getirirse, lütfen aşağıdakileri göz ardı edin]

Let be bir rastgele değişken (RV), sürekli ve sıkı bir ED artan . Sonra Gösterim ile ilgili not: bir rv Bu nedenle, rv , işlevi bir rv'nin kendisidir. XF

F(X)Unif(0,1)

XXF(X)

Örneğin, soruyu çevirirseniz, erişebilmeniz ve standart bir üniforma oluşturmak istiyorsanız, . Bu rastgele değişken diyelim . Yani Sorunuza geri , karşıt göreviniz var: çıkarmak . Yani, aslında XX1/θUnif(0,1)U

U=X1/θ
XU
X=Uθ

PS. Yöntemin alternatif isimleri olasılık integral dönüşümü, ters dönüşüm örneklemesi, kantil dönüşüm ve bazı kaynaklarda "simülasyonun temel teoremi" dir.

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.