第8章 主题模型
前面的章节介绍了计算语言学方面的相关算法和spaCy,以及如何使用这些算法来标注数据,分析句子结构。虽然这些算法有助于理解文本中的细节,但读者似乎仍然没有对数据产生整体的了解。例如,在语料库中,哪些词出现的频率更高?可以将数据分组或发现这些文本潜在的主题吗?本章以及后面的章节将尝试回答这些问题。本章介绍的主题如下:
- 什么是主题模型;
- 使用Gensim构建主题模型;
- 使用scikit-learn构建主题模型。
8.1 什么是主题模型
本节将首次探索概率模型,以及对文本进行的机器学习。前面的章节也介绍过这样的模型(参见第5~7章),特别是训练NER和POS标注器的方式,但在前面的章节中,我们的目标不是文本数据的统计建模。
什么是主题模型?顾名思义,它是一个包含文本主题信息的概率模型。也许读者会问,主题到底是什么?我们可以把一个主题理解为文本的主题思想。例如,如果我们正在使用新闻报纸方面的语料库,可能包含的主题有天气、政治、体育等。
为什么主题模型在文本处理领域扮演着很重要的角色?以往,信息检索和搜索技术涉及使用单词来识别搜索词和文档的相似性或相关性。现在,我们可以用主题而不是单词来搜索和排序我们的文档。但是主题到底是什么?它是词的分布,这里特指词的概率分布。我们可以进一步引申为文档在各类主题上的概率分布。因为我们知道文档中的所有单词及其词频,所以可以使用这部分信息来生成主题模型。一旦我们创建了主题模型,就可以将所有文档表示为各类主题的分布。
这意味着现在可以基于新闻报纸语料库中的主题进行文本分类,而不是基于TF-IDF或词袋。还可以探索每个主题中的文档,并进一步探索这些文档以更好地理解主题。想要探索数据集时,可以通过观察主题来了解数据集中包含什么类型的文档,因此为文本语料库创建主题模型也大有裨益。 ...
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.