深度文本匹配在智能客服中的应用
参加2018 AI开发者大会,请点击↑↑↑
作者 | 云知声
目录
一. 深度文本匹配的简介
1. 文本匹配的价值
2. 深度文本匹配的优势
3. 深度文本匹配的发展路线
二. 智能客服的简介
1. 智能客服的应用背景
2. 智能客服的核心模块
FAQ 库的构建
语义召回
相似度模型
模型更新
三. 深度文本匹配在智能客服中的应用
1. 为什么使用深度文本匹配
2. 怎么样使用深度文本匹配
深度文本匹配模型
文本匹配引擎
3. 深度智能客服的效果评测
四. 参考
▌一、深度文本匹配的简介
1. 文本匹配的价值
文本匹配是自然语言理解中的一个核心问题,它可以应用于大量的自然语言处理任务中,例如信息检索、问答系统、复述问题、对话系统、机器翻译等等。这些自然语言处理任务在很大程度上都可以抽象成文本匹配问题,比如信息检索可以归结为搜索词和文档资源的匹配,问答系统可以归结为问题和候选答案的匹配,复述问题可以归结为两个同义句的匹配,对话系统可以归结为前一句对话和回复的匹配,机器翻译则可以归结为两种语言的匹配。
2. 深度文本匹配的优势
传统的文本匹配技术如图1中的 BoW、TFIDF、VSM等算法,主要解决词汇层面的匹配问题,而实际上基于词汇重合度的匹配算法存在着词义局限、结构局限和知识局限等问题。
词义局限:的士和出租车虽然字面上不相似,但实为同一种交通工具;而苹果在不同的语境下表示的东西不同,或为水果或为公司;
结构局限:机器学习和学习机器虽词汇完全重合,但表达的意思不同;
知识局限:秦始皇打 Dota,这句话虽从词法和句法上看均没问题,但结合知识看这句话是不对的。
传统的文本匹配模型需要基于大量的人工定义和抽取的特征,而这些特征总是根据特定的任务(信息检索或者自动问答)人工设计的,因此传统模型在一个任务上表现很好的特征很难用到其他文本匹配任务上。而深度学习方法可以自动从原始数据中抽取特征,省去了大量人工设计特征的开销。首先特征的抽取过程是模型的一部分,根据训练数据的不同,可以方便适配到各种文本匹配的任务当中;其次,深度文本匹配模型结合上词向量的技术,更好地解决了词义局限问题;最后得益于神经网络的层次化特性,深度文本匹配模型也能较好地建模短语匹配的结构性和文本匹配的层次性[1]。
3. 深度文本匹配的发展路线
图 1 深度文本匹配的发展路线
随着深度学习在计算机视觉、语音识别和推荐系统领域中的成功运用,近年来有很多研究致力于将深度神经网络模型应用于自然语言处理任务,以降低特征工程的成本。最早将深度学习应用于文本匹配的是微软 Redmond 研究院。2013年微软 Redmond 研究院发表了 DSSM [2],当时 DSSM 在真实数据集上的效果超过了SOTA(State of the Art);为了弥补 DSSM 会丢失上下文的问题,2014年微软又设计了CDSSM [3];2016年又相继发表了 DSSM-LSTM, MV-DSSM。微软的 DSSM 及相关系列模型是深度文本匹配模型中比较有影响力的,据了解百度、微信和阿里的搜索场景中都有使用。
其他比较有影响的模型有:2014年华为诺亚方舟实验室提出的 ARC-I和ARC-II [4],2015年斯坦福的 Tree-LSTM [5],2016年 IBM 的 ABCNN [6],中科院的 MatchPyramid [7],2017年朱晓丹的 ESIM[8],2018 年腾讯 MIG 的多信道信息交叉模型 MIX [9]。
一般来说,深度文本匹配模型分为两种类型,表示型和交互型。表示型模型更侧重对表示层的构建,它会在表示层将文本转换成唯一的一个整体表示向量。典型的网络结构有 DSSM、CDSMM 和 ARC-I。这种模型的核心问题是得到的句子表示失去语义焦点,容易发生语义偏移,词的上下文重要性难以衡量。交互型模型摒弃后匹配的思路,假设全局的匹配度依赖于局部的匹配度,在输入层就进行词语间的先匹配,并将匹配的结果作为灰度图进行后续的建模。典型的网络结构有 ARC-II、DeepMatch 和 MatchPyramid。它的优势是可以很好的把握语义焦点,对上下文重要性合理建模。由于模型效果显著,业界都在逐渐尝试交互型的方法。
图 2 深度文本匹配模型的类型
▌二、智能客服的简介
1. 智能客服的应用背景
由于人工客服在响应时间、服务时间和业务知识等方面的局限性,有必要研发智能客服系统,使其通过智能化的手段来辅助人工客服为用户服务。智能客服与人工客服的优劣势对比如图 4 所示。
图 3 智能客服与人工客服的优劣势对比
2. 智能客服的核心模块
智能客服的一般框架如图 5 所示:当有 Query 请求时,首先对 Query 进行补全、解析和需求理解;其次,问题召回模块通过精准召回、核心召回和语义召回从 FAQ 库召回与 Query 相关的问题;接着,问题排序模块通过 CTR 模型和相似度模型对召回的问题进行排序,选出 Top k 返回给用户;最后,反馈系统记录用户的点击行为等,对模型进行更新。具体哪些模型会被更新,与语义召回和相似度模型阶段使用的算法有关。
图 4 智能客服的一般框架
在智能客服的框架中,最重要的模块是 FAQ 库的构建、语义召回、相似度模型和模型更新,它们性能的好坏对用户的使用体验有很大影响。
FAQ 库的构建
对于重视用户体验的客服系统来说,FAQ 库的构建是非常严格的,它的内容需要非常完整和标准,不能像聊天机器人那样可以插科打诨。一般的做法是将积累的 FAQ ,或是将场景相关的设计文档、PRD文档中的相应内容整理成 FAQ,添加到 FAQ 库中。日常的维护就是运营人员根据线上用户的提问做总结,把相应的问题和答案加入 FAQ 库。不难想像,随着用户量的增加,用户的问题种类五花八门,问法多种多样,这种维护方式肯定会给运营带来很大的压力,也会给用户带来糟糕的体验。那么,有没有什么自动或是半自动的方法可以解决新问题的挖掘和 FAQ 库的更新?
一种理想的 FAQ 库构建的流程应该是:从客服的直接对话出发,提取出与产品相关的问题,计算问题之间的距离,通过增量聚类的方法把用户相似的问题聚到一起,最后由运营人员判断新增的问题能否进入 FAQ 库,同时将他们的反馈更新给文本匹配模型。
图 5 理想的FAQ 库构建的流程
语义召回
当 FAQ 库达到一定规模时,再让用户请求的 Query 与 FAQ 库中的问题一一计算相似度是非常耗时的,而问题召回模块可以通过某些算法只召回与请求 Query 相关的问题,减少问题相似度模型阶段的复杂度。精准召回和核心召回是基于词汇重合度的检索方法,它们的局限是不能召回那些 FAQ 库中与请求 Query 无词汇重合,但语义表达是一样的问题,而语义召回可以解决此类问题。
相似度模型
相似度模型分别计算召回的相关问题与请求 Query 之间的相似度,作为排序模型的特征之一。需要注意,此处的相似度模型不同于语义召回中的相似度计算,前者更靠近输出端,对准确率要求高;后者对召回率要求高。因此,这两个模块在实现时使用的模型往往不同,在我们的文本匹配引擎中,语义召回使用的是基于表示型的深度文本匹配模型,相似度模型使用的是基于交互型的深度文本匹配模型和其他传统文本匹配模型的混合模型。
模型更新
智能客服投入线上使用后,用户 query 可能与某些模型的训练数据分布不一致,导致智能客服的响应不理想。因此,十分有必要从收集到的用户行为数据中挖掘相关知识,并更新相关模型。
▌三、深度文本匹配在智能客服中的应用
1. 为什么使用深度文本匹配
问题聚类、语义召回和相似度模型都可以归结为文本匹配问题。传统智能客服在这些模块中使用的是传统文本匹配方法,不可避免地会遇到词义局限、结构局限和知识局限等问题;加上传统文本匹配方法多是无监督的学习方法,那么由这些方法训练的模型就无法利用运营人员的反馈和用户的点击行为等知识。然而,使用深度文本匹配的方法则可以有效地解决这些弊端。具体改进方面如图 6 所示。
图 6 深度文本匹配对传统智能客服的改进
2. 怎么样使用深度文本匹配
我们曾在智能客服的不同领域中尝试过多种深度文本匹配方法,通过业务场景推动技术演进的方式,逐淅形成了一套成熟的文本匹配引擎。我们的文本匹配引擎除了使用传统的机器学习模型(如话题匹配模型、词匹配模型、VSM等)外,还使用了基于表示型和基于交互型的深度文本匹配模型。
深度文本匹配模型
Representation-based Model
表示型的深度文本匹配模型能抽出句子主成分,将文本序列转换为向量,因此,在问题聚类模块,我们使用表示型的深度文本匹配模型对挖掘的问题和 FAQ 库的问题做预处理,方便后续增量聚类模块的计算;在语义召回模块,我们使用表示型的深度文本匹配模型对 FAQ 库的问题做向量化处理,并建立索引,方便问题召回模块增加对用户 query 的召回。另外,我们使用基于 Bi-LSTM 的表示型模型以捕获句子内的长依赖关系。模型结构如图 7 所示。
图 7 基于 Bi-LSTM 的表示型模型
Iteraction-based Model
我们在相似度模型模块使用了基于交互型的深度文本匹配模型 MatchPyramid,其原因有三点:
第一点,表示型的深度文本匹配模型对句子表示时容易失去语义焦点和发生语义偏移,而交互型的深度文本匹配模型不存在这种问题,它能很好地把握语义焦点,对上下文重要性进行合理建模。
第二点,在语义召回阶段,用户 query 与召回问题间的语义相似度会作为排序模型的特征之一,同样地,相似度模型阶段,用户 query 与召回问题间的另一种语义相似度也会作为排序模型的特征之一。
第三点,相似度模型需要实时计算,用户每请求一次,相似度模型就需要计算 n 个句对的相似度,n 是问题召回的个数。而序列型的神经网络不能并行计算,因此我们选择了网络结构是 CNN 的 MatchPyramid 模型。模型结构如图 8 所示。
图 8 An overview of MatchPyramid on Text Matching
文本匹配引擎
由于自然语言的多样性,文本匹配问题不是某个单一模型就能解决的,它涉及到的是算法框架的问题。每个模型都有独到之处,如何利用不同模型的优点去做集成,是任何文本匹配引擎都需要解决的问题。我们的文本匹配引擎融合了传统文本匹配模型和深度文本匹配模型,具体的框架如图 9 所示。
图 9 文本匹配引擎的框架
3. 深度智能客服的效果评测
应用上述的文本匹配引擎后,我们为某汽车公司开发的智能客服系统,在测试集上的 precision 达到了 97%;与某寿险公司合作完成的智能客服,其 precision 比 baseline 高出 10 个点。除此之外,在对话系统的音乐领域中,使用深度文本匹配引擎替代模糊匹配后,整体 precision 提高了 10 个点;在通用领域的测试集上,我们的文本匹配引擎也与百度的 SimNet 表现不相上下。
四、参考
1. 庞亮,兰艳艳,徐君等. 深度文本匹配综述. 计算机学报. 2017, 40(4):985-1000.
2. Po-Sen Huang, Xiaodong He, Jianfeng Gao, et al. Learning Deep Structured Semantic Models for Web Search using Clickthrough Data. 2013, In CIKM.
3. Yelong Shen, Xiaodong He, Jianfeng Gao, et al. A Latent Semantic Model with Convolutional-Pooling Structure for Information Retrieval. 2014, In CIKM.
4. Baotian Hu, Zhengdong Lu, Hang Li, et al. Convolutional Neural Network Architectures for Matching Natural Language Sentences. 2014, In NIPS.
5. Kai Sheng Tai, Richard Socher, Christopher D. Manning. Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks. 2015.
6. Wenpeng Yin, Hinrich Schutze, Bing Xiang, et al. ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs. 2016.
7. Liang Pang, Yanyan Lan, Jiafeng Guo, et al. Text Matching as Image Recognition. 2016.
8. Qian Chen, Xiaodan Zhu, Zhenhua Liu, et al. 2017.
9. [Haolan Chen, Di Niu, Dong Liu, et al. MIX: Multi-Channel Information Crossing for Text Matching. 2018, In KDD.
2018 AI开发者大会
◆
只讲技术,拒绝空谈
◆
2018 AI开发者大会是一场由中美人工智能技术高手联袂打造的AI技术与产业的年度盛会!是一场以技术落地为导向的干货会议!大会设置了10场技术专题论坛,力邀15+硅谷实力讲师团和80+AI领军企业技术核心人物,多位一线经验大咖带你将AI从云端落地。
大会日程以及嘉宾议题请查看下方海报
(点击查看大图)
点击「阅读原文」,查看1024专属福利。2018 AI开发者大会——摆脱焦虑,拥抱技术前沿。
相关文章:

计算机辅助焊接过程控制,重型车辆计算机辅助焊接工艺自动设计系统.pdf
金属学与金属工艺维普资讯第26卷 第10期 焊 接 学 报 v。1.26 N。.102005年 10月 TRANSACTIONSOFTHECHINAWELDINGINSTITUTION October 2005重型车辆计算机辅助焊接工艺 自动设计系统王克鸿, 韩 杰, 李 帅 王佳军(南京理工大学 材料…

Linux--文件管理以及权限的修改
一、文件属性查看ls -l filename 目录属性的大小(文件名的字符总和)-|rw-r--r--.|1| root| root| 46 |Oct 1 05:03 |filename— ————————— — ———— ———— —— ———————————— ———————— 1 …

Linux 之父归来!
参加2018 AI开发者大会,请点击↑↑↑作者 | 屠敏来源 | CSDN去修身养性的 Linux 之父 Linus Torvalds 在时隔一个余月后笑着归来,从曾临时接手 Linux 4.19 开发的稳定版维护者 Greg Kroah-Hartman 手中再次接过 Linux 内核开发的交接棒。这位向来天不怕地…

vscode断开调试服务器文件,vscode显示等待调试器断开连接
我正在尝试在vscode上调试量角器脚本。我编辑了launch.json文件,但是调试控制台抛出了下面的错误。vscode调试控制台输出:C:\Program Files\nodejs\node.exe --inspect-brk45448 conf.js C:\Users\abc\AppData\Roaming\npm\node_modules\protractor\example/conf.jsDebugger li…

深入理解Spring系列之六:bean初始化
《深入理解Spring系列之四:BeanDefinition装载前奏曲》中提到,对于非延迟单例bean的初始化在finishBeanFactoryInitialization(beanFactory)中完成。进入这个方法,代码如下。protected void finishBeanFactoryInitialization(ConfigurableLis…

webkit内核 css,纯CSS改变webkit内核浏览器的滚动条样式
基于webkit的浏览器现在可以自定义其滚动条的样式了,实现代码如下:复制代码代码如下:::-webkit-scrollbar/*整体部分*/{width: 10px;height:10px;}::-webkit-scrollbar-track/*滑动轨道*/{-webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2);border-rad…

数据依赖症:当今AI领域的核心风险
在最近结束的2017年度AI星际争霸竞赛上,Facebook做出了一款人工智能“CherryPi”,参与到这项旨在让各路AI技术在星际争霸游戏中同场竞技的赛事之中。 但很遗憾的是,Facebook仅仅获得了赛事的第六名,最直接的原因,在于F…
1024程序员节,你是我们要找的那条锦鲤吗?
参加2018 AI开发者大会,请扫描海报二维码 叮咚,您有一封 #1024吐槽狂欢派对# 邀请函请查收。 ▌什么是程序员? 全员格子、黑框眼镜,还是等于创造力忍耐力? 刻板标签、思维定式,还是高阶自黑玩梗幽默&#…

虚拟机管理你的服务器,全面解析VMware的虚拟机管理解决方案
本教程将为你讲述VMware的虚拟机管理解决方案,说起虚拟机,VMware绝对可以算的上是个中翘楚了,并且VMware的虚拟桌面结构解决方案可以起到增强管理效率,降低成本等等效用,话不多说,这就为大家介绍。Vmware的…

针对抓win2003系统密码的诡计
命令行下卸载win2003 sp1/sp2 %systemroot%\$NtServicePackUninstall$\spuninst\spuninst /U 按无人参与模式删除 service pack。如果使用此选项,那么在卸载 SP1 的过程中,只有出现致命错误才会显示提示。 /Q 按安静模式删除 SP1,此模式与无人…

那个曾经为美国NASA开发火星大脑的AI公司,现在和华为合作了
2010 年,美国航天航空局 NASA 敲响了一家创业公司的大门,希望他们参与火星探测器“大脑”的研发项目。这家公司就是 Neurala,一家专注于深度学习技术的波士顿初创公司。 NASA 的要求是一个艰难的挑战,因为火星探测器自身计算能力…

艾伦人工智能研究院开源AllenNLP,基于PyTorch轻松构建NLP模型
艾伦人工智能研究院(AI2)开源AllenNLP,它是一个基于PyTorch的NLP研究库,利用深度学习来进行自然语言理解,通过处理低层次的细节、提供高质量的参考实现,能轻松快速地帮助研究员构建新的语言理解模型。 Alle…

3650服务器性能,全新联想System x3650 M4服务器性能出色
系统支持Microsoft Windows Server 2008 R2Microsoft Windows Server 2008,Datacenter x64 EditionMicrosoft Windows Server 2008,Datacenter x86 EditionMicrosoft Windows Server 2008,Enterprise x64 EditionMicrosoft Windows Server 20…

不只翻译机,搜狗将在半年内推数款智能硬件产品
10月24日已是昨日,但属于开发者的1024一直都在——2018 AI开发者大会就是你的1024。11月8-9日,现场聆听国内外AI大牛的深知灼见,与工业界AI应用思维紧密同步,收获60技术大咖的干货分享。扫码填写大会注册信息表,就有可…

Windows Embedded Standard开发初体验(四)
添加文件、依赖组件、注册表 接下来我们就要进入创建组件最重要的一环了,添加文件。为什么说重要,因为这里有一个大坑,我在Windows Embedded Standard产品组施卫娟老师的指导下,花了两周的时间才勉强爬出来,可见该坑之…

Windows 2003 + ISA 2006+单网卡×××配置(4)
(接上)图13 然后下一步,用户集默认所有用户,不用改变,直接下一步,完成,然后会出现如图14图14照样还是点击应用。。。好了,都配置完了,下面我们做个测试。。。我本机的IP地…

科大讯飞全新1024:3大计划,200项A.I.能力,全链路驱动应用场景创新!
10月24日,2018届科大讯飞全球1024开发者节在合肥奥林匹克体育中心综合馆如约举行,重磅发布了全新升级的科大讯飞《1024计划》!原中国科学技术部副部长张来武、科大讯飞董事长刘庆峰、科大讯飞轮值总裁胡郁、讯飞听见事业部总经理王玮分别发表…

SQL基本语句
掌握SQL四条最基本的数据操作语句:Insert,Select,Update和Delete。练掌握SQL是数据库用户的宝贵财 富。在本文中,我们将引导你掌握四条最基本的数据操作语句—SQL的核心功能—来依次介绍比较操作符、选择断言以及三值逻辑。当你完…

【TP3.2】路由匹配和规则
TP3.2框架的路由匹配和规则处理: 包括:静态路由,动态路由,多参数路由、正则路由 <?php return array(//配置项>配置值/* * 路由开启和匹配。首先开启路由匹配,然后根据相应的路由规则进行匹配* 1、静态路由* 2、…

soul一直显示正在登录聊天服务器,soul这个软件,为什么有些人在玩的时间很久以后(两百天以上),就不会再主动和其他人打招呼了?...
起首,说一下我本人接触soul的那些年。记得玩soul是17年开端,最初这个软件的营销目标是为了让人们更好地交换,停止跨时空的深度聊天,寻求魂魄的朋友,而不是皮郛的一时好感。可能说当时soul是打着"丢脸的皮郛千篇一…

构建插件式的应用程序框架(八)----视图服务的简单实现(ZT)
我在前一篇文章里提到,对于停靠工具栏或者是视图最好是不要将实例放到词典中,而是将工具栏或者视图的类型放到词典中,因为视图类型会经常的被重用,并且会经常被关闭或者再打开。当实例被关闭后,资源就被释放了…

服务器怎么设置网站写入权限,如何设置服务器写入权限设置方法
如何设置服务器写入权限设置方法 内容精选换一换将用户组添加至企业项目中,并为其设置一定的权限策略,该用户组中的用户即可拥有策略定义的对该企业项目中资源的使用权限。本小节指导您如何为企业项目添加用户组并授权。分辨率低的情况下单击页面右上方的…

CSDN蒋涛提出技术社区三倍速定律,称下一个20年全球开发者数量将过亿
10 月 24 日,科大讯飞 1024 开发者节在合肥举行,中国 IT 技术社区 CSDN 创始人&董事长、极客帮创投创始合伙人蒋涛受邀发表了主题演讲。 在演讲中,蒋涛提出了“技术社区三倍速定律”,如何理解? 2013 年 CSDN 上关于…

可穿戴医疗设备火爆背后的困境
目前在电商平台搜索可穿戴手表、手环等可穿戴产品,品牌不下百种。市场调研机构IDC发布的最新报告显示,今年第一季度全球可穿戴设备发货量达到1140万部,同比增长200%,连续第八个季度实现增长。但是目前的可穿戴医疗设备基本停留在外…

【华为AI十强应用·上卷】官宣!这里的AI应用“神了”……
现在大火的AI,从概念落地到成为人们普遍接受的现实,度过了将近70年的时间。而当下,AI正在以最切实的方式影响着人们的生活,无论是工作还是娱乐,所以眼前的2018年正是AI为主流“代言”的关键一年。别说,还真…

JavaScript类——鼠标点击下笑脸变化
2019独角兽企业重金招聘Python工程师标准>>> <!DOCTYPE html> <html> <head> <meta charset"UTF-8"> <title>动态笑脸</title> <style> * { box-sizing: border-box; } .container { width: 400px; min-height…

VS2005字符串资源不能识别转义字符
在做LED媒体播放室多语言版本的时候,遇到这么一个问题, 检查office2003是否存在,如果不存在则弹出一个警告窗体。由于是多语言版本,所以弹出的信息来源于资源文件。 如果对提取的资源字符串不做任何处理,则弹出如下的对…

大掌柜商业管理系统服务器地址,大掌柜软件通用版操作说明.doc
大掌柜软件通用版操作说明PAGEPAGE 157系统应用基础内容提要:大掌柜软件专业版对系统的要求数据库SQL server2000的安装大掌柜软件专业版服务器端与客户端的安装加密狗的安装1.1系统运行环境系统运行环境的配置无疑是确保软件正常运行的重要条件之一,软件…

r语言remarkdown展示图_使用R语言包circlize可视化展示blast双序列比对结果
circlize这个包还挺强大的,R语言里用来画圈图还挺方便的。 今天这篇文章记录用circlize这个包画圈图展示blast双序列比对结果的代码植物线粒体基因组类的文章通常会分析细胞器基因组间基因转移情况,基本的分析方法就是blast比对。可视化展示可以选择用这…

吴恩达说“将引领下一波机器学习技术”的迁移学习到底好在哪?
AI技术年度盛会即将开启!11月8-9日,来自Google、Amazon、微软、Facebook、LinkedIn、阿里巴巴、百度、腾讯、美团、京东、小米、字节跳动、滴滴、商汤、旷视、思必驰、第四范式、云知声等企业的技术大咖将带来工业界AI应用的最新思维。 如果你是某个AI技…