【问题标题】:how to find the semantic meaning similarity of two string in python如何在python中找到两个字符串的语义相似度
【发布时间】:2019-10-21 10:29:13
【问题描述】:

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

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

应该有相似度。直到现在我尝试了余弦相似度和词移动距离,但我没有得到一些字符串的准确结果

【问题讨论】:

    标签: python machine-learning nlp


    【解决方案1】:

    这是一件很难做到的事情。也很难知道你的意思是两个短语之间的“准确”语义相似性。你需要找到一个“好的”指标来做到这一点

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

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

    1. 询问超线程

    2. 询问食物

    比您使用大量短语训练模型以及示例短语的模型输出概率如下:

    1. “超线程有哪些类型”

      • 询问超线程 0.9

      • 询问食物0.5

    2. “超线程中有没有分类”

      • 询问超线程 0.8

      • 询问食物0.4

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

    【讨论】:

      猜你喜欢
      • 2015-10-19
      • 2013-06-06
      • 1970-01-01
      • 2010-10-09
      • 2018-06-15
      • 2016-12-14
      • 1970-01-01
      • 2021-10-12
      相关资源
      最近更新 更多