采样(四):从正态分布构造均匀分布
如何从正态分布构造均匀分布?
问题1:如果有正态分布生成器$G_n$,如果获得均匀分布生成器?
问题2:如果样本$x_1, x_2, \dots, x_n$独立采样自正态分布,如果使其变换为均匀分布?
逆变换采样
累积分布函数(CDF)是个单调函数,那么累积分布函数的反函数为,
如果$u \sim U[0, 1]$,那么$F^{-1}(u)$服从分布$F(x)$。
证明,
对于很多分布来说,逆函数$F^{-1}(u)$并不容易计算,因此很多情况下无法直接使用逆变换采样。
注意到,
也就是说,如果获得累积分布为$F(x)$的随机变量$t$,那么$F(t)$为均匀分布。例如$x_i \sim N(0, 1)$,那么标准正态分布的累积分布函数(CDF)$\Phi(x_i)$服从均匀分布。
采样方法的逆
Box-Muller技巧如果逆着来,直观上很好理解,即
- 独立采样$x_1 \sim N(0, 1), x_2 \sim N(0, 1)$
- 计算$z = x_1^2 + x_2^2$,也就是一个$\chi(x)$分布
- 那么$u = 1 - \exp(- \frac{z}{2})$为均匀分布
简单来说就是,可通过正态分布生成器获得均匀分布生成器,$n_1,n_2$独立采样自标准正态分布,那么
服从均匀分布$U[0, 1]$。这种方法需要独立采样$x_1, x_2$。
函数光滑逼近
第一部分的讨论我们有结论,如果随机变量$x$服从累积分布函数$F(x)$,那么$F(x)$服从均匀分布。因为我们从$x = F^{-1}(u), u\sim U[0, 1]$中构造该随机变量,而
对于正态分布随机变量$x$来说,$\Phi(x)$服从均匀分布。但是$\Phi(x)$是积分形式,
无办法直接求解。一个思路是使用初等函数逼近$\Phi(x)$,在采样(二):从正态分布采样也有相关的讨论。目前最好的近似结果是来自论文Gaussian Error Linear Units (GELUs)中的结论,即
论文中还有这个结论,
两种近似的采样对比,
直观上看,第一种逼近的采样结果更好。
总结
本文提供了两种思路解决通过正态分布样本构造均匀分布的问题。
转载请包括本文地址:https://allenwind.github.io/blog/12188
更多文章请参考:https://allenwind.github.io/blog/archives/