学习目标
1.知道常见的bot分类
2. 知道企业中常用的流程和方法
文章目录
前言
1. 目前企业中常用的聊天机器人
- QA BOT(问答机器人):有明确目标,能够返回结果
- 代表:智能客服
- 比如:提问和问答
- TASK BOT(任务机器人):通过机器人具体去完成事情
- 代表:siri
- 比如:设置明天早上9点的闹钟
- CHAT BOT(聊天机器人):没有明确的目标
- 代表:微软小冰
2.常见的聊天机器人怎么实现的
2.1 问答机器人的常见实现手段
- 信息检索、搜索(简单、效果一般,对数据问答对的要求高)
关键词:tf-idf、SVM、朴素贝叶斯、RNN、CNN - 知识图谱(相对复杂,效果好,很多论文)
在图形数据库中存储知识和知识间的关系、把问答转化为查询语句、能够实现推理
2.2任务机器人的常见实现手段
- 语音转文字
- 意图识别、领域识别、文本分类
- 槽位填充:比如买机票的机器人:使用命名实体识别填充从{位置}到{位置}的票
- 回话管理、回话策略
- 自然语言生成
- 文本转语音
2.3闲聊机器人的常见实现手段
- 信息检索(简单、能够回答的话有限)
- seq2seq及其变种(答案覆盖率高,但不能保证答案的通顺)
3.企业中的聊天机器人是如何实现的
3.1阿里小蜜-电商智能助理是如何实现的
参考地址:https://juejin.cn/post/6844903504918609934
3.1.1 主要交互过程
从图中可以看出:
- 输入:语音转化为文本,进行理解之后根据上下文得到语义的表示
- 输出:根据语义的表示和生成方法得到文本,再把文本转化为语音输出
3.1.2技术架构
可以看出其流程为:
- 判断用户意图
- 如果意图为面向目标:可能是问答型或者任务型
- 如果非面向目标:可能是语聊型
3.1.3 检索模型流程(小蜜还用了其他的模型,这里以此为例)
通过上图可知,小蜜的检索师回答的流程大致为:
- 对问题进行处理
- 根据问题进行召回,使用了提前准备的结构化的预料和训练的模型
- 对召回结果进行组装和日志记录
- 对召回结果进行相似度计算,情感分析和属性识别
- 返回组装的结果
3.2 58同城智能客服帮帮如何实现的
参考地址:https://www.6aiq.com/article/1536149308075?p=1&m=0
3.2.1 客服体系
58的客服主要用户为公司端和个人端,智能客服主要实现自动问答,如果回答不好会转到人工客服,其中自动回答需要覆盖的问题包括:业务咨询、投诉建议等
3.2.2 58智能客服整体架构
整体来看,58d客服分为三个部分:
- 基础服务,实现基础的NLP的功能和意图识别
- 应用对话部分实现不同意图的模型,同时包括编辑运营等内容
- 提供对外的接口
3.2.3 业务咨询服务流程
KB-bot大致流程为:
- 对问题进行基础处理
- 对答案通过tf-idf等方法进行召回
- 对答案通过规则、深度神经网络等方法进行重排序
- 返回答案排序列表
使用融合的模型
在问答模型的深度网络模型中使用了多套模型进行融合来获取结果
- 在模型层使用了FasrText,TextCNN和Bi-LSTM等模型
- 在特征层尝试使用了单字、词、词性、词语属性等多种特征
通过以上两个模型来组合获取相似的问题,返回相似问题对应的答案
3.2.4 58的闲聊机器人
闲聊机器人使用方法包括:
- 基于模板匹配的方法
- 基于搜索的方法获取(上上图):通过相似度
- 使用seq2seq的神经网络来实现