对话机器人基础
一、对话机器人分类
1. 知识领域
a. 面向限定领域
只能聊设定好的固定主题。若用户用无关领域挑战机器人,机器人用安全话术回复或结束对话。
b. 面向开放领域
用户不需要有明确的目的或意图。
c. 面向常用问题集
通过检索知识库来回答问题,仅取决知识库的内容。
2. 答案来源
a. 基于结构化
KBQA系统。问答的来源是一个知识库,知识库可能是图数据库、RDF三元组、Mysql等。问题的答案是通过知识库推理得来的。
b. 基于文档
阅读理解任务。根据用户问题,从文档中自动检索答案返回。
c. 基于问答对
语料库中保存大量的问题和答案组,用户的问题在给定的问答集中,将答案返回。
3. 答案反馈机制
a. 基于检索式
答案的来源是人工编写的模板,根据用户的问题,通过一系列算法找到对应的答案模板,返回给用户。
b. 基于生成式
通过NLG技术(自然语言生成模板)生成。专业程度不高,适合自动生成。
4. 任务类型
a. 问答机器人
一问一答,多轮对话之间没有特定关系。
b. 任务机器人
多轮交互式,以最终完成某个任务为对话结束,每轮交互与上文有关系,整个问答流程类似一个软件流程图。
c. 闲聊机器人
聊天多为兴趣爱好等闲聊。
二、实现技术
- 意图识别层:识别语言的真实意图,将意图分类,进行意图属性抽取。
- 问答匹配层:对问题进行匹配识别及生成答案的过程。