当我们谈起人机对话系统
现实中的人机系统
人机对话的发展历程
人机对话系统的四个主要功能
通用聊天机器人的五个主要模块
输入预处理
语音识别技术主要包括特征提取技术、模式匹配准则以及模型训练技术3个方面
自然语言理解
聊天机器人系统中的自然语言理解功能包括用户意图识别、用户情感识别、指代消解、省略恢复、回复确认及拒识判断等技术¨ 引。并且语法分析、语义分析、关键词提取、相似度计算等自然语言处理技术也是必不可缺的。
对话管理
封闭式
封闭式是指有明确的服务目标和服务对象,仅处理特定领域中的问题, 给对话的主题进行了限制。
开放式
开放式则没有一个清晰的目标和对象,对话涉及的主题很广,所需要的知识量也是巨大的。
答案生成
整个答案生成的过程包括了内容选择、文本规划、语句合成、指代表达生成、表层实现等阶段。
生成技术主要包括检索式和生成式
检索式
检索式是指在对话库中以搜索匹配的方式找到适合用户输人语句的最佳答案予以回复。
生成式
生成式是指采用一定的技术手段( 如深度学习技术) 自动生成新的回复内容。
输出处理
聊天机器人的构建方式
基于人工模板的聊天机器人
根据用户输入的句子,在模板库中找到匹配的问句模板,然后按照对应的应答模板生成答案, 返回给用户,如ALICE、Chat Scfipt 等。
基于检索的聊天机器人
对话库的要求很高,并且需要足够大,但是它的优点是回答质量高,表达比较自然。
基于深度学习的生成式聊天机器人
根据用户输入的句子,利用模型逐词或逐字生成答案,然后将答案回复给用户。其中多数技术采用了Encoder.D ecoder模型,即编码一解码模型
这种方法思路简单,可扩展,能够更好地理解上下文,但是模型很难训练,回复时经常存在一些语法错误。
三种构建方法的比较
结合工程实践选题调研分析同类产品
我的工程实践选题的大致方向是基于深度学习在一定程度上实现多轮对话,关于人机对话系统的一些软件产品及其特点上文中已在表格中呈现。作为商业产品的人机对话系统往往采用基于人工模板和检索式模型,如Cortana小娜,度秘,Siri等均为封闭领域的个人助理产品,依附于成熟的平台而存在。而开放领域的生成式人机对话系统由于其训练困难,且容易出现各种回复错误而很难产生商业价值,多数为尝试性质的“玩具产品”,为大家所熟知的微软小冰是此类产品中能够尝试进行商业落地的产品,通过其生成式模型所带来的创造性回答及功能丰富的插件收获了不少粉丝,但她相对于商业化产品更倾向于是着眼未来的研究性尝试。
我是大一的时候知道有这样一个微信公众号,是被同学推荐关注的。但当时觉得对话质量真的很难吸引我,而且我也不是一个喜欢养小猫小狗的人,更何况是一个虚拟的存在呢,所以也很少去看。而当我对相关的实现方法有了一点微末了解之后,才发觉想要实现这样的效果需要投入多少的人力物力,且其效果已经达到了可望而不可及的地步,顿时心生敬意。
该领域尚处于发展的初期,我们所说的成熟也只是相对于早年投入测试的阶段,但距离成熟的应用还有很长的路要走。但微软小冰从14年公测至今,其成长已经带给我们太多的惊喜,开发团队也以很高的频率进行着新的有趣的尝试,或许再过十年二十年,开放域的聊天机器人真的会以稳定的姿态融入我们的日常生活中。
来源:oschina
链接:https://my.oschina.net/u/4275872/blog/3380013