您的位置:首页 > 其它

正态分布随机数的产生

2017-05-12 17:11 274 查看
最近平凡听到关于正态分布采样相关的内容,突然想到一个问题:

到底如何利用正态分布采样?

正好近期模式识别课程上也有一个相关的内容,整理了一下查到的资料。

一。柱状图估计分布

假设样本x N(u,θ), 其pdf图如下:

设想一下如果我们并不是很清楚正态分布的mean和var,只有一些训练的数据样本,该如何估计样本分布的参数?



【图片来自南京大学吴建鑫老师的讲义】

上图中的bin就是把数据划分区间,然后统计每个区间点的个数,然后根据走势画出的分布图,当然上图主要是解释区间太密集导致的过拟合现象,不是这里讨论的重点。

但是从这个图可以思考一些问题,比如所谓数据服从正态分布是什么意思?图表示的是概率,其实也就是说点落在均值附近的概率比较大。

二。正态分布随机数的产生

有一篇博客写的蛮清楚的:http://cos.name/2015/06/generating-normal-distr-variates/

解释了Python中rand函数的实现,产生正态分布的过程就是:

# When x and y are two variables from [0, 1), uniformly
# distributed, then
#
#    cos(2*pi*x)*sqrt(-2*log(1-y))
#    sin(2*pi*x)*sqrt(-2*log(1-y))
#
# are two *independent* variables with normal distribution


就是Box-Muller算法。相关的还有Rejection Sampling,其实这个用到的比较多。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  机器学习