码迷,mamicode.com
首页 > 其他好文 > 详细

吉布斯采样

时间:2019-01-04 12:27:58      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:随机数   binary   根据   图片   center   tree   优化   for   ace   

以LDA模型为例:

  1、对一个token计算K个主题的所有概率,并随机得到一个主题。

  技术分享图片

\[p(z_{dn}=k|t_{dn}=w,Z_{-dn},C_{-dn})\propto \frac{C_{wk}^{-dn}+\beta}{C_k^{-dn}+V\beta}(C_{dk}^{-dn}+\alpha)\]

  2、多项式采样:给定K维概率向量p(非归一化),其中每一个元素$p_k=\frac{C_{wk}^{-dn}+\beta}{C_k^{-dn}+V\beta}(C_{dk}^{-dn}+\alpha)$

    1)LSearch(Linear search on p):计算归一化常数$c_K=\sum_kp_k$,生成随机数$u=uniform(c_K)$,在区间$[0,c_K)$。线性搜索$z=min\lbrace k:(\sum_{s\le k}p_s)>u\rbrace$

    2)BSearch(Binary search on c = cumsum(p)):生成随机数$u=uniform(c_K)$。二元搜索$z=min\lbrace k:c_k>u\rbrace$

    3)使用Alias table

    4)使用F+ tree

  3、吉布斯采样器:根据降低采样复杂度所使用的优化方法的不同分为两类

    1)Sparsity-Aware (SA) Samplers:利用$C_w$或$C_d$的稀疏性来降低采样复杂度(将条件概率分解成两部分$C_{dk}\frac{C_{wk}+\beta}{C_k+V\beta}$和$\alpha\frac{C_{wk}+\beta}{C_k+V\beta}$,如果$C_{dk}$稀疏,则采样器跳过$C_{dk}$为0的,因此降低复杂度;或者分解成$C_{wk}\frac{C_{dk}+\alpha}{C_k+V\beta}$和$\beta\frac{C_{dk}+\alpha}{C_k+V\beta}$,如果$C_{wk}$稀疏,则采样器跳过$C_{wk}$为0的)(下面两种算法的区别在于采样所使用的数据结构不同)

      (1.1)AliasLDA:使用Alias table

      (1.2)F+LDA:使用F+ tree

    2)Metropolis-Hastings (MH) Samplers:使用MH算法来达到O(1)的采样复杂度(从分布$q^{doc}\propto C_{dk}+\alpha$和分布$q^{word}\propto \frac{C_{wk}+\beta}{C_k+V\beta}$中采样)(根据采样器对于内存数据结构的访问顺序的不同分为两类)

      (2.1)LightLDA

      (2.2)WarpLDA

技术分享图片

 

吉布斯采样

标签:随机数   binary   根据   图片   center   tree   优化   for   ace   

原文地址:https://www.cnblogs.com/yao1996/p/10218552.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!