有没有用于计算一对句子语义相似度分数的库?
我知道WordNet的语义数据库,以及如何为2个单词生成分数,但我正在寻找能够针对整个句子执行所有预处理任务(如端口词干提取、停用词删除等)并输出两个句子相关程度得分的库。
我发现了一个使用.NET框架编写的work,它使用一系列预处理步骤计算分数。是否有Python项目可以做到这一点?
我不是在寻找可以帮助我找到分数的操作序列(就像here所要求的那样)
我很乐意自己实现每个阶段,或者将来自不同库的函数粘合在一起,以便它适用于句子对,但我主要需要这个作为测试数据推理的工具。
编辑:我考虑使用NLTK计算遍历两个句子中每对单词的得分,然后从结果的标准偏差中推断,但我不知道这是否是相似度的合法估计。此外,对于长字符串,这将需要大量时间。
再次强调,我正在寻找已经智能实现这一点的项目/库。让我可以这样做:
import amazing_semsim_package
str1='Birthday party ruined as cake explodes'
str2='Grandma mistakenly bakes cake using gunpowder'
>>similarity(str1,str2)
>>0.889