[关闭]
@Rays 2018-01-23T21:06:28.000000Z 字数 3672 阅读 2579

阿里小蜜:提供创新电子商务体验的智能助理

论文导读


摘要: 在本文中,阿里团队介绍了会话机器人平台“阿里小蜜”。该智能助理设计提供一种创新性的电子商务体验,并已经在真实的商业场景中上线。当前,阿里小蜜为客户提供帮助服务、客户服务和聊天服务,日处理上百万的客户问题。

论文标题: AliMe Assist: An Intelligent Assistant for Creating an Innovative E-commerce Experience,CIKM 2017 Demo。

作者: Feng-Lin Li,Minghui Qiu,Haiqing Chen等

编译: 盖磊

正文:

近几年,基于问答系统的智能助理备受关注。这一方面得益于以深度学习为代表的人工智能技术的发展,另一方面是源自于现实世界的需求。

客户服务是智能助理能大展身手的一个重要领域。随着电子商务的迅速发展,对客服提出了强烈的需求。同时,用户也越来越注重购物的体验和服务的质量。传统客服所存在的问题愈发突出,例如,人工客服存在工作时间问题,由于服务能力不足而存在客户长时间等待,无法应对服务的突发增长(例如“双11购物狂欢节”)等。

为解决这些问题,阿里经过多年工作,推出了智能助理“阿里小蜜”,将人工客服从一些基本的、常见的和重复性的工作中解放出来,真正地聚焦于的确需要人工参与的客服交流中。阿里小蜜提供三种服务:帮助服务、客户服务和聊天服务。它可以接受语音和文本输入,集成了机器人问答场景,并可进行多轮交互。目前,它每日完成数百万次以中文为主的客户问答。本文将介绍阿里小蜜的底层实现技术,并分享其在电子商务领域的一些真实问答场景。论文的主要贡献包括:

  1. 小蜜实现了一种应用于真实商业场景中的智能助理,为客户提供了电子商务场景中的帮助服务、客户服务和聊天服务。
  2. 使用CNN模型判定客户意图。
  3. 在客户服务中使用了基于语义规范化和知识图谱的方法,实现了面向知识的客户问答。
  4. 在聊天服务中使用了一种混合了信息检索和Attentive Seq2Seq生成模型的方法,优化了两种模型的联合输出。

相关工作

问答系统可分为面向任务、面向知识和面向聊天三类。

面向任务的问答系统是一种闭域应用,通常使用基于规则的或基于模板的方法,并采用对话状态跟踪技术。小蜜在帮助服务中所使用的槽位填充方法,就是一种基于模板的方法。

面向知识的问答系统可用于闭域和开放域,通常使用以数据为驱动的信息检索模型。该类方法基于从问答知识库中查找与提问问题最匹配的知识。一份最新的研究工作尝试使用基于神经网络的方法实现问题间的匹配。我们使用了一种完全不同的方法,即基于知识图谱与信息检索的方法。检索知识图谱可给出高准确率的问答,并以信息检索为补充。

基于聊天的问答系统常用于开放域,使用方法包括信息检索和生成模型。我们的方法弥补了单独使用信息检索和Seq2Seq生成模型的不足之处。前者只能处理与知识库中已有知识类似的问题,而后者可能会生成完全不一致的解答。最近有研究工作提出使用信息检索模型做检索,并对所生成解答做重新排序(rerank)。我们工作的独到之处在于使用了Attentive Seq2Seq模式做rerank,优化由信息检索和生生模型联合给出的结果。

系统结构

阿里小蜜的整体结构如图1所示。输入层支持来自于手机、电脑等多种终端设备的语音和文本输入。在输入层之上是意图识别层。该层识别用户输入,并分发给不同的处理模块。第三层包括了各类问题的处理模块。处理模块从历史数据问答对和知识图谱中检索答案。

阿里小蜜的处理流程如图2所示。当用户输入了问题Q后,Q进入商业规则解析模块。解析模块采用基于Trie的模式匹配。如果Q匹配了某个模式,那么将进行如下判定:如果Q是类似于订机票这样的请求任务,那么Q将会被分发给槽位填充引擎;如果Q是询问促销等情况,那么引擎会从系统预制的解答中检索回复;如果Q请求的是人工客服,那么问题就会转给真实的客服人员;如果Q没有匹配任何模式,那么Q就会被分发给意图识别模块做分类,再提交给基于Trie的语义分析模块。如果语义分析模块能在Q中识别到语义标签(即知识图谱中的实体),那么小蜜会将Q作为一个商业相关问题,使用知识图谱引擎做检索,以检索结果补充问题的内容,并重新提交语义分析。如果这时依然无法发现任何有意义的信息,那么小蜜将会采取继续向用户提问的策略,直到问题可被识别,然后再提交聊天引擎,开展机器人对话。

意图识别

小蜜将客户意图分为三大类:需求帮助类、咨询类和聊天类。在每一类中还做了更具体的细分。商业规则分析模块和意图分类模块共同用于识别每个客户问题的意图。商业规则分析模块使用了频繁项挖掘和基于Trie的模式匹配技术,构建出数十万个模式。意图分类模块使用CNN构建,其结构如图3所示。

意图模型的输入是Q中每个单词的嵌入向量,以及从当前问题和前面的问题中识别到的语义标签。词嵌入向量采用FastText预先训练,并使用CNN模型做进一步调优。

为测试意图识别的分类效果,论文使用了具有40种意图场景的测试数据,数据由67797个带语义标签的实例组成,其中47455个实例用于训练,20342个实例用于测试。实验结果表明,文中提出的CNN模型实现了89.91%的准确率,比未使用CNN的方法提高了0.91%。两个模型都比组合使用SVM和最大熵的基线方法取得了更高的准确率,后者的准确率是82.71%。

团队并未选用RNN(例如LSTM),而是使用了一层卷积池化CNN模型。这是因为CNN也能捕获文本前后的词场景信息,并可在小蜜的应用场景中取得足够好的结果。其次,CNN更为高效。在实际商业应用中可以支持约200 QPS(每秒查询数)。尽管更多层的RNN会取得更好的效果,但是层数越多,可扩展性越不好。

任务助理

在完成一些特定的任务时,助理通常需要客户提供多个属性(或槽位)的信息。例如,如果客户要订一张机票,需要向客服提供起飞时间、目的地和出发日期等信息。小蜜的解决方案是首先指定必须的信息,然后使用填充槽位的方法抽取客户输入,填充预定义槽位中的内容。槽位填充引擎主要使用了字典和模式,它可以识别十五种类型的属性。阿里小蜜会提示用户输入更多信息,并可以从第三方服务中获取必要的属性。

面向知识的客户服务

用户希望能从客服助理获得尽可能精准的交互。为此,小蜜采用知识图谱提供面向知识的客户服务。知识图谱的基本构件是实体和关系。论文工作中,首先使用分词、POS和TF-IDF过滤从自然语言文本中抽取到的基本动词和名词,基于这些抽取信息使用互信息构建实体。然后,团队引入了一些商业专家,对抽取到的实体和关系做人工审核。生成知识图片以层次结构存储在Neo4j中,并使用Neo4j作为知识的查询引擎。目前,Neo4j引擎中已经存储了数千个实体及相应的关系集,并支持一到两跳的推理。

语义规范化(semantic normalization)就是将不同类型的表达(utterance)转换为知识图谱中语义等价的实体。实践中,由于客户的问题是高度多样化的,因此语义规范化非常重要。小蜜采用表达多样化和模式匹配解决了这个难题。小蜜首先识别一组表达多样化的知识项,然后从客户与客服人员的历史聊天记录中找出类似的回答。相似性计算的算法基于语句嵌入设计,并使用MapReduce实现,用于捕获语义相似性。一旦得到了知识项与一组多样化表达间的映射关系,就可以使用频繁项抽取实体的单词模式。这些模式进而可用于基于Trie的语义分析模块,识别每个用户问题的语义标签。

与传统的信息检索方式相比,基于知识图谱的方式可提高正确率10%。考虑到知识图谱只覆盖了一些常被问及的知识项,因此还采用信息检索作为 补充,意在提高召回率。

聊天服务

尽管在阿里小蜜应用中,大部分的对话都是商业相关的,但还有5%的聊天内容。为提供更好的用户体验,小蜜中构建了开放域聊天引擎。团队提出了一种混合方法,使用Attentive Seq2Seq模型优化联合使用IR模型和Seq2Seq生成模型所给出的结果。

方法的整体结构图如图5所示。小蜜首先使用检索模型,得到候选的解答。然后,使用了Attentive Seq2Seq模型对候选者做rerank,赋予每个候选者一个置信度分值。如果置信度分值超出给定阈值,那么选用分值最高的候选者作为答案。如果分值均低于阈值,那么使用Seq2Seq模型生成的解答作为输出。

展示情况

当前,阿里小蜜已经上线,每日服务于数百万客户,并可自动处理85%的客服会话。图6分别展示了助理服务、客户服务和聊天服务这三个关键服务的实际应用场景。

译者注:论文获得CIKM 2017的Best Demo Award(最佳演示奖)。

展望

未来,小蜜考虑会做进一步的改进。包括:强化基于场景的多轮交互,基于增强学习为网购提供导购,采用图象识别技术实现读图能力。

查看英文原文: AliMe Assist: An Intelligent Assistant for Creating an Innovative E-commerce Experience

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注