【问题标题】:How to find relationship between two phrases?如何找到两个短语之间的关系?
【发布时间】:2013-11-26 13:40:54
【问题描述】:

我该如何继续寻找两个完全不同但相关的短语之间的关系。例如: 1)“今天的社交媒体网站......” 2) “Facebook 是极受欢迎的社交网站……”

虽然这两个短语没有太多共同点,但它们是相关的(因为 Facebook 是当今的社交媒体网站)。我如何量化这种关系(如果可能的话)?

【问题讨论】:

  • 仍然不确定问题所在。如果我假设您正在寻找实体之间的相似之处或联系,我是对的吗?或者连短语都要等同?
  • @rishi 抱歉,不清楚。我试图找到两个短语之间的关系,这不一定是基于精确匹配术语的相似性或物理连接性。相反,这个想法是像一个人一样找到短语之间的联系:基于外部信息和推理......

标签: string nlp text-manipulation


【解决方案1】:

简单、无效的方法:计算共同词的数量(和/或词本身),或两个句子之间的编辑距离,但使用词而不是字符。在这种情况下,它会发现两个句子中都出现了“social”这个词。您还可以找到一种方法来使用一些词库数据来检测同义词,例如“网站”和“站点”。这可能需要一些工作。可以忽略常用词(“and”、“the”、...),以减少巧合匹配的机会。

细化:维护某种单词之间的链接图(例如“Facebook”和“networking”),将单词之间的链接权重建立在它们一起出现的频率上,并根据你的相关性度量。维护一个经常出现的单词列表,并忽略它们。显然,这取决于您的算法是否有一些具有代表性的“训练数据”。

复杂而有效的方法:阅读机器学习。

【讨论】:

    【解决方案2】:

    这是一个非常普遍的问题,您必须采用多种方法才能获得任何可观的结果。其实你说的就是NLP的终极目标。我建议您将问题分解为多个部分,并逐个解决。

    第一个难题是了解两个句子是否在谈论相同/相似的实体。这可以通过识别不同句子中的主语、宾语、动词、位置引用、工具引用、与格引用等来完成。这些参考然后可以相互比较。我想到的一种方法是查看 wordnet 距离。你将不得不在一段时间内建立你的词汇量。

    第二个难题是解决句子的精神。您将不得不在这里使用机器学习方法以及语言学。

    正如我所说,这是一个非常普遍的问题,因此很难一次性解决。如果我是你,我会通过以下方式解决问题:

    第 1 步。首先将我的解决方案限制在一个域中。这将帮助我构建更好的本体/词汇,更好地训练我的模型。

    第 2 步:解决实体接近度问题并尝试了解哪些句子在谈论相似的主题或指向相似的对象等。这一步更多的是语言问题

    第 3 步:借助机器学习,尝试找出具有相似气质和语调的句子。

    第 4 步:移动到下一个域并重复这些步骤。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-18
      相关资源
      最近更新 更多