0

我正在构建一个系统来将自然语言问题转换为 SQL 查询。现在我正在实施的是对自然语言问题的重构,使其更加结构化,以便我可以更轻松地将其转换为 sql 语句。

重组后的语言将遵循以下规则:

他们想做什么。“Find” “List” “Give” 他们希望我们检索的属性 ex。来自他们希望我们匹配的 sql 模式实体的表属性

这种重构的语言很棒,可以很容易地转换为 SQL,但问题是我正在创建所有名词块和实体的大型组合,这意味着很多句子。未来的发展将有助于最大限度地减少这些,但这是以后的事情。

因此,我需要从大量的句子中找到与原始查询最相似的句子。

所以我的问题是,你会推荐什么样的相似函数?前任。解析树结构、语义和句法相似度...

感谢您的帮助,我正在为开源构建这个,所以任何帮助都是好的

4

1 回答 1

0

您是否尝试过 spaCy 的 .similarity 方法?您可以使用 spaCy 的管道非常快速地获取所有查询的 nlp 对象。然后,您将按照nlp_original_query.similarity(nlp_other_query). 使用它来比较查询/关键字的相似性,我取得了很大的成功。

于 2019-04-12T15:56:54.560 回答