第9章 高级主题建模
在上一章中,我们见识了主题建模的强大威力,它可以帮助开发人员直观地理解和探索数据。本章将进一步探讨这些主题模型的应用场景,以及如何创建更复杂的主题模型,以便更好地挖掘语料库中的主题。因为主题建模是理解语料库文档的一种方式,这意味着我们可以用前所未有的方式分析文档。
本章介绍的主题如下:
- 高级训练技巧;
- 探索文档;
- 主题一致性和主题模型的评价;
- 主题模型的可视化。
9.1 高级训练技巧
第8章介绍了主题模型的定义,以及使用两个主题模型算法包Gensim和scikit-learn的简单示例。但是仅创建一个主题模型远远不够,一个训练不充分的主题模型没有任何应用价值。
我们曾经讨论过预处理的必要性。但有时即使输入是正确的,输出仍然有可能毫无意义。在本节中,我们将简要讨论怎样训练主题模型可以避免出现这种情况。
与其他形式的文本分析算法相比,本节提到的预处理技巧则更适用于主题模型。例如,在主题建模中选择词干化而不是词形还原是一种特别有成效的做法,因为词干化的单词往往比词形还原后的结果更容易理解。类似地,在应用主题建模算法之前,将二元gram或三元gram作为语料库的一部分,也会使得结果更容易理解。
因为主题模型的目的是探索语料库,所以我们努力获得更容易理解的结果是有意义的。这与文本聚类稍有不同,因为在文本聚类中,我们更关注的是高准确性,而不是可解释性。所以文本的预处理就显得非常重要,开发人员可以在预处理过程中自由地添加任何有助于得到正确结果的步骤。
第一次尝试对数据进行主题建模时,很难训练出一个完美的模型。成功的主题建模需要多次迭代:清理数据、读取结果、相应地调整预处理并重试。例如,在完成第一个主题模型之后,我们可能希望将新的停用词添加到停用词列表中。通常情况下,不同的文本分析领域所对应的停用词表也是不同的。 ...
Get 自然语言处理与计算语言学 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.