NLP:主题模型LDA介绍
(一)LDA作用
传统的判断两个文档相似性的方式主要是考察两篇文档中共同出现词汇的数量。然而这种手段忽略了文本间潜在的意义联系,在某些情况下可能会导致两篇看似无交集的文档仍可能具有高度的相关性。
举个例子,有两个句子分别如下:
“乔布斯离我们而去了。”
“苹果价格会不会降?”
发现这两个句子没有任何共同出现的单词。然而它们之间却存在一定的相似性。按照传统的判断方式来看的话,则会得出完全不相关的结论。在评估文档的相关性时,则需要特别关注其语义层面的信息。而语义挖掘的重要工具是主题模型,LDA就是其中一种较为先进的技术方法。
在主题模型中,主题表征了一个概念或方面,并即为一系列相关的关键词项的条件概率分布。简单来说,在主题模型中,“主题”就是一个能够容纳具有较高出现概率关键词项的桶子。
如何生成主题?探讨文章主题的路径是什么?这属于主题模型需要解决的核心问题之一。
首先,在分析文档和主题之间的关系时可以通过生成模型来进行观察。所谓的生成模型是指在分析文档和主题之间相互关联关系的一种方法。具体而言,在这种情况下我们假设一篇文章中的每一个词都是通过以下方式产生的:首先选择一个主题(以一定概率),然后从选定的主题中再选择一个词(同样以一定概率)。基于这一假设我们可以构建出一个能够模拟文章创作过程的数学模型进而用于预测文章中各个词的出现概率。

这个概率公式可以用矩阵表示:

其中”文档-词语”矩阵表示每个文档中每个单词的词频,即出现的概率;”主题-词语”矩阵表示每个主题中每个单词的出现概率;”文档-主题”矩阵表示每个文档中每个主题出现的概率。
假设有一组文档,在对这些文档进行分词处理之后统计每份文档中各个词汇出现的频率就可以得到左侧构建的"文档-词语"矩阵。主题模型的过程是基于左侧构建的"文档-词语"矩阵来进行学习训练,并最终能够生成右侧对应的两个矩阵
