Reddetme örneklemesi olduğunda son derece iyi çalışır ve c d ≥ exp ( 2 ) için makul olur .cd≥exp(5)cd≥exp(2)
Matematiği biraz basitleştirmek için , x = a yazın ve şunu not edin:k=cdx=a
f(x)∝kxΓ(x)dx
için . Ayar x = u 3 / 2 verirx≥1x=u3/2
f(u)∝ku3/2Γ(u3/2)u1/2du
için . Ne zaman k ≥ exp ( 5 ) , bu dağıtım son derece yakın Normal etmektir (ve yanı yaklaştıkça k büyüdükçe). Özellikle,u≥1k≥exp(5)k
modunu sayısal olarak bulun (örneğin, Newton-Raphson kullanarak).f(u)
F ( u ) modu hakkında ikinci sıraya genişletin .logf(u)
Bu, yaklaşık bir Normal dağılımın parametrelerini verir. Yüksek doğrulukta, bu yaklaşık Normal , aşırı kuyruklar dışında hükmeder. ( K < exp ( 5 ) olduğunda , tahakkümü sağlamak için Normal pdf'yi biraz ölçeklendirmeniz gerekebilir.)f(u)k<exp(5)
Bu ön çalışmayı verilen herhangi bir değeri için yaptıktan ve sabit bir M > 1 (aşağıda açıklandığı gibi) tahmin ettikten sonra , rastgele bir varyasyon elde etmek aşağıdakilerle ilgilidir:kM>1
Hakim Normal dağılımdan g ( u ) bir değeri çizin .ug(u)
Eğer ya da yeni bir tek tip değişken eğer X aşan f ( u ) / ( E g ( u ) ) , aşama 1 'e geri döner.u<1Xf(u)/(Mg(u))
Takım .x=u3/2
Değerlendirmelerine beklenen sayısı nedeniyle arasında tutarsızlıklara g ve f daha dağılımı özellikleri nedeniyle ret sadece biraz daha büyük 1. (bazı ek değerlendirmeler daha oluşacak olan 1 , hatta zaman k olarak düşük olduğu gibi 2 gibi sıklığı oluşumlar azdır.)fgf1k2
Bu grafik, Şekil logaritma bir g ve f bir fonksiyonu olarak u için . Grafikler çok yakın olduğu için neler olup bittiğini görmek için oranlarını incelememiz gerekiyor:k=exp(5)
Bu, günlük oranı ; logaritmanın dağılımın ana kısmı boyunca pozitif olmasını sağlamak için M = exp ( 0.004 ) faktörü dahil edilmiştir; yani, muhtemelen ihmal edilebilir olasılık bölgeleri dışında M g ( u ) ≥ f ( u ) sağlamak . M'yi yeterince büyük yaparak , M ⋅ glog(exp(0.004)g(u)/f(u))M=exp(0.004)Mg(u)≥f(u)MM⋅gen uç kuyruklar dışında hepsine hakimdir (zaten bir simülasyonda seçilme şansı yoktur). Bununla birlikte, M büyüdükçe reddedilme sıklığı artar. Gibi k büyük büyür, M çok yakın şekilde seçilebilir 1 pratikte ceza alınmaz, hangi.fMkM1
Benzer bir yaklaşım için bile geçerlidir , ancak exp ( 2 ) < k < exp ( 5 ) olduğunda oldukça büyük M değerleri gerekebilir , çünkü f ( u ) belirgin şekilde asimetriktir. Örneğin, k = exp ( 2 ) ile , oldukça doğru bir g elde etmek için M = 1 ayarlamamız gerekir :k>exp(2)Mexp(2)<k<exp(5)f(u)k=exp(2)gM=1
Üst kırmızı eğri, grafiğidir, alt mavi eğri ise log ( f ( u ) ) grafiğidir . Reddi örnekleme f göreli exp ( 1 ) g kötü değil hala: Bütün deneme 2/3 hakkında neden olacaktır çaba üç katına, reddedilmesine çizer. Sağ arka ( u > 10 ya da x > 10 3 / 2 ~ 30log(exp(1)g(u))log(f(u))fexp(1)gu>10x>103/2∼30) (Nedeniyle ret örnekleme temsil altında olacak artık baskındır f fazla bu kuyruk içerir orada daha az), fakat exp ( - 20 ) ~ 10 - 9 toplam olasılık.exp(1)gfexp(−20)∼10−9
Özetlemek gerekirse, modu hesaplamak ve güç serisinin kuadratik modunu mod etrafında değerlendirmek için yapılan ilk çabadan sonra - en fazla onlarca işlev değerlendirmesi gerektiren bir çaba - reddeden örnekleme kullanabilirsiniz değişken başına 1 ve 3 (ya da öylesine) değerlendirmeler arasında beklenen bir maliyet. Maliyet çarpanı olarak hızla 1 damla k = C d 5 artışlara.f(u)k=cd
Sadece bir beraberlik bile gereklidir, bu yöntem makul. Aynı k değeri için birçok bağımsız çekilişe ihtiyaç duyulduğunda kendi başına gelir , çünkü o zaman ilk hesaplamaların yükü birçok çekiliş üzerinden itfa edilir.fk
ek
@Cardinal, oldukça makul bir şekilde, devam eden bazı el sallama analizlerinin desteklenmesini istedi. Özellikle, neden dönüşümü gerektiği yapmak dağılımı yaklaşık olarak normal?x=u3/2
Box-Cox dönüşümleri teorisinin ışığında, dağılımı "daha" Normal kılacak (sabit bir α için , umarım birlikten çok farklı olmayan) biçiminde bir güç dönüşümü aramak doğaldır . Tüm Normal dağılımların basit bir şekilde karakterize edildiğini hatırlayın: pdf'lerinin logaritmaları tamamen kuadratiktir, sıfır doğrusal terim vardır ve daha yüksek mertebe terimleri yoktur. Bu nedenle, herhangi bir pdf alabilir ve logaritmasını (en yüksek) tepe noktası etrafında bir kuvvet serisi olarak genişleterek Normal dağılımla karşılaştırabiliriz. En azından üçüncüyü yapan bir α değeri arıyoruzx=uααα power vanish, at least approximately: that is the most we can reasonably hope that a single free coefficient will accomplish. Often this works well.
But how to get a handle on this particular distribution? Upon effecting the power transformation, its pdf is
f(u)=kuαΓ(uα)uα−1.
Take its logarithm and use Stirling's asymptotic expansion of log(Γ):
log(f(u))≈log(k)uα+(α−1)log(u)−αuαlog(u)+uα−log(2πuα)/2+cu−α
(for small values of c, which is not constant). This works provided α is positive, which we will assume to be the case (for otherwise we cannot neglect the remainder of the expansion).
Compute its third derivative (which, when divided by 3!, will be the coefficient of the third power of u in the power series) and exploit the fact that at the peak, the first derivative must be zero. This simplifies the third derivative greatly, giving (approximately, because we are ignoring the derivative of c)
−12u−(3+α)α(2α(2α−3)u2α+(α2−5α+6)uα+12cα).
When k is not too small, u will indeed be large at the peak. Because α is positive, the dominant term in this expression is the 2α power, which we can set to zero by making its coefficient vanish:
2α−3=0.
That's why α=3/2 works so well: with this choice, the coefficient of the cubic term around the peak behaves like u−3, which is close to exp(−2k). Once k exceeds 10 or so, you can practically forget about it, and it's reasonably small even for k down to 2. The higher powers, from the fourth on, play less and less of a role as k gets large, because their coefficients grow proportionately smaller, too. Incidentally, the same calculations (based on the second derivative of log(f(u)) at its peak) show the standard deviation of this Normal approximation is slightly less than 23exp(k/6), with the error proportional to exp(−k/2).