计算两个句子之间的语法相似度

时间:2017-03-17 15:27:11

标签: nlp deep-learning recommendation-engine

我正在制作一个程序,提供一些英语句子,用户必须了解更多。

例如:

  

首先,我提供了一个句子“我今天必须去学校”给用户。   然后,如果用户想要学习更多类似的句子,我会发现一些与该句子具有高语法相似性的句子。

我认为提供句子的唯一方法是计算相似度。

有没有办法计算两个句子之间的语法相似度?

或者有更好的方法来制作该算法吗?

任何建议或意见将不胜感激。谢谢。

2 个答案:

答案 0 :(得分:1)

我解决此问题的方法是使用像NLTK这样的工具进行词性标注,并将短语的树结构与数据库进行比较。

其他方式,如果您已有训练数据集,请使用WEKA使用机器学习方法连接短语。

答案 1 :(得分:1)

您可以将句子解析为组成树或依赖树,并使用这些表示法来制定某种形式的查询,您可以使用它来查找具有相似结构的候选句子。

您可以从Stanford NLP

中查看此可用工具
  

Tregex是一个用于匹配树中模式的实用程序,它基于树关系和节点上的正则表达式匹配(名称是"树正则表达式的简称")。 Tregex配备了Tsurgeon,一种树木转换语言。版本2.0中还包含一个类似的包,它在依赖图上运行(类SemanticGraph,称为semgrex。