Notes on Text Mining and Analytics - 3

Probabilistic Topic Models: Mixture of Unigram Language Models

单独的一个分布不能准确的表示文档中所有的的单词分布,所以采用混合的语言模型来计算。一个是文档主题的模型,一个是背景的主题模型。文档的主题模型主要是与文中的关键词有关,背景的主题模型主要是一些出现频率很高的词汇,类似the。

背景模型的好处是:防止过拟合;更好地将主题词过滤到其他组件中,因为停用词等所有非主题词都会进入背景组件。

两个模型相加得到一个似然函数,最终的优化目标是使得这个函数的值最大。 Mixture of Two Unigram Language Models

Probabilistic Topic Models: Mixture Model Estimation

假设background模型是已知的,混合模型

BD的合作与竞争,当某个词在B中的概率很低时,由于优化目标是使得似然函数取得最大值,那么这个词在D中的概率就会很高。

  • 混合模型的一般行为
    • 每个组件模型都试图将高概率值分配给数据中频繁出现的单词(这是为了协作最大化可能性 “collaboratively” maximize likelihood)
    • 不同的组件模型倾向于在不同的词语上“高估”高概率(以避免“竞争”或“浪费概率”)
    • 选择每个组件的概率“调节”组件模型之间的协作/竞争
  • 将一个组件固定为背景噪声的词分布(即背景语言模型background language model):
    • 在其他组件中帮助“摆脱背景词语”
    • 是对模型参数引入先验的参数(prior = 一个模型必须与背景LM完全相同)

最大期望算法 Probabilistic Topic Models: Expectation-Maximization(EM) Algorithm

由于我们在上面的混合模型中假设了文档中的数据特别简单,只有“the”和“text”,所以可以直观的看出混合模型的特征,真正的文档中数据比较复杂,所以我们需要一个方法来计算参数。EM算法就是常用的一个。

隐藏变量(hidden variable)是一个二元变量(binary variable),将其初始化为z。 EM的初始化是随机初始化,然后用E-step和M-step来迭代的改进likelihood function,直到这个函数不再改变。 随机初始化可以使得我们可以取得一个随机的值,对单词的z值进行预测。

The Expectation-Maximization (EM) Algorithm 1. E-step根据初始化中词分布的概率,计算每个词的概率分布,即p(z=0|w),此时这些概率之和不为1,因为∑p(θ|w)不为1 2. M-step利用之前推断的z值的概率分布,将属于同一个z值类别的分到一组,正交化概率得到

循环往复的进行以上的1,2步骤,会逐步改进预估参数,这个参数就是单词对应的条件概率分布。

从经验上说,这个似然函数是收敛的。从理论上,EM算法是可以被证明最终会收敛到局部最大值。 我们需要多次重复这个寻找局部最大值的过程,目的是找到全局最大值。类似于梯度下降算法,图中描述的是似然值不断“爬山”的过程,每次随机初始化一个值,都会取到对应的局部最大值。 EM As Hill-Climbing -> Converge to Local Maximum

总结

EM算法过程像是一个爬山的过程。每次只得到局部最大值,每次的结果取决于初始值。当一个文档中单词太多我们就无法直观的看出主题词分布了,此时EM算法是一个比较好的方法来不断使得似然值增大,当增加的不明显时,我们认为已经达到了全局最大值。 - EM算法 - E-step: 通过预测有意义的hidden变量来放大数据,求期望。 - M-step: 利用放大的数据来改进似然值(这里的改进是由似然函数取得局部最大值保证的),即最大化过程。

概率潜在语义分析 Probabilistic Latent Semantic Analysis(PLSA)

输入: C: a collection, k: the number of topics, V: a vocabulary set 输出:

\[\Theta _{1},...,\Theta _{k} 词的分布\]
\[\pi _{i1},...,\pi _{ik} 主题覆盖度\]

PLSA generating text with multiple topics 在k个主题情况下,我们生成单词w的概率是上图黄色标注出来的式子之和。请确保先理解这点,这是接下来顺利进行的关键,其中,λB 为背景比重,1−λB为主题的比重。 PLSA与上面的一元混合模型不同的是,主题增加至k个,所以我们需要考虑主题覆盖度和不同主题的情况。 Probabilistic Latent Semantic Analysis - 求最优解依然用EM算法,E-step和M-Step。

- #### E-step
![PLSA E-step](https://raw.githubusercontent.com/ky-zhang/MarkdownImages/master/ForBlogUse/2018/PLSA-E-step.png)
    - 计算得满足两个条件:
        1. 一个文档中主题覆盖率之和为1
        2. 一个主题中所有单词的占比之和为1
- #### M-step
![PLSA M-step](https://raw.githubusercontent.com/ky-zhang/MarkdownImages/master/ForBlogUse/2018/PLSA-M-step.png)
  • PLSA其实是一个有k个一元主题的混合模型,并且增加了提前确定的背景模型.

隐含狄利克雷分布 Latent Dirichlet Allocation (LDA)

LDA其实是PLSA的其中一种扩展形式。 下面具体介绍PLSA的两种扩展: 1. 用户控制的PLSA 有先验知识的PLSA,自定义一个分布,这个分布中包含用户期望要分析的词,由此对单词进行一定筛选作用 PLSA with Prior Knowledge 正如上图所看到的一样,我们增加了一个分布,并根据先验知识判断,用户更加偏爱“battery”和“life”两个单词,这个分布会在M-step更新概率的时候使用,并为“battery”和“life”两个单词增加概率使这两个单词更为重要。 其中,当u为0时相当于没有偏爱,当u趋近于无穷大时,相当于只有“battery”和“life”的新增分布。

  • PLSA仍然存在以下不足,所以提出了LDA
  1. LDA LDA为文档覆盖率πdj和主题都设置了先验概率 LDA LDA的计算过程答题与PLSA类似,但为文档覆盖率和主题都设置了先验概率 Likelihood Functions for PLSA vs. LDA

Reference

[1] C. Zhai and S. Massung, Text Data Management and Analysis: A Practical Introduction to Information Retrieval and Text Mining. ACM and Morgan & Claypool Publishers, 2016. Chapter 17. <br>[2] Blei, D. 2012. Probabilistic Topic Models. Communications of the ACM 55 (4): 77–84. doi: 10.1145/2133806.2133826. <br>[3] Qiaozhu Mei, Xuehua Shen, and ChengXiang Zhai. Automatic Labeling of Multinomial Topic Models. Proceedings of ACM KDD 2007, pp. 490-499, DOI=10.1145/1281192.1281246. <br>[4] Yue Lu, Qiaozhu Mei, and Chengxiang Zhai. 2011. Investigating task performance of probabilistic topic models: an empirical study of PLSA and LDA. Information Retrieval, 14, 2 (April 2011), 178-203. doi: 10.1007/s10791-010-9141-9.