如何使用 WordNet 路径算法计算两个字符串中单词的语义相似度

Posted

技术标签:

【中文标题】如何使用 WordNet 路径算法计算两个字符串中单词的语义相似度【英文标题】:How to calculate semantic similarity of words in two strings using WordNet path algorithm 【发布时间】:2015-09-22 13:07:49 【问题描述】:

我有一串单词说s1。我在其他集合中也有多个字符串,例如 s2、s3、s4。

我想将字符串 s1 中的单词与每个字符串 s2、s3 等进行匹配。根据最大相似度得分,我想找出 s2、s3 中的哪些字符串与 s1 最大匹配。

我想使用 wordNet 的 PATH 算法。请提出建议,最好的方法应该是什么。

【问题讨论】:

【参考方案1】:

为了在 WordNet 中使用路径相似性,首先您需要使用 WordNet 中的同义词来消除每个单词的歧义。然后你可以计算两个文本的基于 WordNet 的相似度。

在this paper 中,他们使用 Wu-Palmer 路径相似度将其称为概念相似度。他们基本上将同义词集视为文本中的概念,将 Wu-Palmer 路径相似度视为概念相似度度量。

如果pq是两个文本,和是这两个文本中对应的同义词集合,两个文本的概念相似度计算公式为:

是两个同义词集的 Wu-palmer 相似度。

【讨论】:

以上是关于如何使用 WordNet 路径算法计算两个字符串中单词的语义相似度的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 WordNet 或与 wordnet 相关来实现基于类别的文本标记?

如何计算两个文档的相似度

在 wordnet 中查找同义词集之间的距离

使用 Wordnet 进行概念提取

Python:字符串的语义相似度得分

基于 WordNet 的语义相似度 (WNetSS) API