我开始使用AI聊天机器人并且不知道从哪里开始。 我所想象的是这样的:
示例程序:
用户:扯皮芒果的颜色是什么?
Bot:我不知道[输入答案添加!@:一开始]
用户:!@:黄色
用户:你知道扯芒果的颜色吗?
Bot:黄色
答案 0 :(得分:0)
聊天机器人,或者conversational dialogue systems一般来说,必须能够生成自然语言,正如您所料,这不是一件轻而易举的事。最先进的方法通常是人与人交谈的对话(例如Facebook或Twitter等聊天平台上的对话,甚至是电影对话,基本上可以大量使用并且类似于自然对话的东西)。然后,这些对话被标记为问答对,可能使用预训练的word embeddings。
这是NLP领域的一个活跃的研究领域。使用的系统的示例类别是“端到端序列到序列模型”(seq2seq)。然而,基本的seq2seq模型倾向于产生重复的,因此反应迟钝。最近的论文尝试使用reinforcement learning以及adversarial networks等技术解决此问题,以便学习选择答案。另一种改进系统的技术是通过允许模型看到(更多)先前的转弯来扩展对话的上下文,例如通过使用分层模型。
如果您真的不知道从哪里开始,我想您会在“语音和语言处理”的this免费章节中找到您需要的所有基础知识。作者:Daniel Jurafsky& James H. Martin(2017年8月)。祝你好运!