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。也是通过标签集合来限定主题的采样。

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

采样的公式为:

其他参数更新为:

时间: 2024-11-07 11:27:00

labeled LDA,Hierarchically Supervised LDA的相关文章

使用OpenCV编写的LDA程序----C++ LDA代码

改写自OpenCV中的lda.cpp程序,通过改写的程序可以返回自己所需的信息(LDA算法过程中产生的我们感兴趣的中间值),实现算法的独立编译,也可以通过阅读程序,加深对LDA算法的理解. // main.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <cxcore.hpp> #include <vector> #include <iostream> #include "lda.h

Gaussian LDA(2): Gaussian LDA简介

Latent Dirichlet Allocation (LDA)是一个主题模型,能够对文本进行建模,得到文档的主题分布.但是LDA得到的每个主题是一个在词项上的多项分布,这个分布非常稀疏.为了更好地刻画语义连贯性,有研究者提出了Gaussian LDA,本文简单介绍该模型. 转载请注明出处:http://blog.csdn.net/u011414416/article/details/51188483 本文主要介绍ACL2015的以下工作: Rajarshi Das, Manzil Zahee

ISLR 4.6 Lab: Logistic Regression, LDA, QDA, and KNN

4.6.1 The Stock Market Data > library (ISLR) > names(Smarket ) [1] "Year" "Lag1" "Lag2" "Lag3" "Lag4" [6] "Lag5" "Volume " "Today" " Direction " > dim(Smark

LDA进阶

转自:http://blog.csdn.net/hxxiaopei/article/details/8034308 http://blog.csdn.net/huagong_adu/article/details/7937616 代码初探 http://blog.csdn.net/yangliuy/article/details/8457329 yangliuy实现的代码 第一篇:PLSA及EM算法 第二篇:LDA及Gibbs Samping 第三篇:LDA变形模型-Twitter LDA,Ti

重磅︱R+NLP:text2vec包简介(GloVe词向量、LDA主题模型、各类距离计算等)

词向量的表示主流的有两种方式,一种当然是耳熟能详的google的word2vec,还有一类就是GloVe.那么前面一类有三个开源的包,后面这一类我倒是看到得不多,恰好是在我关注了许久的一个包里面有,它就是text2vec啦.该包提供了一个强大API接口,能够很好地处理文本信息. 本包是由C++写的,流处理器可以让内存得到更好的利用,一些地方是用RcppParallel包进行并行化加乘,同时兼容各个系统的服务器.如果没有并行的地方,大家也可以自己用foreach包来自己加速. ----------

主题模型TopicModel:隐含狄利克雷分布LDA

http://blog.csdn.net/pipisorry/article/details/42649657 主题模型LDA简介 隐含狄利克雷分布简称LDA(Latent Dirichlet allocation),是一种主题模型,它可以将文档集中每篇文档的主题按照概率分布的形式给出. 同时它是一种无监督学习算法,在训练时不需要手工标注的训练集,需要的仅仅是文档集以及指定主题的数量k即可.此外LDA的另一个优点则是,对于每一个主题均可找出一些词语来描述它. LDA首先由Blei, David

LDA(文档主题模型)

LSA latent semantic analysis 映射词-文档到一个低维隐语义空间 比较词和文档在低纬空间的相似性 topic 是 Vocab 上的概率分布(符合多项式分布) 文档到主题的一个分布,主题到词库的分布,通过训练得到这两个分布模型 plsa 模型 LDA模型 大规模LDA系统 spark LDA Google PLDA 微软LightLDA 腾讯LDA,PEACOCK

回归-LDA与QDA

作者:桂. 时间:2017-05-23  06:37:31 链接:http://www.cnblogs.com/xingshansi/p/6892317.html 前言 仍然是python库函数scikit-learn的学习笔记,内容Regression-1.2Linear and Quadratic Discriminant Analysis部分,主要包括:  1)线性分类判别(Linear discriminant analysis, LDA) 2)二次分类判别(Quadratic disc

Spark机器学习(8):LDA主题模型算法

1. LDA基础知识 LDA(Latent Dirichlet Allocation)是一种主题模型.LDA一个三层贝叶斯概率模型,包含词.主题和文档三层结构. LDA是一个生成模型,可以用来生成一篇文档,生成时,首先根据一定的概率选择一个主题,然后在根据概率选择主题里面的一个单词,这样反复进行,就可以生成一篇文档:反过来,LDA又是一种非监督机器学习技术,可以识别出大规模文档集或语料库中的主题. LDA原始论文给出了一个很简单的例子.Arts.Budgets.Children.Educatio