潜在语义分析概念

Posted

技术标签:

【中文标题】潜在语义分析概念【英文标题】:Latent Semantic Analysis concepts 【发布时间】:2011-10-26 23:02:53 【问题描述】:

我读过有关使用奇异值分解 (SVD) 在文本语料库中进行潜在语义分析 (LSA) 的文章。我已经了解如何做到这一点,我也了解 SVD 的数学概念。

但我不明白为什么它适用于文本语料库(我相信 - 必须有语言解释)。有人能从语言学的角度解释一下吗?

谢谢

【问题讨论】:

这可能更适合 cstheory.stackexchange.com。 你看过en.wikipedia.org/wiki/Latent_semantic_analysis的介绍段吗? 嗨,我也有同样的疑问!是否必须减少尺寸?为什么我们不能只使用 v 矩阵来查找文档之间的相似度,而使用 u 矩阵来查找术语之间的相似度? 【参考方案1】:

假设我们有以下五个文档的集合

d1 : 罗密欧与朱丽叶。 d2 : 朱丽叶:哦,快乐的匕首! d3 : 罗密欧死于匕首。 d4 : “生不死”,这是新罕布什尔州的座右铭。 d5 : 你知道吗,新罕布什尔州在新英格兰。

还有一个搜索查询:dies, dagger

很明显,d3 应该排在列表的首位,因为它包含两个骰子,匕首。然后,d2 和 d4 应该跟在后面,每个都包含查询的一个词。但是,d1 和 d5 呢?他们应该是 作为可能有趣的结果返回到此查询?作为人类,我们知道 d1 非常相关 到查询。另一方面,d5 与查询没有太大关系。因此,我们想要 d1 但是 不是 d5,或者换句话说,我们希望 d1 的排名高于 d5。

问题是:机器能推断出这个吗?答案是肯定的,LSI 正是这样做的。在这个 例如,LSI 将能够看到术语 dagger 与 d1 相关,因为它与 d1 的术语罗密欧和朱丽叶,分别在 d2 和 d3 中。此外,术语 dies 与 d1 和 d5 有关 因为它与 d1 的术语 Romeo 和 d5 的术语 New-Hampshire 在 d3 和 d4 一起出现, 分别。 LSI 还将适当地权衡发现的连接; d1 more 与查询有关

比 d5 因为 d1 通过罗密欧与朱丽叶“双重”连接到匕首,并且还连接到 通过 Romeo 死掉,而 d5 与通过 New-Hampshire 的查询只有一个连接。

参考:潜在语义分析 (Alex Thomo)

【讨论】:

【参考方案2】:

不涉及语言解释,不涉及语法,不处理等价类、同义词、同音异义词、词干等。也不涉及任何语义,它只是单词的组合。 将“文档”视为购物车:它包含单词(购买)的组合。词往往与“相关”词一起出现。

例如:单词“drug”可以与love, doctor, Medicine, sports, crime中的任何一个一起出现;每个都会指向不同的方向。但结合文档中的许多其他词,您的查询可能会从相似字段中找到文档。

【讨论】:

你的回答比我的好很多。 drug 的例子是一个本垒打!【参考方案3】:

同时出现的词(即附近或语料库中的同一文档中)有助于上下文。潜在语义分析基本上是根据它们在上下文方面的相似程度将相似的文档分组到一个语料库中。

我认为this页面上的示例和word文档图将有助于理解。

【讨论】:

以上是关于潜在语义分析概念的主要内容,如果未能解决你的问题,请参考以下文章

潜在语义分析(LSA)

潜在语义分析(Latent Semantic Analysis)

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

python 潜在语义分析(LSA)[简单例子]

潜在语义分析 LSA

潜在语义分析plsa中文档概率p(d)到底是啥?