什么是潜在语义分析?

作者

Jacob Murel Ph.D.

Senior Technical Content Creator

Joshua Noble

Data Scientist

什么是潜在语义分析?

机器学习中,潜在语义分析 (LSA)是一种主题建模技术,它分析单词共现以发现文档中的潜在主题。LSA 使用降维技术从非结构化文本中创建结构化数据,以辅助文本分类和检索。

LSA 是两种主要的主题建模技术之一,另一种是隐含狄利克雷分布(latent Dirichlet allocation,LDA)。主题建模是一种自然语言处理 (NLP) 技术,它在大型文本数据集上应用无监督学习,以生成从这些文档中得出的词项摘要集。这些词项旨在代表整个文集的主要专题集。因此,主题模型旨在揭示一组文档的潜在主题或主题特征。1

用户可以使用 Python 中的 scikit-learn(通常简称为 sklearn)、自然语言工具包 (NLTK) 和 gensim 来生成 LSA 主题模型。R 语言中的 topic modelslsa 软件包也包含用于生成 LSA 主题模型的函数。

信息检索

潜在语义分析与潜在语义索引 (LSI) 相关,LSI 是一种信息检索技术。在信息检索系统中,LSI 使用与 LSA 相同的数学方法,根据词语的共现关系将用户查询映射到相应文档。用户查询 waltz(华尔兹)和 foxtrot(狐步舞)时,其真正目标可能是查找那些包含高度关联词(而非查询词本身)的文档。例如,tango(探戈)和 bolero(斗牛舞)可能经常与查询词一起出现,应当指示这些文档属于相同主题。LSI 根据由常见共现词组成的潜在语义词组对文档进行索引。通过这种方式,它可以改善搜索引擎结果。LSA 采用与 LSI 相同的数学方法,以捕捉大规模文档集合中潜在的语义结构。2

潜在语义分析的工作原理

文件术语矩阵

LSA 从文档-词项矩阵,有时也使用词项-文档矩阵开始。该矩阵显示了每个词在所有文档中的出现次数。在 Python 中(仅举一例),用户可以使用 pandas 数据框来构建这些矩阵。以下是使用三个文本字符串作为独立文档的文档-词项矩阵示例:

d1: My love is like red, red roses

d2: Roses are red, violets are blue

d3: Moses supposes his toes-es are roses

包含三个文档的示例文档-词项矩阵

该矩阵显示了标记化和停用词删除后所有三个文档中每个单词的单词频率。每列对应一个文档,而每行对应于整个文本语料库中找到的特定单词。矩阵中的数值表示特定术语在特定文档中出现的次数。如果词语 w 在文档 d 中出现 n 次,则 [w,d] = n。例如,文档 1 使用了两次 'red',因此 [red, d1] = 2。

从文档-词项矩阵出发,LSA 会生成文档-文档矩阵和词项-词项矩阵。如果文档-词项矩阵矩阵维度被定义为 d 个文档乘以 w 个单词,文档-文档矩阵则是 d 乘以 d,而词项-词项矩阵则是 w 乘以 w。文档-文档矩阵中的每个值均表示每个文档共有的单词数。词项-词项矩阵中的每个值则表示两个词项同时出现的文档数。3

数据稀疏会导致模型过拟合,当给定数据集中大多数数据值为空(即缺失)时,就会出现数据稀疏。这在构建文档-词项矩阵时经常发生,因为每个单独的词都是独立的行和矢量空间维度,而一个文档通常缺少其他文档中更频繁出现的大多数词。事实上,这里使用的示例文档-词项矩阵中,像 Mosesvioletsblue 等词只出现在一个文档中。当然,文本预处理技术,如停用词去除、词干提取词形还原,可以帮助减少稀疏性。然而,LSA 提供了一种更有针对性的方法。

减小维度

LSA 部署了一种称为奇异值分解 (SVD) 的降维技术来降低文档-词项矩阵的稀疏性。SVD 为许多其他降维方法(例如主组件分析)提供支持。SVD 有助于缓解多义词(具有多种含义的单个单词)和同义词(具有相似含义的不同单词)引起的问题。

利用从文档-文档矩阵和词项-词项矩阵计算出的矩阵,LSA 算法对初始词项-文档矩阵执行 SVD。这会生成新的特征矢量矩阵,将原始的词项-文档关系分解为线性独立的因子。其中最重要的是从文档-文档矩阵的特征值开方得到的奇异值对角矩阵。在这个对角矩阵(通常表示为 Σ)中,数值始终为正,并沿矩阵对角线按降序排列:

稀疏西格玛矩阵示例

如本示例 Σ 矩阵所示,许多较低的值都接近于零。开发者根据自身情况确定一个合适的截止值,并将 Σ 中低于该阈值的所有奇异值减为零。这实际上意味着删除完全被零占据的所有行和列。反过来,我们从其他原始矩阵中删除行和列,直到它们与 Σ 具有相同的行数和列数。这会减小模型的尺寸。4

文档比较

通过 SVD 降低模型维度后,LSA 算法使用余弦相似度在较低维度的语义空间中比较文档。此比较阶段的第一步涉及在矢量空间中映射文档。在这里,LSA 将文本视为 bag of words 模型。该算法将语料库中的每个文本表示为文档矢量,并以降维矩阵中的各个词作为该矢量的维度。绘图忽略词序和上下文,而是关注单词出现的频率以及它们在文档中同时出现的频率。5

在标准的 bag of words 中,语义无关的词(例如 thesome 以及其他类似词)可能具有最高的词频,因此在模型中权重最大。词频-逆文档频率 (TF-IDF) 是一种纠正该问题的技术。它通过考虑某个词在整个文本集合中出现的普遍性,并根据该词在整个语料库中的普遍性对每个文档中的词进行加权,从而实现纠正。6

一旦文档被映射到矢量空间,LSA 算法就使用余弦相似度来进行比较。余弦相似度表示矢量空间中两个矢量之间夹角的测量值,其取值范围为 -1 到 1。余弦分数越高,两个文档被认为越相似。余弦相似度由下式表示,其中 ab 表示两个文档矢量:7

余弦相似度得分方程

最近的研究

主题模型有许多应用场景,从文学批评8到生物信息学9,再到社交媒体中的仇恨言论检测10。与许多 NLP 任务一样,多年来的主题建模研究有很大一部分涉及英语和其他拉丁文字。最近,研究人员开始探索用于阿拉伯语和其他非拉丁语言的主题建模方法。11研究还转向大语言模型 (LLM) 如何推进和改进主题模型。例如,一项研究认为,大语言模型 (LLM) 提供了一种自动化方法来解决主题建模中长期存在的问题,即如何确定适当的主题数量以及如何评估生成的主题。12

Mixture of Experts | 12 月 12 日,第 85 集

解码 AI:每周新闻摘要

加入我们世界级的专家小组——工程师、研究人员、产品负责人等将为您甄别 AI 领域的真知灼见,带来最新的 AI 资讯与深度解析。

相关解决方案
IBM watsonx Orchestrate

使用 IBM® watsonx Orchestrate 轻松设计可扩展的 AI 助手和代理、自动执行重复任务并简化复杂流程。

探索 watsonx Orchestrate
自然语言处理工具和 API

通过强大灵活的库、服务和应用组合,加速实现人工智能的商业价值。

深入了解 NLP 解决方案
AI 咨询与服务

通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。

深入了解人工智能服务
采取后续步骤

使用 IBM® watsonx Orchestrate 轻松设计可扩展的 AI 助手和代理、自动执行重复任务并简化复杂流程。

  1. 探索 watsonx Orchestrate
  2. 深入了解 NLP 解决方案
脚注

1 Daniel Jurafsky and James Martin, Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition, 3rd edition, 2023, https://web.stanford.edu/~jurafsky/slp3/ (ibm.com 外部链接)。Jay Alammar and Maarten Grootendorst, Hands-On Large Language Models, O’Reilly, 2024.

2 Christopher Manning and Hinrich Schütze, Foundations of Statistical Natural Language Processing, MIT Press, 2000.

3 Scott Deerwester, Susan Dumais, George Furnas, Thomas Landauer, and Richard Harshman, “Indexing by Latent Semantic Analysis,” Journal of the American Society for Information Science, Vol. 41, No. 6, 1990, pp. 391-407, https://asistdl.onlinelibrary.wiley.com/doi/abs/10.1002/%28SICI%291097-4571%28199009%2941%3A6%3C391%3A%3AAID-ASI1%3E3.0.CO%3B2-9(ibm.com 外部链接)。Alex Thomo, “Latent Semantic Analysis,” https://www.engr.uvic.ca/~seng474/svd.pdf(ibm.com 外部链接)。

4 Hana Nelson, Essential Math for AI, O’Reilly, 2023. Scott Deerwester, Susan Dumais, George Furnas, Thomas Landauer, and Richard Harshman, “Indexing by Latent Semantic Analysis,” Journal of the American Society for Information Science, Vol. 41, No. 6, 1990, pp. 391-407, https://asistdl.onlinelibrary.wiley.com/doi/abs/10.1002/%28SICI%291097-4571%28199009%2941%3A6%3C391%3A%3AAID-ASI1%3E3.0.CO%3B2-9(ibm.com 外部链接)。

5 Matthew Jockers, Text Analysis with R for Students of Literature, Springer, 2014.

6 Alice Zheng and Amanda Casari, Feature Engineering for Machine Learning, O’Reilly, 2018.

7 Elsa Negre, Information and Recommender Systems, Vol. 4, Wiley-ISTE, 2015. Hana Nelson, Essential Math for AI, O’Reilly, 2023.

8 Derek Greene, James O'Sullivan, and Daragh O'Reilly, “Topic modelling literary interviews from The Paris Review,” Digital Scholarship in the Humanities, 2024,https://academic.oup.com/dsh/article/39/1/142/7515230?login=false(link resides outside ibm.com).

9 Yichen Zhang, Mohammadali (Sam) Khalilitousi, and Yongjin Park, “Unraveling dynamically encoded latent transcriptomic patterns in pancreatic cancer cells by topic modeling,” Cell Genomics, Vol. 3, No. 9, 2023, https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10504675/ (ibm.com 外部链接)。

10 Richard Shear, Nicholas Johnson Restrepo, Yonatan Lupu, and Neil F. Johnson, “Dynamic Topic Modeling Reveals Variations in Online Hate Narratives,” Intelligent Computing, 2022, https://link.springer.com/chapter/10.1007/978-3-031-10464-0_38 (ibm.com 外部链接)。

11 Abeer Abuzayed and Hend Al-Khalifa, “BERT for Arabic Topic Modeling: An Experimental Study on BERTopic Technique,” Procedia Computer Science, 2021, pp. 191-194, https://www.sciencedirect.com/science/article/pii/S1877050921012199 (ibm.com 外部链接)。Raghad Alshalan, Hend Al-Khalifa, Duaa Alsaeed, Heyam Al-Baity, and Shahad Alshalan, “Detection of Hate Speech in COVID-19--Related Tweets in the Arab Region: Deep Learning and Topic Modeling Approach,” Journal of Medical Internet Research, Vol. 22, No. 12, 2020, https://www.jmir.org/2020/12/e22609/ (ibm.com 外部链接)。

12 Dominik Stammbach, Vilém Zouhar, Alexander Hoyle, Mrinmaya Sachan, and Elliott Ash, “Revisiting Automated Topic Model Evaluation with Large Language Models,” Proceedings of the 2023 Conference on Empirical Methods in Natural Language Processing, 2023, https://aclanthology.org/2023.emnlp-main.581/ (ibm.com 外部链接)。