Skip to content
Jidian Stone
  • Home
  • / Articles
  • /
  • Box-Muller変換を用いた正規分布からのサンプリング

Box-Muller変換を用いた正規分布からのサンプリング

8月 14, 2021Articles
X
  • プライバシー&クッキー
  • デカルト座標と極座標の簡単なレビュー。
  • Box-Muller変換
  • ラップアップ

プライバシー&クッキー

このサイトはクッキーを使用しています。 継続することにより、あなたはそれらの使用に同意します。 Cookieの制御方法など、詳細についてはこちらをご覧ください。

わかった!

広告

正規分布は多くの一般的な統計分析の主力であり、この分布からサンプルを描画できることは、多くの統計/機械学習アルゴリズムの中心にあ 逆変換サンプリング、Zigguratアルゴリズム、比法(拒絶サンプリング技術)など、正規分布からサンプリングするために開発された多くの方法がありました。 この記事では、Box-Muller変換と呼ばれるエレガントな方法に焦点を当てます。

デカルト座標と極座標の簡単なレビュー。

Box-Muller変換の使用について説明する前に、デカルト座標と極座標の関係についての理解を新たにしましょう。 幾何学から、Xとyがデカルト平面内の2点である場合、半径rと角度\thetaを持つ極座標で表すことができることを覚えているかもしれません。:R^2=x^2+y^2+x^2+y^2^2

\したがって、

x=r\cos(\theta)=\frac{y}{x}したがって、

x=r\cos(\theta)=\frac{y}{x}

y=r\sin(\theta))

r\leq1と\theta\inの場合、下の図に示すように、単位円に含まれる値をマッピングすることに注意してください。 また、このような円の中の確率変数は、一様分布からサンプリングされた値を変換することによって生成できることに注意してください。 具体的には、半径はr\sim Unif(0,1)からサンプリングすることができ、角度はtheta\sim2\pi\times Unif(0,1)からサンプリングすることができます。 同様のメカニズム(一様変数を使用して円内に点を描画する)は、正規確率変数をサンプリングするためのボックス-ミュラー変換の中心にあります。

デカルト座標と極座標の関係の例

Box-Muller変換

を使用した正規分布サンプルの描画さて、デカルト座標が極座標でどのように表されるかを議論したので、この関係を使用して確率変数を生成する方法に移りましょう。 ボックスミュラーサンプリングは、二つの独立した標準正規ランダム直交変数Xとの共同分布を表すことに基づいていますY

X\sim N(0,1)

Y\sim N(0,1)

極座標で。 結合分布p(x,y)(円対称)は次のようになります。:\P(x、y)=p(x)p(y)=\frac{1}{\sqrt{2\pi}}e^{-\frac{x^2}{2}}\frac{1}{\sqrt{2\pi}}e^{-\frac{y}{\sqrt{2\pi}}\frac{1}{\sqrt{2\pi}}\frac{1}{\sqrt{2\pi}}\frac{1}{\sqrt{2\pi}}\frac{1}{\sqrt{2\pi}}\frac{1}{\sqrt{2\pi}}\frac{1}{\sqrt{2\pi}}\frac{1}{\sqrt{2\^2}{2}}

= \frac frac{1}{2\pi}e^{-\frac{x^2+y}}yを計算します。^2}{2}}

指数の分子内のx^2+y^2項がr^2(上記のように)に等しいことに気付いた場合、ジョイント正規分布のデカルト表現とその極座標表現との間の接続:P p(x、y)=\左(\frac{1}{2\pi}\右)\左(e^{\frac{-r^2}{2}}\右)pは、p p(x、y)=\左(\frac{1}{2\pi}\右)eは、p p(x、y)=\左(\frac{1}{2\pi}\右)eを意味します。)

これは二乗半径上の指数分布である二つの密度関数の積です:

r^2\sim Exp(\frac{r^2}{r^2}){1}{2})

そして角度上の均一な分布:

\シータ\sim Unif(0,2\pi)

単位円上の点を生成するときに上記のものと同じように。 さて、我々は指数分布と一様分布の間に別の接続を行う場合、すなわち:1087>

Exp(\lambda)=\frac{-\log(Unif(0,1))}{\lambda}

次に、r\sim\sqrt{-2\log(Unif)}を使用します。(0,1))}

これにより、2つの独立した一様分布(1つはr、もう1つは\theta)からサンプリングし、それらを上記の関係を介してデカルト座標に変換することによ 詳細には、手順は次のようになります:

  1. ドロー、u_1、u_2\sim Unif(0,1)
  2. 変数を半径と角度表現に変換します。r=\sqrt{-2\log(u_1)}、および\theta=2\pi u_2
  3. 半径と角度をデカルト座標に変換します。x=r\cos(\theta)、y=r\sin(\theta))

どのような結果は、2つの独立した正規確率変数、XとYです。 Box-MullerアルゴリズムのMATLAB実装を以下に示します:

% NORMAL SAMPLES USING BOX-MUELLER METHOD% DRAW SAMPLES FROM PROPOSAL DISTRIBUTIONu = rand(2,100000);r = sqrt(-2*log(u(1,:)));theta = 2*pi*u(2,:);x = r.*cos(theta);y = r.*sin(theta);% DISPLAY BOX-MULLER SAMPLESfigure% X SAMPLESsubplot(121);hist(x,100);colormap hot;axis squaretitle(sprintf('Box-Muller Samples Y\n Mean = %1.2f\n Variance = %1.2f\n Kurtosis = %1.2f',mean(x),var(x),3-kurtosis(x)))xlim()% Y SAMPLESsubplot(122);hist(y,100);colormap hot;axis squaretitle(sprintf('Box-Muller Samples X\n Mean = %1.2f\n Variance = %1.2f\n Kurtosis = %1.2f',mean(y),var(y),3-kurtosis(y)))xlim()

正規分布のBox-Mullerサンプル

ラップアップ

MATLABコードの出力は上に示されています。 生成されたサンプルの第一、第二、および第四の中心モーメント(平均、分散、および尖度)が標準法線と一致していることに注意してください。 Box-Muller変換は、区間(0,1)上の一様な変数の別の例であり、より複雑な分布から標本化するために変換することができます。

Write a Reply or Comment コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

最近の投稿

  • バーナム・パビリオンズ・ホテル
  • 石灰化転子滑液包炎:石灰化の解消と非侵襲的治療による臨床的寛解。 症例報告
  • 車のドアの音を抑える
  • アレルギーの発症:酸素の隠れた危険性
  • ビルマネージャーの仕事内容
  • モッツァレラとトマトのカプレーゼフラットブレッド
  • バニラブラウンシュガースクラブレシピ! {DIYボディスクラブ}
  • これはあなたの口内炎がより深刻なものであるときです

アーカイブ

  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • NorskNorsk
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語
  • 한국어한국어

Copyright Jidian Stone 2022 | Theme by ThemeinProgress | Proudly powered by WordPress