参考文献:《polylingual topic model》
这个模型用于多个语言,所以叫poly lingual。
背景是,不同语言之间,存在用多种语言表达同一个concept的现象。
可以找到对应于同一个意思的wiki或者一些法律条文文本。但是,这些文本又不像statistic translate machine那样,是word/phrase/sentence级别对齐的,只能说concept大体上对应。可以通过doc级别的对应,来挖掘隐藏的topic关系
假设有L种语言,每组L个同义文本组成一个tuple=<d1, d2, ...,dL >。PLTM中,假设每个tuple对应同一个topic的分布/theta。同样,每个topic,对应于一族L个词分布/phi={/phi1, /phi2,...,/phiL},每个/phi_i是一个分布。其余假设同LDA。
其实可以看做是把多语言的tuple连起来做成一个大文本,根据语言切换对应语言的/phi,这样一种变形的LDA。当语言只有1种的时候,退化到LDA。
求解的方法还是用的gibbs sampling,
对待预测文本,还是放到池子里sampling几下,公式如
对应的phi公式跟LDA里也是一样的,只是要局限在对应的语言里了
我觉得,这个模型的优点是:
计算和实现上,仅仅是在LDA上做了一点小修改,因此各种算法,都可以遵循LDA的做法。
效果上,优点是,i.利用别的语言文本进行topic的生成,数据集更大,在一定程度上可以包含多个语言的特点; 2. 通过单个文本对的关联(直译或者语义相近),实现了topic的对齐,实验表明关联文本在25~50%就已经有不错的效果了。
gibbs sampling本身不要求每个tuple中必须包含所有L个文本。同一个language下不同语言风格也可以当做多language来处理。非常灵活
几个补充:
1.文章里用 Jensen-Shannon divergence来评价几个分布的差异程度,这是每个分布和平局值的KL散度的均值
2.在某些topic下,不同语言表现出不同的特性,并且同源的几个语言表现出相似的性质(如romance系,Istanbul系,Nordic 系等)。在某些topic(如影视类)下,各种语言表现都比较类似。
PLTM的推导还可参见《Mining Multilingual Topics from Wikipedia》http://research.microsoft.com/pubs/81536/p1155-ni.pdf