考慮在半徑為1的圓盤上均勻的取隨機(jī)點(diǎn)應(yīng)該怎么做?
Rejection Sampling
首先想象有一個(gè)2X2的單位正方形,然后取得(-1,1)分布均勻隨機(jī)數(shù)x和y作為坐標(biāo)隨機(jī)分布在正方形內(nèi),如果該點(diǎn)坐標(biāo)離正方形中心距離大于1那么就重新采樣,直到采樣點(diǎn)在單位圓內(nèi)為止。這種方式很直觀,然而性能上卻有所不足。
極坐標(biāo)
首先生成角度(0,2π),再生成半徑分布在(0,1)即可。那么問(wèn)題來(lái)了,系統(tǒng)隨機(jī)生成的隨機(jī)數(shù)是在(0,1)上均勻分布的,那么如果直接采用均勻分布半徑我們的采樣點(diǎn)是否是在面積上均勻的呢?下圖是實(shí)驗(yàn)結(jié)果:

可以看出答案是否定的,因?yàn)殡x中心點(diǎn)越近的地方顯然占據(jù)的相對(duì)面積也越小,因此均勻分布的半徑會(huì)讓中心附近生成的采樣點(diǎn)越多。
那么我們要如何對(duì)均勻分布的采樣值操作才能讓新生成的變量的PDF滿足圓盤均勻呢?在網(wǎng)上搜索了一番發(fā)現(xiàn)只要對(duì)生成的01均勻分布變量x取根號(hào)即可:

可以看到此時(shí)便能得到正確結(jié)果。以下是勉強(qiáng)回想起自己學(xué)過(guò)的統(tǒng)計(jì)學(xué)知識(shí)的證明:

更進(jìn)一步復(fù)習(xí)其實(shí)發(fā)現(xiàn)直接套用密度變換公式即可:
