我试图在我的网站上建立一个聊天助手,它应该回答诸如"您能跟踪我的订单吗?"," XXX&的表现如何? #34 ;.大部分工作在于理解用户的查询。
我正在使用“命名实体识别器”'和#34; Text Parsers"用于处理查询。在此之前,我将查询通过“拼写检查程序”'减少错误,
Can you track my ordr?
到
Can you track my order?
它在大多数情况下都有效,但在像
这样的情况下失败了Can you track my water?
在这种情况下,拼写纠正器不会纠正单词“water'并且NER无法将实体标识为“订单”。
问题是“你能追踪我的水吗?'在某些其他情境中,它可能是一个正确的句子,但它在我的上下文(域)中肯定是一个错误。所以我应该能够纠正这句话。
我被困在这里。
我是否可以使用预定义的查询和/或用户输入的查询的统计数据来纠正这些句子?
答案 0 :(得分:1)
我不知道你可以改变“水”到“秩序”的方式。
但是,如果您有一组预定义的问题,那么您可以在提交问题之前向用户提供选择建议。
NER可能只识别/分类可能不会用于替换部分句子的实体,因为用户可能已经预期了他所说的内容。 你所做的是建议基于你的集合的最概率词。
参考文献:
答案 1 :(得分:1)
您可以使用 n-gram 模型查找最可能的单词,然后使用替换。在您的情况下,您将单词 ordr 替换为 order 。如果你想更深入,你可以使用机器学习模型来处理这个问题。