Rejection sampling 笔记
来源:互联网 发布:java中常用的数据结构 编辑:程序博客网 时间:2024/06/05 16:29
拒绝抽样,直观地理解,为了得到一个分布的样本,我们通过某种机制得到了很多的初步样本,然后其中一部分初步样本会被作为有效的样本(即要抽取的分布的样本),一部分初步样本会被认为是无效样本舍弃掉。这个算法的基本思想是:我们需要对一个分布f(x)进行采样,但是却很难直接进行采样,所以我们想通过另外一个容易采样的分布g(x)的样本,用某种机制去除掉一些样本,从而使得剩下的样本就是来自与所求分布f(x)的样本。
它有几个条件:1)对于任何一个x,有f(x)<=M*g(x); 2) g(x)容易采样;3) g(x)最好在形状上比较接近f(x)。具体的采样过程如下:
1. 对于g(x)进行采样得到一个样本xi, xi ~ g(x);
2. 对于均匀分布采样 ui ~ U(a,b);
3. 如果ui<= f(x)/[M*g(x)], 那么认为xi是有效的样本;否则舍弃该样本; (# 这个步骤充分体现了这个方法的名字:接受-拒绝)
4. 反复重复步骤1~3,直到所需样本达到要求为止。
以上摘自http://www.cnblogs.com/longdouhzt/archive/2012/09/14/2684770.html
g(x)称为 proposal distribution.
g(x)不一定什么时候都比f(x)大, 因为g(x)是一个分布,积分之和等于1。f(x)也是。
构建g(x)的时候可以使用f(x)乘以一个常数,即上面的M,这样f(x)会比g(x)小。
在这条线(红的加绿的)上做均匀分布的采样,红的就拒绝,绿的就接受。
如果g(x)选择不好的时候 接受率很差
对rejection sampling的改进就是 Adaptive rejection sampling
ARS 只有 f(x) 是 concave 的时候才能用
ARS随机选择几个点 然后在logf(x) 上做以这几个点做切线。log space上如果是切线的话 在原space上就是 exponetial 函数。
这些exponential函数可以把原来的 f(x) 包裹起来。
采样点越多 包的约紧。
重要性采样 Importance sampling
求E(x) -> p(z)/q(z)(这个就是Importance weights) 是这个分布相对于q(z)来说的重要度。
重要性采样时 会一直接受 但是有些地方的重要性会非常低。
最后用重要性来选择sampling的点。
0 0
- Rejection sampling 笔记
- 拒绝采样(rejection sampling)
- 接受拒绝算法-rejection sampling
- A simple explanation of rejection sampling in R
- 机器学习小组知识点30:接受-拒绝采样(Acceptance-Rejection Sampling)
- Sampling
- Early Z Rejection
- Early Z Rejection
- Early Z Rejection
- 流体力学学习笔记3--Adaptively sampling particle fluids
- GIBBS SAMPLING FOR THE UNINITIATED 的学习笔记
- Yourkit 学习笔记-Start CPU profiling. Sampling, tracing, call counting.
- Yourkit 学习笔记-Start CPU profiling. Sampling, tracing, call counting.
- Word2Vec学习笔记(四)——Negative Sampling 模型
- 关于sampling softmax 中重要性采样的论文阅读笔记
- Fast convolutional neural network training using selective data sampling 笔记
- A Global Sampling Method for Alpha Matting笔记
- (node:4560) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error:
- mybatis sql in 查询
- 漫画别只是看,用“应用之星”自制App才过瘾
- CKeditor 配置信息
- iOS学习之——自定义动画切换的相关的主要API
- iOS 拨打电话三种方式
- Rejection sampling 笔记
- java服务器端配置支持跨域请求
- Material Design
- java之装饰模式
- 未在本地计算机上注册“microsoft.ACE.oledb.12.0”提供程序解决办法 (转的下次就知道了)
- GridView使用AsyncTask模拟异步加载大量图片
- xUtils3
- jvm内存模型和内存分配
- ssh应用