Box-Muller变换原理详解

在这里插入图片描述

Box-Muller变换原理详解

Box-Muller变换

Box-Muller变换是通过服从均匀分布的随机变量,来构建服从高斯分布的随机变量的一种方法。具体的描述为:选取两个服从 [ 0 , 1 ] [0,1] [0,1]上均匀分布的随机变 U 1 U1 U1 U 2 U2 U2 X X X Y Y Y满足
X = c o s ( 2 π U 1 ) − 2 ln ⁡ U 2 X=cos(2\pi U_1)\sqrt{-2\ln U_2} X=cos(2πU1)2lnU2 Y = s i n ( 2 π U 1 ) − 2 ln ⁡ U 2 Y=sin(2\pi U_1)\sqrt{-2\ln U_2} Y=sin(2πU1)2lnU2

X X X Y Y Y服从均值为0,方差为 1 1 1的高斯分布。

原理详解

假定 X X X Y Y Y服从均值为 0 0 0,方差为 1 1 1的高斯分布,且相互独立。令 p ( X ) p(X) p(X) p ( Y ) p(Y) p(Y)分别为其密度函数,则
p ( X ) = 1 2 π e − X 2 2 , p ( Y ) = 1 2 π e − Y 2 2 p(X)=\frac{1}{\sqrt{2\pi}}e^{-\frac{X^2}{2}}, p(Y)=\frac{1}{\sqrt{2\pi}}e^{-\frac{Y^2}{2}} p(X)=2π 1e2X2,p(Y)=2π 1e2Y2SHISHUAI0com

由于 X X X, Y Y Y相互独立,因此它们的联合概率密度满足
p ( X , Y ) = 1 2 π e − X 2 + Y 2 2 p(X,Y)=\frac{1}{\sqrt{2\pi}}e^{-\frac{X^2+Y^2}{2}} p(X,Y)=2π 1e2X2+Y2

X X X Y Y Y作坐标变换,使
X = R c o s ( θ ) , Y = R s i n ( θ ) X=Rcos(\theta), Y=Rsin(\theta) X=Rcos(θ),Y=Rsin(θ)


∫ − ∞ ∞ ∫ − ∞ ∞ 1 2 π e − X 2 + Y 2 2 d X d Y = ∫ − ∞ ∞ ∫ − ∞ ∞ 1 2 π e − R 2 2 R d θ d R = 1 \int^\infty_{-\infty}\int^\infty_{-\infty}\frac{1}{2\pi}e^{-\frac{X^2+Y^2}{2}}dXdY=\int^\infty_{-\infty}\int^\infty_{-\infty}\frac{1}{2\pi}e^{-\frac{R^2}{2}}Rd\theta dR=1 2π1e2X2+Y2dXdY=2π1e2R2RdθdR=1

由此可得 R R R θ θ θ的分布函数 P R P_R PR P θ P_θ Pθ
P R ( R ≤ r ) = ∫ 0 2 π ∫ 0 r 1 2 π e − R 2 2 R d θ d R = 1 − e − r 2 2 P_R(R\le r)=\int^{2\pi}_0\int^r_0\frac{1}{2\pi}e^{-\frac{R^2}{2}}Rd\theta dR=1-e^{-\frac{r^2}{2}} PR(Rr)=02π0r2π1e2R2RdθdR=1e2r2 P θ ( θ ≤ ϕ ) = ∫ 0 ϕ ∫ 0 ∞ 1 2 π e − R 2 2 R d θ d R = ϕ 2 π P_\theta(\theta\le \phi)=\int^{\phi}_0\int^{\infty}_0\frac{1}{2\pi}e^{-\frac{R^2}{2}}Rd\theta dR=\frac{\phi}{2\pi} Pθ(θϕ)=0ϕ02π1e2R2RdθdR=2πϕ

显然, θ \theta θ服从 [ 0 , 2 π ] [0,2\pi] [0,2π]上的均匀分布。令
F R ( r ) = 1 − e − r 2 2 F_R(r)=1-e^{-\frac{r^2}{2}} FR(r)=1e2r2

则其反函数
R = F R − 1 ( z ) = − 2 ln ⁡ ( 1 − z ) R=F_R^{-1}(z)=\sqrt{-2\ln(1-z)} R=FR1(z)=2ln(1z)

当z服从 [ 0 , 1 ] [0,1] [0,1]上均匀分布时, R R R的分布函数为 F R ( r ) F_R(r) FR(r)。因此可以选取两个服从 [ 0 , 1 ] [0,1] [0,1]上均匀分布的随机变量 U 1 U_1 U1 U 2 U_2 U2,使得
θ = 2 π U 1 , 1 − z = U 2 , 即 R = − 2 ln ⁡ U 2 \theta=2\pi U_1, 1-z=U_2, 即R=\sqrt{-2\ln U_2} θ=2πU1,1z=U2,R=2lnU2

将此带入
X = R c o s ( θ ) , Y = R s i n ( θ ) X=Rcos(\theta), Y=Rsin(\theta) X=Rcos(θ),Y=Rsin(θ)

即可得到最初的两个关于X与Y的表达式,它们服从均值为0,方差为1的高斯分布。

  • 29
    点赞
  • 98
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值