其核心部分就是NLU(自然语言理解),通过对话系统处理后最后通过自然语言生成的方式给出答案。一段语言如何理解对于计算机来说是非常有难度的,例如:“苹果”这个词就具备至少两个含义,一个是水果属性的“苹果”,还有一个是知名互联网公司属性的“苹果”。因此在阿里小蜜这样在电子商务领域的场景中,我们先采用分领域分层分场景的方式进行架构抽象,然后再根据不同的分层和分场景采用不同的机器学习方法进行技术设计。首先我们将对话系统从分成两层:
1、意图识别层:识别语言的真实意图,将意图进行分类并进行意图属性抽取。意图决定了后续的领域识别流程,因此意图层是一个结合上下文数据模型与领域数据模型不断对意图进行明确和推理的过程;
2、问答匹配层:对问题进行匹配识别及生成答案的过程。在阿里小蜜的对话体系中我们按照业务场景进行了3种典型问题类型的划分,并且依据3种类型会采用不同的匹配流程和方法:
1. 问答型:例如“密码忘记怎么办?”→ 采用基于知识图谱构建+检索模型匹配方式
2. 任务型:例如“我想订一张明天从杭州到北京的机票”→ 意图决策+slots filling的匹配方式
3. 语聊型:例如“我心情不好”→ 检索模型与Deep Learning相结合的方式