个人博客导航页(点击右侧链接即可打开个人博客):大牛带你入门技术栈
导读:随着“中台”战略的提出,目前宜信中台建设在思想理念及架构设计上都已经取得了很多成果。宜信是如何借助中台化的思想打造“AI中台”及相关的智能产品呢?本次直播,宜信科技中心AI中台团队负责人王东老师分享了宜信AI中台的具体实施路径,并重点介绍了AI中台的智能产品——智能聊天机器人平台,包括智能聊天机器人平台的背景理念、设计思想、技术架构和应用场景,该平台能提供什么样的能力,以及它如何快速地支持业务方,提供一种以中台化的思想来建设智能产品的实践思路。
视频回放:https://v.qq.com/x/page/q0904bcjlkn.html
——————
前两期技术沙龙分别分享了宜信AI中台和数据中台的建设实践,本次分享将先回顾AI中台的总体设计和实施路径,以及AI中台与数据中台的关系,再详细介绍基于中台思想建设的智能聊天机器人平台,包括其技术架构、技术原理、核心功能点、应用场景以及应用效果。
随着业务的不断发展,业务处于不同的发展阶段,对数据的需求也从刚开始的可用-满足BI分析,到后来的易用-敏捷化分析,到现在的好用-数据智能化。例如前台系统提出客户细分、个性化推荐、智能问答、模型预测等需求,后台数据探索需要进行关联分析、聚类分析、持续分析等,这些都向我们提出了数据智能化的需求。
数据中台除了提供平台能力以外,还提供了一些更高级的能力,比如把数据变成一种基础服务提供给业务方,业务方可以以自助的方式在数据中台上获取数据、进行数据处理、数据探索、数据挖掘、分析钻取、多维分析、自助化报表、数据分享等,以快速实现自己的商业价值。
随着业务的发展,越来越多智能化的数据需求被提出,这些智能化需求涉及到模型训练、数据标注、特征工程、模型部署、性能监控等,需要使用机器学习、深度学习等算法支持。数据中台的主要目标还是服务数据,对于智能化和模型并不能很好地支持,因此AI中台应运而生。
我们把智能服务的需求抽象出来,形成一个独立的AI中台层。AI中台是一个用来构建智能服务的基础设施平台,对公司所需的模型提供分布分层的构建能力和全生命周期管理的服务,鼓励各个业务领域将基础性、场景性、通用性的AI能力沉淀到平台中,加强模型复用、组合创新、规模化,最终实现降本增效和快速响应业务方的目的。
既然提到了数据中台和AI中台,很多人会问:数据中台和AI中台是什么关系呢?
数据中台和AI中台两者是相互依存、承前启后的关系。
首先,数据中台和AI中台都对外提供服务,只是侧重点不同。
其次,数据中台和AI中台是相互依存,相互支持的。
在过去,很多算法团队更像是算法外包团队,根据不同业务线的需求,各自构建阵地,逐个攻克目标。这样的形式虽然也取得了很多成绩,但存在重复建设、效率有限的问题。
我们将这些问题总结如下:
这些都是AI中台需要解决的痛点,针对以上痛点,我们希望:
总结起来就是:可复用化、服务统一化、对接数据中台、流程角色优化、运行监控化和资源管控化,最终让AI中台成为一个强大的AI能力支持中心,根据业务需求快速提供火力支援,迅速完成商业价值。
下面介绍AI中台的平台架构。
最下面是数据中台,提供数据处理、数据分析、数据管理、数据安全、数据服务等能力。最上面是业务前台,包括各条业务线。AI中台处于数据中台和业务前台的中间位置。
如图所示,整个AI中台由几个模块组成:
转存失败重新上传取消
上图展示AI中台的能力架构。我们以能力的角度来描述AI中台对外输出。除了前文介绍的服务运行能力、监控预警能力、资源管理能力(就是图中左边的几个模块)以外,我们把AI中台的能力分为4层:
1)平台层
比如数据获取能力、在线训练能力、在线标注能力、特征工程能力、自助训练能力等。这些能力是通过AI工具集和AIlab来实现的。
这层的用户主要包括:
2)AI技术层
AI技术层主要提供:AI基础能力,包括词法分析、语音合成、文章分类、图像识别等,这些本质上是AI技术NLP、语音、图像、视频等大分类里的能力。
3)AI业务层
AI业务层主要提供AI技术与业务相结合后能提供的能力,比如:评论观点提取、文章标签、卡证类识别、人脸识别、视频审查等。
AI技术层和业务层的区别在于:AI技术层主要提供AI基础能力,比如NLP、CV、语音、视频等。而AI业务层主要是将AI技术与具体的业务场景结合起来,例如身份证识别、学历识别、验证码识别等。
这两层的用户是:业务团队的应用开发人员,可以直接调用智能服务,从而实现业务场景智能化,例如:短文本相似度、语言合成、票据识别等。
4)产品层
这一层以产品的形式对外提供服务,例如:智能机器人产品、知识图谱产品等。
这层的用户是:公司的业务人员或公司的直接客户,他们通过直接使用产品就可以获得结果, 例如:机器人。
上面3层都属于AI资产。从影响力角度来看,产品层的影响力最大,依次下来是业务层、技术层,最后是平台层。我们在AI中台的实施路径上,也会按照这个优先级去构建和实施。
数据中台的口号是平民化和敏捷化。AI中台的口号是开放化。
AI中台的建设思路是希望多方联合,公开透明,广泛参与,协商一致促进AI能力沉淀,加强AI服务复用,降本增效。
我们更加关注于通用性的AI需求,为各个领域的AI应用团队提供通用化智能服务。强调平台性和可复用性,鼓励基础类、场景类AI服务的通用化、平台化。
广泛支持大中小业务领域AI应用团队面临的大量智能业务需求,提供模型学习平台与模型运行监控托管服务以及通用的AI工具,方便前台业务快速上线智能应用。在实施过程中也会充分利用包括数据中台在内的现有技术资源,并根据业务需求强弱和重要性来确定实施路线。
我们希望AI不再是锦上添花,而是必备的能力,让开发者重新回归到业务的理解和创意的赛道上来,关注自己的业务逻辑。AI能力将会全部开放给开发者和使用者,这些能力包括语音、视频、自然语言处理、知识图谱等,我们会将这些能力封装好,开发者直接调用就可以。
转存失败重新上传取消
基于中台化思想,我们是如何建设机器人平台的?
智能聊天机器人,是一种通过自然语言模拟人类进行对话的程序。
目前,特定场景和领域的聊天机器人已经展现出了很高的自然语言理解与处理能力,例如:小度、Siri、小爱同学等。
智能聊天机器人可以代替企业中相对固化、重复的人力密集型任务或流程,包括:
典型的应用场景:智能聊天机器人除了可以闲聊以外,还可以用在问答作为问答机器人,回答专业领域的问题;作为任务机器人完成线上,甚至部分线下的任务;作为推荐机器人,推荐文章、音乐、产品;作为助理机器人,集成以上各种功能。
智能聊天机器人可以对外提供客户服务、对内进行业务辅助,实现全方位的效能提升,降本增效。
正在上传…重新上传取消
智能聊天机器人的本质是会话式UI。会话式UI是通过会话形式将已有数据、功能、服务展示给用户。
会话式UI与传统UI相比,具有独特的优势。
正如三星实验室高级设计师Golden Krishna所说:“最好的界面就是没有界面”。很多人认为语音交互比聊天机器人的干扰更小,能提供更好的使用体验。
这也是导致各种智能音箱在市场反响火爆的原因,语音交互已经走进千家万户、世界各地。
转存失败重新上传取消
目前会话式UI与业务系统紧密集成,是发展的主要趋势。通过集成各个业务系统,可以打造出专属的业务助手。如上图所示,我们可以将报表查看、指令集成、知识图谱查询、查询邮件等诸多服务集成到业务系统中,并且提供权限审核的功能,从而打造一个专属的业务助理。
一些行业预测认为:
Gartner预测到2020年:50%的分析查询会通过搜索、自然语言处理或语音生成,或自动生成。一线业务工作人员通过自然语言处理和会话分析,来进行分析和使用商业智能产品的使用率从35%提升到50%以上。
接下来详细介绍聊天机器人建设的过程。
智能聊天机器人建设是有难度的,比如机器人的智能化核心开发需要一定的AI研发能力;机器人需要全套的模型封装,以及数据管理、任务调度、权限控制等工程能力的支持等;各业务线均有广泛的需求,一个个实施起来将是很漫长的过程。
如果按照一条线一条线建设的方式,如图所示,AI同事和平台同事支持第一个业务时,没有其他业务线的需求进来,按照项目的支持能够快速响应需求,这时的体验是很好的;而对于第二个业务来说,此时由于AI同事和平台同事正在支持第一个业务,第二个业务线的功能就会有所缺失,可以看到图中业务线B的机器人少了一条腿,这时就产生了等待;到第三条业务线,已经进入了需求排期阶段,AI同事和平台同事对该业务线的支持就很有限了;同样的,后续的业务线都将处于等待状态,尽管业务方很生气,可AI同事和平台同事已经疲于奔命。
由此可以看出这种烟囱式机器人研发的缺点:耗时长、成本高。
那么如何才能高效地支持这些需求呢?
以中台化思维来建设智能聊天机器人平台。通过平台化的建设、复用化的思想,使得我们的聊天机器人成为聊天机器人制造工厂。
我们在构建智能聊天机器人平台的过程中,将各个业务线的需求和能力都集成到平台中,提供给不同业务线使用,各业务线都复用这些能力,并且提供数据权限的高度隔离。
最后达到机器人流水式生产,管理功能高度复用,业务用户高速接入,迅速赋能全部领域。
智能聊天机器人平台的设计考量包括以下几个方面。
1)平台化or项目制
既然我们用平台化方式去建设,就必然面临一些问题:平台化的好处是可以复用,事半功倍;缺点是难以兼容个性化。所以我们在平台建设过程中,要同时考虑什么样的功能属于平台、什么样的功能属于租户、什么样的功能属于公司,把公共的功能进行沉淀、把租户的功能进行定制化,这样才能既兼顾平台化的事半功倍,又能满足个性化的需求。
2)中台能力
4)统一闭环
上图所示是智能机器人平台的系统架构。
整个平台是微服务架构,支持容器化,支持使用Conductor模型编排,用MQTT协议以解决APP端网络不稳定的问题。
前文介绍了机器人平台的背景、设计理念和技术架构,接下来介绍机器人平台的核心原理和主要功能点。
智能聊天机器人最核心的部分是对话引擎,对话引擎包括:自动语音识别(ASR)、自然语言理解(NLU)、对话管理(DM)、自然语言生成(NLG) 和文本到语音合成(TTS)。
其中,自然语言理解(NLU)的目标是将文本转换成语义表示,文本中的单词语义并不重要,重要的是文本转化成了语义信息。简单来说,就是将人的语言转化成机器可以理解的结构化的完整的语义,让机器理解人的语言。
我们通常说的NLP自然语言处理其实是一个大的集合,包含了NLU自然语言理解和NLG自然语言生成,并且包含了它生成上面的处理部分和下面的应用阶段,所以NLU和NLG都是NLP的一个子集,它们不是平级的关系。
DM是对话管理系统的大脑,负责更新对话状态。对话引擎的难点在NLU和DM。
总的来说,这些技术都是属于自然语言处理技术(NLP,Natural Language Processing),本质上我们需要使用NLP技术来解决聊天机器人的问题。
对于用户的一个问题,需要将这个自然语言问题通过一个模型(这个模型是我们用机器学习基于大量数据训练和归纳得出来的),转换为机器能理解的数据形式(我们将这种数据形式称之为向量)。
NLP技术除了用于智能聊天机器人以外,还用在很多领域,例如:句法语义分析、信息抽取、文本挖掘、机器翻译、信息检索、对话系统等领域。
转存失败重新上传取消
智能聊天机器人是由多个机器人组成,包括问答机器人、闲聊机器人、任务机器人等,人工后台以及文档库之间协作完成任务,最终选择最优答案返回给用户。
如图所示,用户提一个问题过来:
如果这个问题机器人不能解答,就会转入人工后台,或转到搜索引擎进入文档的搜索检索,最终将最优答案返回。
转存失败重新上传取消
QA机器人的本质是:假设用户提了一个问题Q,QA机器人需要从已有的QA数据库中寻找最合适的QA对返回,QA机器人会进行QQ相似度计算和QA匹配度计算,通过综合相似度与匹配度,找到最适合的一组QA对 (Qi, Ai),即最佳答案返回。
解决方案1:NN模型
常见的网络模型包括RNN和CNN模型。例如双层编码(Decoder)的长短期记忆模型(LSTM)。这种模型在很多场景下都比较好用,网络模型的主要缺点是需要一定数量的样本。
解决方案2:拆分成子问题。
在语料比较小的情况下,将问题进行拆分,分为两个阶段:
它的优点是在语料比较小的情况下效果不错。
转存失败重新上传取消
这里以QQ匹配来介绍QA机器人原理。
QQ匹配包括几个部分:句向量化、相似度计算、相似度排序。
句向量我们是通过词袋模型和同义词扩展来表示的。
什么是词袋模型?词袋模型就是忽略文本里的词序、词法、句法,只将它看做一个词的集合,把它当成一个词袋。
还引入了同义词扩展。在实际的问题中,不同的词可能存在不同的问法,但其语义相同,所以进行一些同义词等价,这样就形成了词向量。向量的值是TF-IDF值,用于表示权重。
TF-IDF模型(term frequency–inverse document frequency,词频与逆向文件频率)。TF-IDF是一种统计方法,用以评估某一字词对于一个文件集或一个语料库的重要程度。TF-IDF的主要思想是,如果某个词或短语在一篇文章中出现的词频高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
TF-IDF有两个值,一个是词频率,另一个是IDF(inverse document frequency,逆向文件频率)。如图中的计算方式。
举个例子,库中10000篇文档,10000篇提到“母牛”,其中10篇提到“产奶量”,比如一篇关于“母牛的产奶量”的文字,这篇文章有100个词,“母牛”出现5次,“产奶量”出现2次)。
通过计算发现,虽然“母牛”的词频率很高,但IDF值很低,最后“母牛”的TF-IDF很低,也就是说这个词不具太大的标识度。而“产奶量”这个词的词频率不高,但它的辨识度很高,最终它的TF-IDF也很高。
转存失败重新上传取消
具体执行过程如图所示,首先拿到一个语句,进行分词、去停用词、去重,得到一个词序列。然后遍历每一个词进行TF-IDF计算,如果在同义词表里,就计算词TF-IDF并求平均值;如果在词库中,就计算TF-IDF值;如果不在词库中,就直接忽略,最后形成词对应的TF-IDF值,并将Value向量单元化。
接下来我们要计算向量和向量之间的距离,这里我们采用余弦距离。计算方式如图所示。
当两个词向量的余弦值接近1的时候,两个词向量相似,也就是两个句子相关。否则就不相关。通过计算余弦值来最终达到判断句子的相似度。
上文介绍的QQ匹配是属于一种基于检索的聊天机器人,另一种对应的分类是基于模型生成的表情机器人。
基于检索的聊天机器人:
生成模型的聊天机器人:
目前的现状是,在商业领域,工业级标准还是会使用基于检索的机器人,适合特定领域内、问题集合有限,还有一些变体,比如知识图谱、基于KG的机器人、基于搜索引擎的机器人。而生成模型的机器人,是学术界研究的重点,在商业领域,它会作为检索式机器人的补充形式,两者结合使用,
转存失败重新上传取消
闲聊机器人主要是进行客观话题讨论,用户对聊天机器人进行一些情感表达,回答问候、情感和娱乐等信息。闲聊处理由两个组件组成:
海量的闲聊语料,可以从在线论坛、微博对话、甚至别的通用机器人爬取,虽然从各个地方爬取,也需要审核,以满足用户需求。
闲聊机器人的要求是:简单闲聊、结果可控、快速开发。所以实现上我们基于AIML构建闲聊机器人。
AIML是由Richard Wallace发明的一种语言。他设计了一个名为 A.L.I.C.E.(Artificial Linguistics Internet Computer Entity 人工语言网计算机实体)的机器人,并获得了多项人工智能大奖。AIML是一种为了匹配模式和确定响应而进行规则定义的XML格式。
AIML的能力很灵活,如图所示,可以基于模板匹配、任意字符匹配、元素提取、一个问题多个答案、划分主题等。
AIML来作为知识载体的好处是灵活、人性化强。缺点是在知识的编写方面门槛高,比如闲聊库的扩充方面的问题等。
好在有现成的AIML编辑软件,如:SimpleAIMLEditor,GaitoBotAIMLEditor等。
AIML语言的规范也在不断升级,最新版本AIML2.0。
任务机器人(Task-Bot) 的关键技术是基于意图识别与语义槽提取。 举个例子,A说“帮我订一个今天下午3点到4点的会议室吧?要大一点的。”机器人识别出来这是一个任务,而这个任务要完成必须三个语义槽:时间、地点、大小。
经过分析发现A的任务请求中缺乏一个语义槽-地点,于是触发机器人反问“请问您要预订哪个职场的会议室?”,A补充了地点后,机器人联动会议预定系统,进行会议室预定,完成任务并反馈结果给A。
这个过程涉及了:意图识别、关键参数提取、多轮对话&对话管理、配置化、对接外部系统。
以上图的一个实际例子来看,这个例子是根据身份证号查询归属地。
场景机器人可以说是任务机器人更高级的版本,它是基于预置规则驱动完成场景任务。
上图示例中,销售人员G想查客户李国强的信息,机器人给出相应信息后,根据预设的场景,触发后台配置的一个业务推荐流程,根据这个流程,销售人员可以获得适合李国强客户的产品推荐、了解相关产品情况、进行话术演练等,本来只是一个聊天过程,跳转到特定的场景以及业务相关的联动,这就是场景机器人。场景机器人的场景和相关业务跳转都是可以配置的,这样可以达到动态化地支持不同的场景。
场景机器人与场景绑定、结合场景相关话术和跳转规则,可以做:客户画像查询、产品信息查看、场景演练、面见话术等,还可以进行交叉销售、客户关联查询。
KG机器人,即知识图谱机器人,本质上是一种语义网络,其结点代表实体或者概念,边代表实体、概念之间的各种语义关系。KG机器人是基于知识图谱推理给出结果,也是基于检索型机器人的一种。
相较于纯文本,知识图谱在问答系统中具有以下优势。
这些优势都促使我们在构建智能聊天机器人平台时使用知识图谱来作为问答系统的知识来源。
举个例子,这是保险的知识图谱,包含了:查询实体属性-平安境内旅行险一个月多少钱?查询关系以及属性-能保骨折,且承保时间在5年以上的保险有哪些?查询简单关系-平安境内旅行险能保意外骨折吗?查询复杂关系-想买一个能保骨折,并且能够在海口市的三甲医院报销的保险。
这些本质上都是在进行图查询,查询实体的属性,查询实体和实体之间的关系等。
知识图谱机器人构建过程中:
当用户问问题时候,把问句转化成图计算,机器人通过知识图谱进行查询计算,并转化为答案反馈给用户。
除了上述各种机器人之外,聊天机器人平台还涉及到模型编排和模型管理的部分。比如有的业务只需要QA机器人,这时通过预处理,调用QA机器人,经过角色权限过滤就可以提供服务了。有的场景可能需要多种机器人进行合作,这就涉及到路由/群发,群发机器人的结果还要进行融合合并。
模型编排,将不同的模型进行组合,以可视化的方式对调用的模型顺序进行编排,支持拖拽式配置。
转存失败重新上传取消
模型本身是需要服务化的。我们的实际模型本身是一些python服务,我们将这些python服务进行封装,进行服务的统一管理,这样的话就可以对模型定义统一的接口,还可以进行自动化的更新,比如通过定时模型训练去更新此模型,其他模型不受影响,如上图所示的模型手动更新和自动更新。同时我们可以进行单元测试和链路测试。
转存失败重新上传取消
目前平台已能够支持:
聊天机器人平台主要功能包括以下几个方面。
1)机器人前台
转存失败重新上传取消
机器人预置了web交互页面,支持机器人全部的功能。包括对话、留言反馈、转人工、查看历史消息;可直接嵌入PC端和APP端业务系统等。
在上图的例子中可以看到,前面部分是我们的常见问题列表,用户问了一个问题,然后找到一个匹配该问题的答案。如果用户给出的问题比较简单,如上图,只给出“宜人贷”,就没办法命中一个独立的问题,这时除了匹配答案以外,还会给出一些与该问题相关联的问题,这种我们称之为关联问题。也可以转到搜索引擎,通过搜素引擎的相关问题。
实际上,对于检索模型的聊天机器人而言,当FAQ中没有合适的答案,我们返回的是FAQ中与问句最相近问句-答案对中的问句,而不是答案,这样可以从用户提问中得到更多信息,以便返回更真实的答案。我们在实践中发现,用户通过这样的关联,只需要几次点击就能找到真正想要的答案,其满意度会得到提升。
2)知识库
这是机器人的知识库,知识库包含了一些分类信息,支持相应的数据角色、文档的数据颜色格式,还包含浏览编辑、全文检索、问题分类、批量上传、语料生成、水印生成等功能。
3)人工后台
这是机器人的人工后台。人工后台上线后,用户可以跟人工后台的客服人员聊天,在这个过程中也可以上传图片。与机器人问答不同的是,机器人模式中用户只能发文字,而与客服人员聊天,可以上传文档、插入表情、请求评价等。在这里还可以做快捷回复、查看知识库、文档库、客户本身的信息,还有一些智能回答。
这是客服工作台的功能,可以从队列里调出相应的客户进行会话,解决不了的问题可以转交给别的工作台的客服解答。
4)会话管理
转存失败重新上传取消
接着来看会话管理。上图左边是这个人对应的历史聊天信息,我们可以检索并定位到他认为回答不好的问题,进行在线快速补充添加新问题。每一个问题的评分都会显示,既能帮助算法同事,也能帮助运营同事进行在线信息维护。
5)统计分析
转存失败重新上传取消
机器人平台还提供数据统计和分析功能,这一功能是基于Davinci数据可视化工具完成的,可以自定义数据指标,比如机器人服务时长、服务执行度等。还可以进行报表统计:会话统计、文档QA统计,人工后台服务分析、用户提问句云、活跃度排名、用户积分、用户行为覆盖、使用明细。
6)模型管理
转存失败重新上传取消
机器人平台还提供通用化模型运行托管平台,它是一个高可用运行架构,可以进行模型封装、发布、启停、更新管理,还包括自动数据更新机制、统一服务访问接口等。
7)多租户和角色权限
转存失败重新上传取消
机器人平台提供多租户和角色权限管理的功能,并且在公司里提供用户的自动导入,通过配置相应的角色和权限,自动导入成机器人的用户角色权限。这样一来,就不用维护用户本身了,可以跟不同的业务系统直接对接。
机器人平台的其他功能,诸如任务配置、闲聊配置、积分管理、对接外部系统等功能此处不一一展开。
转存失败重新上传取消
如图所示为智能聊天机器人平台的发展阶段,我们已经完全了前面阶段的机器人功能建设,包括问答、人工后台等。目前我们处于第三阶段向第四阶段演进的过程,最终我们希望达到业务领域系统性CUI整合,即通过机器人会话,以场景式机器人的方式展示给客户,成为机器人助理。
智能客服机器人的初衷是解决客服管理部的痛点。
宜信有很多线下门店,这些门店中的销售人员有大量的问题,涉及到政策、法规、流程、管理等众多方面,这些问题都会通过内部沟通工具蜜蜂或邮件集中到客服管理部来解答。
引入智能客服机器人以后,80%的问题被机器人拦截,剩下的20%转到人工后台,减轻了客服管理人员的压力。
智能客服机器人目前服务于所有一线的客服同事,成为客服管理重要的日常工具。客服人员只需要通过手机就可以操作,实现了运营管理智能化从0到1的过程,帮助运营人员减轻压力,提升运营效率。
财富销售过程中涉及到很多产品(基金、保险等),需要了解产品知识、政策法规、销售话术等。同事希望能有一个知识型的助手,协助解答在销售过程中遇到的诸多知识盲点,提高专业度。
我们计划使用聊天机器人小助手与现有手机app结合,实现产品、客户、知识一站式服务。
如上图所示,财富智能助手并不是直接调用机器人平台,而是通过API方式调用机器人平台,然后去询问各种支持销售的问题。
目前财富智能助手机器人覆盖所有一线销售和业务支持人员,解决投前、投中、投后、销售政策等问题,提高了业务专业度、响应速度,提升业务拓展效率。
转存失败重新上传取消
第三个场景是保险智能机器人。微信用户存在大量相关问题咨询,使用人员来回答的话疲于应付,回答也不专业,人力成本很高,希望通过机器人对售前类问题提供咨询服务,代替人工,完成售前信息交互,大幅减少人员成本,提高回答准确的和精准度。
如图所示,保险智能机器人基于第三方知识库提供查询:包括保险类术语查询、疾病库查询、险种查询、医院库等保险知识大全;基于知识图谱和推理的1~3度内查询等,例如:条款明细请问这款产品有犹豫期吗?我孩子5岁可以买这款产品吗?重疾险都包那些疾病?还可以做常见售前售后意图判断、保险费用预计算。
最后一个场景是AIOps智能运维机器人,AIOps是一个很大的话题,涉及到海量数据的存储、分析和处理。数据包括:历史数据、流数据、日志数据、时序数据、异常数据等。整个系统由许多小工具集成成为一个大系统。AIOps还包含自动模式发现和预测、异常检查、根因分析等需要模型支持等方面。
这里我们主要关注入口:文本输入。
在日常运维中,当出现异常时,运维同事收到手机、邮件或短信报警,希望通过手机APP,以自然语言方式查看获得当前系统状态、随时随地了解当前系统,甚至可以通过运维执行命令来解除故障。
比如可以通过手机APP调用任务机器人去查询后台系统中网络占用的一个时序图,把这个图以报表的方式返回到前端。使用机器人可以有效降低信息过载问题,调用相关接口,直接找到目前最重要的问题并返回。当发现系统出现故障时,可以通过机器人发送命令,重启服务解除故障。
Q1:语音外呼机器人如何用数据驱动做话术质量评估?比如:要定位哪些话术节点高频发生客户无回应、打断或投诉等,但机器人语音播报里是含多个变量参数的,而且文本会话存储是按ASR识别音转文的,和配置机器人时的固定话术格式不一样,这样一来导致句子量级非常庞大,这种如何统计呢?
A:语音外呼机器人其实是一个统称,一般来说会具体到一个领域,并且和特定场景相结合。比如:电销促销机器人、售后快递送货机器人、语音催收机器人等。
以售后快递送货机器人为例,机器人通过语音电话通知客户,将快递送到家或者指定快递柜等。
在这种特定场景里,主要是要进行话术编排,费时间的也是在话术编排上,需要充分结合业务场景特点,由机器人向客户发问,对客户可能回答的方式进行归类(与具体业务方一起根据现有人工话术可能的回答进行分类)和统计,这样就方便对无回应、投诉等话术进行评估了。
最终用户的回答都会被引导到有限的话术逻辑中,从而达到电话外呼的目的。句子量级庞大,但话术是有限的,不会特别巨大(我们目前场景中的话术都是和业务方一起合作总结的)。
另外,这种场景机器人的配置页面与分享中提到的任务机器人还不完全一样,有其单独的话术编排配置。
Q2:老师提到使用similarity的chatbot,请问这样的chatbot只是做intent识别吗,对于slots的填充是怎样处理的呢?
A:基于相似度的模型用于问答和闲聊机器人。任务机器人的处理基于专门的意图识别模型和实体识别模型来做。
意图识别模型,由于我们要做的是通用化、自助化、弹性化,所以设计了一个轻量级的自训练意图识别框架,基于用户提出的少量语料,通过句子成分分析提取特征,并对特征进行分析而成,其中主要涉及到语言学知识,少量统计学习方法,优点是自训练需求算力很少、解释性强、准确率高、用户完全可以随意添加各类新的任务。
槽值提取基于NER和意图识别中的句子成分分析开展。NER自带通用的时间、地点、人名、组织等实体识别,通用实体由于语料充足,其识别利用了ML、DNN等模型。此外考虑到专业领域里的专有槽值实体(例如合同号、公司内部部门名称、员工编号等等),我们允许用户自行配置列表实体、正则实体等。
Q3:第二种使用模型对intent和slots识别,请问里面的slots识别是character-level的还是word-level的?如果是word-level的,怎样处理cut-word不准带来的问题?
A:槽值中通用实体的识别基于word-level,专有的实体识别比较复杂,常见的情景中如果是列表实体,那么我们在分词阶段已经将列表实体名称加入分词表;正则实体直接做正则匹配。
之所以采用这种NER方式,主要就是降低用户每次新建任务、实体后模型框架自训练的开销,使其可以迅速动态加载新的意图识别和槽值提取task。
Q4:第一个机器人从开发到上线用了六个月,机器人平台开发用了多久呢?
A:因为是按照平台化的思维去建设,实际上第一个机器人开发的时候,机器人的模型部分和机器人平台是同步进行的,团队成员包括算法同事和平台研发同事,以两周一个小版本的速度,在与第一个客户一直保持密切交流的情况下,随时改善用户体验,总共花了6个月的时间,第一版的机器人模型和平台同时完成。
第一版主要包含QA机器人、QA库管理、文档库管理、会话管理、模型自动更新等主要功能。闲聊机器人、任务机器人等都是后面版本迭代增加的。
其实机器人模型、QA库不断完善、模型自动更新、问题反馈、统计报表等都是一个统一的整体。单纯只重视任何一方面,例如只重视算法模型,忽略特定业务场景的语料,忽略运营的支持,都会导致机器人不好用,体验差。在实际运营中,算法、平台和运营都需要形成闭环,进行有效沟通。这样才能把平台和机器人建设得更好用。
附Java/C/C++/机器学习/算法与数据结构/前端/安卓/Python/程序员必读/书籍书单大全:
(点击右侧 即可打开个人博客内有干货):技术干货小栈
=====>>①【Java大牛带你入门到进阶之路】<<====
=====>>②【算法数据结构+acm大牛带你入门到进阶之路】<<===
=====>>③【数据库大牛带你入门到进阶之路】<<=====
=====>>④【Web前端大牛带你入门到进阶之路】<<====
=====>>⑤【机器学习和python大牛带你入门到进阶之路】<<====
=====>>⑥【架构师大牛带你入门到进阶之路】<<=====
=====>>⑦【C++大牛带你入门到进阶之路】<<====
=====>>⑧【ios大牛带你入门到进阶之路】<<====
=====>>⑨【Web安全大牛带你入门到进阶之路】<<=====
=====>>⑩【Linux和操作系统大牛带你入门到进阶之路】<<=====天下没有不劳而获的果实,望各位年轻的朋友,想学技术的朋友,在决心扎入技术道路的路上披荆斩棘,把书弄懂了,再去敲代码,把原理弄懂了,再去实践,将会带给你的人生,你的工作,你的未来一个美梦。