labeled LDA,Hierarchically Supervised LDA

  原创内容,转载注明出处

 

 最近看了labeled LDA 和Hierarchically LDA,看之前一头雾水,想要查些介绍,可是发现这两个模型在其他博文里都只是简单的介绍,没有找到较为详细的介绍。所以想写这篇博文,希望对初学者有所帮助。如果有理解不到位的也希望得到大家的指正。

  这篇文章是建立在读者已经对LDA有了很好的理解之上的,如果还没有看过基础版LDA请自行查阅第一篇博文和参考文献。

  那么如果理解了基础版LDA,这两个改进版就不是什么大问题了。

  labeled LDA发表于2009年ACL,对于文档-主题分布增加了一个监督项。比如,已经知道一个文档的标签是(0,1,1,0),那么它的主题分布和标签一一对应,所以如果标签是四维,那么主题也有四个,和四个标签对应。那么在Gibbs Sampling的时候就单词只在这篇文章对应的主题中采样,从而得到最后的主题分布。例如以(0,1,1,0)为标签的文档对应的主题分布可能是(0,0.1234,0.7829,0)。

  如上图,为了保证在标签主题中采样,α和之前的LDA不同:,其中L为一个矩阵:例如上例,四个标签中第二个第三个属于当前文档,那么L为那么显然此时

 

  有了这些其余的就和LDA完全相同了,可以开始采样了~

  

  得到当前的文档主题分布和主题词汇分布后,对于新的文档进行训练是没有标签限制的,和LDA完全相同。

  Hierarchically LDA发表于2011年的NIPS。也是通过标签集合来限定主题的采样。看了几天,终于看懂了这个模型是什么鬼。。。主要是针对有层次结构的数据来说的,子节点是父节点的一个分类。模型是两个过程,上面是传统LDA,得到文档d的主题分布z,然后根据主题分布和已知的一些标签y还有参数η来进行宽度优先搜索,确定辅助变量a,并据此判断一个label是否属于这个文档。(标签的膨胀)

   结构如图所示,β是全局的主题分布,θ是每篇文章的主题分布,φ是主题的词汇分布。η服从正态分布。y代表标签是否属于当前类别,+1是属于,-1是不属于。在树形层次结构中,只有父节点有一个标签时,子节点才能有这个标签,如果子节点有这个标签,那么父节点一定有这个标签。α‘是狄利克雷分布参数,β是狄利克雷分布,θ服从Dir(αβ),φ和LDA中的狄利克雷分布相同。a是一个辅助参数。根据已知的label和(是文章中某一主题的单词占所有主题的比例)来生成特定的条件标签的过程如下:

 

采样的公式为:

其他参数更新为:

 

 

  

 

 

 

  

 

posted @ 2016-12-10 16:42  LC_Ruc  阅读(3269)  评论(0编辑  收藏  举报