使用NLP进行句子校正

时间:2016-06-05 12:49:17

标签: nlp sentence-similarity

我试图在我的网站上建立一个聊天助手,它应该回答诸如"您能跟踪我的订单吗?"," XXX&的表现如何? #34 ;.大部分工作在于理解用户的查询。

我正在使用“命名实体识别器”'和#34; Text Parsers"用于处理查询。在此之前,我将查询通过“拼写检查程序”'减少错误,

Can you track my ordr?

Can you track my order?

它在大多数情况下都有效,但在像

这样的情况下失败了
Can you track my water?

在这种情况下,拼写纠正器不会纠正单词“water'并且NER无法将实体标识为“订单”。

问题是“你能追踪我的水吗?'在某些其他情境中,它可能是一个正确的句子,但它在我的上下文(域)中肯定是一个错误。所以我应该能够纠正这句话。

我被困在这里。

我是否可以使用预定义的查询和/或用户输入的查询的统计数据来纠正这些句子?

2 个答案:

答案 0 :(得分:1)

我不知道你可以改变“水”到“秩序”的方式。

但是,如果您有一组预定义的问题,那么您可以在提交问题之前向用户提供选择建议。

NER可能只识别/分类可能不会用于替换部分句子的实体,因为用户可能已经预期了他所说的内容。 你所做的是建议基于你的集合的最概率词。

参考文献:

What is the best way to find the most similar sentence?

Find semantically similar word

答案 1 :(得分:1)

您可以使用 n-gram 模型查找最可能的单词,然后使用替换。在您的情况下,您将单词 ordr 替换为 order 。如果你想更深入,你可以使用机器学习模型来处理这个问题。