陌路茶色/

Topic representation: finding more representative words in topic models

这是一篇对主题模型中主题词重排序的论文,之前记录过一篇Re-Ranking Words to Improve Interpretability of Automatically Generated Topics

ABSTRACT

在标准的主题模型中,top单词列表示由top-M个单词组成,而排序是按照给定主题的单词概率排序的。但是,我们发现top单词列表中的单词并不总是有代表性的(并不能代表该主题),本论文的目的是找到一个更具代表性的top单词列表。我们探索了三种reranking的方法:
(1) standard deviation weight
(2) standard deviation weight with topic size
(3) Chi Square $χ^2$ statistic selection (卡方分布)
经验结果表明在真实场景中我们的方法可以提取出对应主题更具代表性的词,并且符合人类的评判标准。

Introduction

基于统计推断算法,单词以高的marginal probabilities应该是一个高频词(marginal probabilities,边缘概率,也就是说单词在语料中的概率??? 即语料中的高频词往往在topic下是top词???),不管这些词是否在一个特定主题中,更糟的是,在大多数主题中的top词是那些高频率且无意义的词,比如停用词。基于语言的幂率特性,在实践中是不太可能清除掉全部的类似停用词一样的词的。去解决这个问题,考虑如下两个案例:
(1)如果在给定的主题中的top词在其他主题下也是top词,那么这个词就是不具代表性的词
(2)如果一个词出现频率不高,但是大部分都被分配到某一个主题下,那么这个词可能对那个主题来说是具有代表性的

Methodology

这里先提一下LDA的训练过程,方便理解论文:

屏幕快照 2019-11-07 下午4.01.20.png
上图所示,首先给定主题个数参数,对于语料每篇文档中的每个词,随机赋一个topic,然后通过Gibbs采样来更新这个词对应的topic,收敛后,统计共现频率,比如统计每个主题下词的频率作为最终lda中主题下的marginal probabilities。
可以看到LDA的实质是为每篇文档中的每个词分配一个主题【主题模型旨在发现主题下相关词的语义连贯簇】,更深入的理解可以看LDA数学八卦。

论文中提出了三种重排方法,分别如下:

SDW reranking

公式如下所示,给lda输出的topic-word分布$\phi$加权重:
屏幕快照 2019-11-07 下午4.19.09.png
屏幕快照 2019-11-07 下午4.22.25.png
其中$\phi_{kv}$表示的是主题$k$下词$v$的概率,也就是lda对topic-word的输出结果,公式的直观理解是当主题$k$下词$v$的概率和在其它主题下词$v$的概率有区别时,区别越大,给原始lda输出的主题词概率的权重越大。(论文中提到停用词不管在什么主题下对应的概率都非常大,使用该方法可以将stopword-like词过滤掉)

SDWTS reranking

公式如下所示:
屏幕快照 2019-11-07 下午4.29.00.png
屏幕快照 2019-11-07 下午4.29.20.png
其中$N_i$表示使用Gibbs采样为主题$i$生成的词的个数,前面提到了LDA的训练过程,会为每篇文档中的每个词分配一个主题,接着lda输出的topic-word分布$\phi$以如下计算方式:
屏幕快照 2019-11-07 下午4.37.29.png
其中$N_{kv}$表示主题$k$下词$v$的个数,$V$表示整个语料下词的个数。
回到上面的权重公式,和SDW reranking的区别在于给每个概率加上了该主题下词个数这个权重,也就是说该主题下词越多,那么对应的概率值应该越有价值(类似于归一化),权重公式(5)后面的约等于可以由公式(2)推出。

CHI reranking(卡方分布)

先补充一下卡方分布的知识:

这里并不是一个理论上的解读,只是我结合实例的理解,以论文中的方法为例
卡方分布衡量的是两个变量之间的相关关系,比如(变量)主题$k$和(变量)词$v$之间的相关性:
屏幕快照 2019-11-07 下午5.32.48.png
$freq_1$表示主题$k$下词$v$出现的个数,$freq_2$表示非主题$k$下词$v$出现的个数,$freq_3$表示主题$k$下非词$v$出现的个数,$freq_4$表示非主题$k$下非词$v$出现的个数,这些都是实际值。
1.建立假设:主题$k$与词$v$独立
2.统计对应频数的理论值(期望值):
因为独立,所以有$p(k,v)=p(k)*p(v)$,带入计算得到上表的理论结果(因为都是频数,因此要乘以全部的和N):
屏幕快照 2019-11-07 下午6.02.36.png
变换一下:
屏幕快照 2019-11-07 下午6.19.57.png
上图中在两变量$k$,$v$独立的情况是等价的,左边是实际值,右边是理论值,而卡方分布的公式为
屏幕快照 2019-11-07 下午6.05.56.png
$f_o$为实际值,$f_e$为理论值,可以看成是理论值和实际值之间的差归一化的结果(也就是上面矩阵中的4个值对应相减然后取均方再求和),如果两变量独立,按照上面的解释卡方值应该非常小,将卡方值带入到卡方分布的曲线中(查找表),结果越接近于0,说明两变量越独立,相反如果越不接近于0,说明两变量越不独立,即值越大,主题$k$和词$v$越相关,如此就会得到每个词和主题的相关性得分。

如上所示,再来看公式(7)就不难理解了吧:
屏幕快照 2019-11-07 下午6.42.44.png
其中$E_{kv}=\frac{N_kN_v}{N}$,即:
屏幕快照 2019-11-07 下午6.50.17.png
我猜公式(8)应该是由上面的式子推导出来的:
屏幕快照 2019-11-07 下午6.22.25.png

Evaluation

论文做了两个实验,一个是将lda的输出结果和上述三种reranking的结果比较,另外一个是为了突出reranking可以将stopword-like的词去掉,特意没有对文本去除停用词,然后使用lda的输出结果和使用reranking的结果进行对比,发现lda输出的top词确实都是停用词,而reranking却能够将这些停用词去掉。

评估三种reranking的好坏的测试集构造:对每个主题用排序前6个词来代表,然后随机的从6个词中去掉一个,再随机从其他词中选取一个词(the intruder word)补充进行。评价标准是人工挑出intruder词的正确率。

参考

[1]LDA数学八卦
[2]白话卡方检验

留下一条评论

暂无评论