智能客服于企业的价值,在于过滤掉最为简单、高频的基础问题,让人工可以投入到更为有价值的工作中去。
在上一篇 https://www.jianshu.com/p/390b9ab66c3e 中,我们将机器人对话的场景分为三个类型:
闲聊、问答和任务型,这三种类型体现了访客问题的三个层次。问答类型的机器人,所要解决的便是整个咨询体系中最为基础的那部分问题。
此类机器人的实现,通常采用的是知识库检索技术,也即通过检索算法,从已维护的QA知识库中,匹配最相近的问法,从而提供回复。本文将从如下方面,介绍一下问答型机器人的三个实现要素:
1、QA知识库
2、算法原理
3、功能设计
一、QA知识库
现在各大在线客服SaaS服务商,基本都可提供智能机器人功能,快速简单易上手。下文我会引用智齿客服、网易七鱼的案例,做具体说明。
在我们初次见面时候,其实机器人还只是一张白纸,可能只是内置了基础的寒暄库,能够响应一些日常的问候。而向机器人输入知识库的过程,便是给白纸着色的构成,让它能够对业务咨询进行理解及回复。
智齿客服知识库问题添加界面:
1.1 所需要录入的核心要素包括:
1)标准问法:某一知识点的最常见问法;
2)相似问法:围绕这一问法主题,列举用户的其他常见问法,让机器人可以适应更多问法的变化
3)答案
4)分类:主要用于知识点的维护管理。(另外当某一分类下数据量较大时,分类也可作为算法聚类的一个标记。例如某分类为“产品推荐”,其下属问题均围绕该主题开展,那么可认为该分类下的问题相关度高,在检索匹配时可作为一个计算因子)
1.2 QA类知识库维护要点
QA类知识库的启动及维护,主要依靠客服手工整理。但实际执行时,尝尝会陷入怀疑人生的僵局。
举例标准问题 “产品信息审核要多久?” ,本着死磕的精神,我们会发现相似问法无穷无尽:
商品信息审核要多久? 商品审核要几天? 商品几天审核通过? 产品发布之后要几天审核?.....
为了缓解人工的痛苦,机智的我们当然要想方设法,找到更有效的途径。通常有这些措施:
1、算法层面:通过对访客的问题,进行同义词扩展,或利用复述等技术,对问题进行扩展和改写。
词表示工具Word2vec、GloVe、Fasttext等可以获得每个词的向量表示,然后使用这些词向量计算每对词之间的相似性,获得同义词候选集。
复述可以使用一些半监督方法如DIRT在单语语料上进行构建,也可以使用双语语料进行构建。PPDB网站包含了很多从双语语料构建出来的复述数据集。
因此人工知识库,仅需列举常见核心问法即可,不必机械性的进行每个同义词的枚举。
2、人工标注迭代
通常,我们建议每个问题的相似问法,至少维护6个,首先保证数据启动的需要。在功能上线后,通过对线上真实问题进行挖掘,从而进一步标注出扩展问,或新的知识点。让人工去对已有数据进行标注、分类,这个比要求客服去凭空想象相似问法要容易很多。
二、知识库检索算法实现原理
智能问答的实现目标在于:理解用户问题,并匹配准确的答案。按照这个思想,我们来看一下算法实现的过程
1、在问题理解阶段,运用自然语言处理技术,进行问题的分析。
基于的技术包括分词、词性识别、核心词识别、命名实体识别、语义归一等相关技术,主要是为了在粗排阶段尽可能地把相关问题进行召回。
2、由于query和候选question包含的词数量都很少,此时一般会利用同义词和复述技术,对问题进行扩展与改写
3、基于问题的分析,在知识库中召回相关的候选问题;
4、由于候选问题可能是比较宽泛的,此时需要更精确的算法,来匹配最相近的结果。这里我们会用到深度学习模型进行文本的特征表示,进行文本相似度的精排计算,从而返回最好的一个或几个结果
三、功能设计
如上两步骤,是为机器人赋予了问答的能力,而这些能力还需要平台去施展,这便是第三部分要说的:功能层
3.1 功能层主要包含三大模块:
1)访客接入端
2)客服工作台(客服接待端)
3)智能客服管理后台
智能客服功能结构
网友评论