刘继明,孟亚磊,万晓榆
(1.网经科技(苏州)有限公司,江苏 苏州 215021;2.重庆邮电大学 经济管理学院,重庆 400065)
构建能够跟人类用自然语言对话的系统一直是人工智能领域的热门研究课题。近些年来,随着自然语言处理、深度学习等领域的突破以及真实对话数据规模的增加,人机对话系统领域取得了丰硕的成果,一些大企业的智能助理,如谷歌smart reply[1]、苹果Siri、微软小冰、小爱同学等,开始走近用户。总体而言,当前各种形态的对话系统承载的功能主要有任务执行、知识问答、闲聊和智能推荐等。
对话系统通常划分为自然语言理解(natural language understanding, NLU)、对话管理(dialog manager, DM)与自然语言生成(natural language generation, NLG)3个主要模块。其中,自然语言理解主要完成意图识别和槽位填充这2个方面的功能;对话管理模块主要负责根据对话状态,选择适当的对话策略与用户交互,在技术实现上分为对话状态跟踪与对话策略优化2部分[2];自然语言生成模块主要负责将对话引擎的响应以人类语言形式组织之后,反馈给用户,主要采用定制带有变量的回应模板实现[3]。
对于特定的垂直领域而言,往往难以收集大规模的对话数据,但数据量不足时经常无法达到满意的意图识别与填槽精度,此时,在小样本基础上充分利用预训练特征显得十分必要。
系统需要识别用户的目标,然后收集实现这一目标所需要的信息,这些与领域相关的字段即为语义槽。如果用户比较配合,那么会根据系统提示给出相应的信息。合作型对话逻辑很容易实现,比如可以使用简单循环作为主体,在所有必填槽填完之前一直询问缺失的信息。……