如何在Python中查找两个字符串的语义含义相似性



与其找到两个字符串之间的相似性,我只想找到两个字符串含义的相似性。

  1. 超线程的类型有哪些
  2. 超线程中是否有任何类别

应该有相似之处.到目前为止,我尝试了余弦相似性和单词移动器距离,但我没有得到某些字符串的准确结果

这是一件很难做到的事情。也很难知道你的意思是两个短语之间的"准确"语义相似性。您需要找到一个"好"的指标来执行此操作

无论如何,如果你的上下文有限(你不必做一个通用的语义模拟计算器(,一个非常基本的方法是构建一个文本分类器(使用机器学习(,在其中定义你想要使用的主体类。

例如,对于示例短语,可以有两个文本类:

  1. 询问有关超线程的问题

  2. 询问食物

然后使用大量短语和模型输出示例短语的概率来训练模型:

  1. "超线程的类型有哪些">

    • 询问超线程 0.9

    • 询问食物 0.5

  2. "超线程中是否有任何类别">

    • 询问超线程 0.8

    • 询问食物 0.4

这两个短语都被归类为"询问超线程"(因为它们在这些类中得分较高(,然后可以假设它们是相似的。人们也可以使用概率分数来做一些更复杂的事情(使用分数差异等(

最新更新