测量两个短语之间的语义相似性

voi*_*urn 20 algorithm nlp wordnet semantics

我想测量两个短语/句子之间的语义相似性.有没有我可以直接可靠使用的框架?

我已经检查了这个问题,但它已经很老了,我找不到真正有用的答案.有一个链接,但我发现这不可靠.

例如:
我有一个短语:感到压抑
我有几个选择:强制内向,粉碎,情感破坏,重塑等等.
我想找到与第一个最相似的术语/短语.
这里的答案是:在情感上被摧毁.

更大的图景是:我想根据句子中的用法来识别来自FrameNet的哪个帧与给定动词匹配.

更新:我发现这个库对于测量两个单词之间的相似性非常有用.此外,ConceptNet相似性机制非常好.

这个库衡量句子之间的语义相似

如果有人有任何见解请分享.

mig*_*rez 8

这是一个非常复杂的问题.

我能想到的主要技术(在进入更复杂的NLP过程之前)将是对每对短语应用余弦(或任何其他度量)相似性.显然,由于不匹配问题,此解决方案目前效率非常低:句子可能用不同的词来表示相同的概念.

要解决此问题,您应该使用更"概念"的含义来转换每个短语的初始表示.一种选择是使用其同义词扩展每个单词(即使用WordNet,另一种选择是应用扩展表示的分布式语义DS(http://liawww.epfl.ch/Publications/Archive/Besanconetal2001.pdf)等指标.每个术语中出现更多可能的单词.

示例:文档的表示形式:{"car","race"}将使用同义词转换为{"car","automobile","race"}.而对于DS,它将类似于:{"car","wheel","road","pilot",...}

显然这种转变不是二元的.每个术语都有一些相关的权重.

我希望这有帮助.