博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TOP100summit分享实录 | 「来也」胡一川:吾来对话机器人解决方案
阅读量:5813 次
发布时间:2019-06-18

本文共 3205 字,大约阅读时间需要 10 分钟。

图片描述

本文内容节选自由msup主办的第七届TOP100summit,「来也」联合创始人兼CTO胡一川分享的《吾来对话机器人解决方案》实录。

分享者胡一川,「来也」联合创始人兼CTO,本科和硕士毕业于清华大学,博士毕业于宾夕法尼亚大学,创立「来也」之前,曾联合创立了影视推荐引擎”今晚看啥”并被百度收购,后加入百度任资深架构师。

编者按:2018年11月30日-12月3日,第七届全球软件案例研究峰会在北京国家会议中心盛大开幕,现场解读2018年「壹佰案例榜单」。本文为「来也」联合创始人兼CTO胡一川老师分享的《吾来对话机器人解决方案》案例实录。

今天在座的各位大部分是IT行业技术从业者,所以我会重点介绍对话式人工智能中的核心技术,并通过吾来对话机器人解决方案,让大家了解我们如何使用这些技术,去解决不同场景中人机对话的问题。

首先,简单做一个自我介绍。我是胡一川,「来也」的联合创始人和CTO。「来也」主要做智能对话的技术,为企业和个人打造智能对话机器人。今天,我重点分享我们面向企业的对话机器人解决方案“吾来”,它的核心价值在于将对话式的AI能力产品化,帮助企业解决在各种业务场景中打造对话机器人,提升效率。

适合对话机器人的三类场景

我们将适合对话机器人落地的场景分为三类。第一类是一些人机交互方式比较受限的场景,比如在车载、智能音箱、可穿戴设备等,在这些场景中自然对话是唯一的体验较好的人机交互方式,因此对话机器人非常重要。第二类是生活中一些发生在人与人之间的简单重复的交互场景,在这些场景中,我们可以用对话机器人替代人工,比如在线客服、呼叫中心等。第三类场景是将对话机器人和传统图形化交互界面相结合,这更多是在一些营销和推荐场景,通过增加自然对话的交互方式让用户的体验变得更好,从而提升转化率。

三种不同的对话类型

从技术的角度,我们通常将对话分为三种类型:问答型对话、任务型对话、闲聊。

问答型对话:用户有一个问题,希望对话机器人进行交互寻求关于这个问题的答案。机器人的回复来自于特定领域的知识库,机器人的效果以回答准确率来评估。

任务型对话:用户有一个意图,希望对话机器人帮他完成一个任务。机器人通过多轮对话引导、澄清并满足用户需求。在任务型对话中,机器人的效果以任务完成率来评估。

闲聊:像大家平常生活中的寒暄,例如,微软小冰就属于闲聊机器人。这种机器人是以相关性,趣味性作为评估的指标。

接下来,我将分别介绍这些对话机器人背后用到的技术、算法和模型。

基于知识库的问答型对话

下图是基于知识库的问答型对话。基于这个系统的问答机器人本质是在特定领域的知识库中,找到和用户提出的问题语义匹配的知识点。

clipboard.png

在吾来对话机器人解决方案中,我们针对不同的情况选择相应的问答型对话解决方案,包括:基于分类模型的问答系统、基于检索和排序的问答系统、基于句向量的语义检索系统。

基于分类模型的问答系统

clipboard.png

第一种方案,基于分类模型的问答系统将每个知识点各分一类,使用深度学习、机器学习等方法,效果较好。但需要较多的训练数据,且更新类别时,重新训练的成本较高,因此更适合数据足够多的静态知识库。

基于检索和排序的问答系统

clipboard.png

第二种方案,基于检索和排序的问答系统能实时追踪知识点的增删,从而有效弥补分类模型存在的问题。但仍然存在检索召回问题,假如用户输入的关键词没有命中知识库,系统就无法找到合适的答案。

基于句向量的语义检索

clipboard.png

第三种方案,是基于句向量的语义检索。通过句向量编码器,将知识库数据和用户问题作为语义向量输出,基于句向量的语义检索能实现在全量数据上的高效搜索,从而解决传统检索的召回问题。

这个架构最核心的模块是句向量编码器,它需要通过标注的句对数据来训练,基本原理如下图所示:

clipboard.png

任务型对话系统的架构

任务机器人在特定条件下提供信息或服务,以满足用户的特定需求,例如查流量、充话费、订机票、订餐、等等。由于用户需求复杂多样,任务机器人一般通过多轮对话明确用户的目的。

下图是传统的任务型对话的整体架构,分为5个模块,分别是:语音识别(ASR)、语义理解(NLU)、对话管理(DM)、语言生成(NLG)、语音合成(TTS)。

clipboard.png

我今天重点为大家讲述NLU模块和DM模块相关的内容。如下图所示,NLU模块的输入是用户所说的自然语言,它的输出是可被计算机处理的结构化信息,我们称为用户对话动作(User Dialog Act)。用户对话动作又会作为DM模块的输入。基于当前的对话状态,以及当前的用户对话动作,DM模块确定系统对话动作。系统对话动作确定后,对话状态也随着发生变化。

clipboard.png

接下来我们来讲一讲关于DM的常见技术方案和模型:

第一种方案是基于有限状态机(Finite State Machine)的对话管理,它把对话状态都映射为系统动作,状态之间的跳转以用户当前的输入作为条件,然后通过有限状态机映射到下一个状态。这种方案只适合特定的对话类型,状态太多时很难维护。

第二种方案是基于帧(Frame)的对话管理。帧的定义是槽位的集合,槽位代表的是用户需要提供的信息。通过这种方式,对话状态被简化成了哪些槽位已经被填充,哪些槽位没有被填充,而系统的动作选择就是下一步应该填充哪一个槽位。这种方案虽然简单,但也有很多局限性,只适合较为简单的任务型对话场景。

第三种方案是基于计划(Agenda)的对话管理。这种方案是对Frame的改进,把它从一个没有逻辑关系的平级槽位变成一个树状的结构。这种树状的结构里面是有层次的,而且树状结构是可以动态调整的。

第四种方案是基于深度强化学习的对话状态跟踪,通过神经网络将对话上文映射到系统动作,无需显示定义对话状态。这是基于机器学习的方法,需要有大量真实的、标注的对话数据,所以不太适合冷启动。

针对不同场景,我们有什么解决方案?

场景一:智能客服

在客服场景下,对话机器人有两个用途:

1、通过对话机器人7×24实时的满足用户关于业务咨询、业务办理等方面的需求,提升用户的体验。

2、对话机器人能够提供人机协作的模式,作为人工客服的助手来减轻客服的负担,提升客服的工作效率。同时它还能完成智能质检工作,保障服务质量。

clipboard.png

基于吾来对话机器人解决方案,我们为中国移动10086App打造了在线智能客服及个性化推荐服务。该对话机器人可为用户提供充流量、充话费等服务,既提高了服务效率也提升了用户体验。

场景二:智能下单

在图形化的用户下单的操作界面中,如果加入对话机器人,能提高用户的操作效率,实现“一句话下单”,并给用户更为个性化的体验。对话机器人能够识别多种的表达方式,利用自然语言主动交互与多轮对话控制,引导用户下单,从而提升订单的转化率,同时提升用户的满意度。

clipboard.png

基于吾来对话机器人解决方案,我们为麦当劳打造了智能对话点餐机器人。该机器人支持对话流中的餐品查询,通过主动澄清的方式逐步引导用户下单,成为图形化交互界面的有益补充。

场景三:智能营销

在线营销的场景下,对话机器人通过检测访客行为,能主动发起关怀,提高用户激活率;同时,对话机器人还能提供全天候服务,捕获高质量销售线索,提高营销转化效率。

clipboard.png

基于吾来对话机器人解决方案,我们为学旅家打造了销售线索生成机器人。该机器人可逐步引导用户提供基本信息及偏好,生成高质量线索表单,方便销售人员进行更有针对性的线索转化。

总结

在未来,越来越多的企业/个人会把对话机器人用于工作和生活中。一个对话机器人能否成功落地,在我看来主要有两点:一是对话机器人有清晰的领域边界,即对话机器人能干什么,不能干什么,需要事先想清楚;二是收集足够多的领域数据,这样才能训练出的一个具有语义理解、多轮对话能力的对话机器人,满足用户的需求。

以上内容来自胡一川老师的分享。

声明:本文是由壹佰案例原创,转载请联系 meixu.feng@msup.com.cn

你可能感兴趣的文章
统治世界的十大算法
查看>>
linux svn安装和配置
查看>>
SSH中调用另一action的方法(chain,redirect)
查看>>
数据库基础
查看>>
表格排序
查看>>
关于Android四大组件的学习总结
查看>>
java只能的round,ceil,floor方法的使用
查看>>
由于无法创建应用程序域,因此未能执行请求。错误: 0x80070002 系统找不到指定的文件...
查看>>
新开的博客,为自己祝贺一下
查看>>
puppet任务计划
查看>>
【CQOI2011】放棋子
查看>>
采用JXL包进行EXCEL数据写入操作
查看>>
一周总结
查看>>
将txt文件转化为json进行操作
查看>>
线性表4 - 数据结构和算法09
查看>>
C语言数据类型char
查看>>
Online Patching--EBS R12.2最大的改进
查看>>
Binary Search Tree Iterator leetcode
查看>>
Oracle性能优化--DBMS_PROFILER
查看>>
uva-317-找规律
查看>>