句子大全

句子大全 > 句子大全

对话系统的简单综述及应用智能客服

句子大全 2009-03-21 22:45:12
相关推荐

对话系统主要有三大模块:对话上下文(Dialog Context)、对话状态跟踪(Dialog State Tracking)和对话策略(Dialog Policy)。

对话上下文(DC):记录对话的领域、意图和词槽数据,每个领域可能包含多个意图的数据, 一般以队列的形式存储;

对话状态跟踪(DST):记录T-1状态与当前时间T的状态,即会结合上下文,确定当前对话状态,同时会补全或替换词槽;

对话策略(DP):根据对话状态和具体任务决定要执行什么动作,比如进一步询问用户以获得更多的信息、调用内容服务等;

对话系统主要有三大模块:对话上下文(Dialog Context)、对话状态跟踪(Dialog State Tracking)和对话策略(Dialog Policy)。

对话上下文(DC):记录对话的领域、意图和词槽数据,每个领域可能包含多个意图的数据, 一般以队列的形式存储;

对话状态跟踪(DST):记录T-1状态与当前时间T的状态,即会结合上下文,确定当前对话状态,同时会补全或替换词槽;

对话策略(DP):根据对话状态和具体任务决定要执行什么动作,比如进一步询问用户以获得更多的信息、调用内容服务等;

自然语言处理(NLP)技术一直以来被认为是成熟度相对较低的AI技术分支,不过,尽管NLP在开放领域环境中表现不佳,但对于限定场景来说,NLP及其背后的知识图谱技术却能发挥出巨大价值。智能客服就是NLP最常见的应用之一,也是对话系统最常见的应用之一。

作为企业客户关系管理(CRM)的重要组成部分,客服是连接企业与客户的重要桥梁,极大地影响着企业的销售成果、品牌影响及市场地位。但是,长久以来,客服行业都存在诸多痛点,客服人员流动性大、培训成本高、客服难以把控、大量重复性问题过度消耗人工客服,同时,如何提升售前转化,如何优化客服流程,如何从客服数据中发现企业业务问题等,都是各类企业面临的普遍问题。因为这些普遍问题的存在,智能客服应运而生。

根据国内客服行业的第三方报告(下图),智能客服正在以40%-50%的比例替代人工客服工作,AI将为智能客服厂商释放500-800亿市场空间,所以一直以来,大量企业布局智能客服行业。

3.1 智能客服的概述

智能客服,也就是我们所说的客户维护的智能服务,比如我们常见的淘宝小蜜、京东JIMI。

目前受限于NLP算法水平的限制,现在智能客服在实际使用中更多是发挥辅助作用。目前智能客服最常见的形式就是在人工客服系统基础上,扩展出智能客服的功能,最常见的功能为单轮问答、功能对话、人机协作。

人机协作,一般是智能客服优先回答问题,解决不了再转人工,也就是智能客服解决一定的高频简单问题,疑难问题转接人工客服。

根据智能客服目前常见的定位单轮问答,知识库问答的技术本质也是搜索引擎相似的技术,都是信息检索。

3.2 信息检索

信息检索(Information Retrieval,IR)主要是寻找从文档集中获取可用信息的模型和算法,用户输入一个表述需求信息的查询字段,系统回复一个包含所需要信息的文档列表,比如我们平时所用的百度、谷歌搜索。

目前大多IR系统都是基于组合语义的一种极端版本,用户查询内容表示为检索词表达的信息需求,检索词进行词义排歧、同义扩展等处理(比如同义词扩展,可通过WordNet同义集),生成对应的向量,查询向量与文档向量(彼此向量通过权重处理,比如TF-IDF)计算相似度(可通过余弦计算,越接近1越相似,越接近0越独立),如下图。

其中,文档表示被系统索引及提供给检索的文本单元,文档列表表示用于满足用户需要的一组文档,检索词指文档列表中出现的词汇项,可用来当索引。

我们可以看到上图的信息检索架构返回的是文档列表,而智能客服问答返回的是答案内容,我们来看看问答与信息检索的区别:

我们可以看到,问答集成了知识表示、信息检索、自然语言处理和智能推理等技术,毕竟用户希望的是获取一段特定信息,问题的答案,需求的解决方案,比如用户问题怎么重置密码。

这个时候,我们返回的应该是用户问题重置密码的解决方案答案,所以智能客服的问答应用信息检索的时候,做了相应的调整,检索返回的是答案(即计算概率最大的候选答案,可以理解为所谓的推荐),同时一般会在问题查询处理的时候,增加问题分类模块,也就是某个问题是什么类型,可以针对类型更好的回答,分类器可以通过标注类型的对话数据进行训练。

3.3 知识库

现在我们了解了智能客服模型的实现,但对话系统如果没有语料库,还是不会对话,正所谓巧妇难为无米之炊。语料库也就是我们智能客服所说的知识库。知识库可以来自我们整理的知识图谱或者问答库等,知识库的难点在于数据的冷启动、数据的清洗及整理。

数据的冷启动,也就是生成知识库的原始数据有没有的问题(数据冷启动同样影响信息检索模型的训练),不过智能客服一般都是限定于领域,应用于自身企业的服务,前期客服都是人工服务,所以我们一般可以积累人工对话的数据作为知识库的原始数据(一般是选择一定周期内的数据,具有通用性)。

数据的清洗及整理,也就是有了原始数据后如何生成完整可读的知识库。我们常见的一种知识库就是所谓的问答库(即问题答案对,当然,一般还会有其他标签,比如人工标注的问题类型)。问答库的生成,我们可以通过原始对话数据对同一标识的对话(表示同一用户与人工客服的完整对话),根据对话身份ID的不同分别对同一ID的话段通过N-gram拼接起来(主要通过词袋出现的unigram、bigram、trigram,一般到trigram,太少句子不通顺,太多计算量大,毕竟N元模型的大小几乎是N的指数函数即O(|V|^N),V为词汇量,然后通过N-gram拼接算法把N-gram片段拼接起来即可,一般可以通过NLTK工具包处理),成为一段较为通顺的句段,最后再经过人工审核及标注,形成完整可读的问答知识库。

其中,词袋指的是一段文本(比如一个句子或是一个文档)可以用一个装着这些词的袋子来表示,这种表示方式不考虑文法以及词的顺序;N-gram,即N元语法,指的是文本中连续出现的n个语词,N元语法模型是基于(n-1)阶马尔可夫链的一种概率语言模型,通过前面出现的n-1个单词预测下一个单词,通过n个语词出现的概率来推断语句的结构;当n分别为1、2、3时,又分别称为一元语法(unigram)、二元语法(bigram)与三元语法(trigram)。

下图为上述对话C段落,经过N-gram拼接处理后,再经过人工审核标注的问答库示例:

不过,由于问答库的问题单一性,用户采用相似问法提问时,可能由于模型等问题找不到对应的答案,导致用户不满。即使我们对问题进行扩展等泛化处理,采用松弛模式允许匹配忽略部分文本的结果,但会引起一些不正确的结果,也引起用户的不满。所以为了提高问题的准确性,我们可以通过种子模式,即采用整理好的知识库的问题关键词,在原始或清洗后的对话数据集上进行搜索,查看用户常见的问法,进行问答扩展,增加问题的相似问法,比如上图的问答库的问题“购买一部2000元的小米手机”,可扩展相似问法“推荐一部2000元的手机,品牌不限”。

当然,知识库越丰富越好,毕竟越丰富则覆盖的业务范围问题越广,解决用户需求的可用性越好,就像我们人类一样知识面越广,则能解决更多问题,能力越好。

3.4 设计与评价

智能客服不是开放式的聊天对话系统,而是基于特定业务领域和业务场景的对话系统,目的是快速解决用户的需求,一个最理想的对话系统就是用最少代价就能帮助用户实现目标的系统,所以智能客服应以用户为中心的设计原则,用户满意度至关重要。

设计:

智能客服由于自身的目的性,应当根据自身的业务场景选择相应的对话策略、提示、错误信息反馈等设计原则。

常见的设计要点:

研究用户和业务:分析用户画像,以及调研用户常见的问题,获知用户的潜在问题进行相应的推荐引导,以及个性化回答用户;比如每个用户进入智能客服,界面的问题引导都不一样; 对话策略:问题高相似即反馈答案,一定程度相似可反馈相似的几个问题,收敛引导用户提问,低相似的问题可引导用户重新提问或引导转接人工客服;同时,增加闲聊库,保证用户对话的顺畅性,避免部分用户闲聊无应答。当然,还有快速收敛,用户输入时通过联想提问显示提示问题引导用户选择提问,一般也会有万能指令的策略,可以在对话的任何地方使用,以便用户请求相应的操作,比如我们常见的万能指令:帮助(返回帮助菜单)、人工/人工客服(转接人工客服); 对话数据完整性:用户转接人工客服后,保证用户与系统对话的数据同时转接至人工客服对话窗口,方便人工客服快速了解用户需求,也避免用户再次提问,提高客服接线率和时间效率,提高用户满意度; 对设计进行迭代:数据监控,根据指标数据分析优化;根据用户满意度的意见进行优化;知识库的维护及更新(包括模型自主学习);

评价:

用户满意度是我们智能客服的衡量标准,用户可以在系统界面满意度问卷进行显性反馈,这是我们直接拿到的用户真实评价。但反馈用户满意度毕竟需要操作成本,很多用户都不会去反馈,所以我们拿到直接的满意度评价比较少,更多会结合其他衡量指标进行综合评价系统。

评价一般有外在和内在的评价指标,外在指标指的是我们业务可见的一些指标,比如智能客服的问题解决率、人工客服系统的接线率/会话时长等衡量指标;内在指标指的是模型算法的一些指标,信息检索常见的评价指标:准确率(precision)、召回率(recall)、F-测度值。可根据具体业务场景选取适合的评价指标。

总结

当前受限NLP算法水平的限制,目前智能客服更多是辅助人工客服,未来,想进一步替代人工客服,NLP技术理应做到实现更好的多轮对话建模以及个性化回复,从而理解用户的真实意图及对话自然。

毕竟对于智能客服来说,重要前提就是准确理解用户问题,同时可以联系上下文,与用户进行自然地多轮对话,理解用户意图,解决用户问题,这样才能更好进一步替代人工客服。

参考文献:

《自然语言处理综论》(第二版)

https://36kr.com/p/5136136.html

https://www.leiphone.com/news/201703/6PNNwLXouKQ3EyI5.html

https://www.msra.cn/zh-cn/news/features/ming-zhou-conversation-engine-20170413

作者:铅笔小葵(微信号:gaokaikui 知乎专栏:铅笔小葵),产品经理,负责产品从0到1的开发,曾任Java工程师,参与后台开发。欢迎大家互相交流关注。

本文由 @铅笔小葵 原创发布于人人都是产品经理。未经许可,禁止转载。

阅读剩余内容
网友评论
相关内容
拓展阅读
最近更新