人机对话(2)-基于Data-drive的task-DM系统

什么是基于数据驱动

前面有说过基于目标/任务/流程驱动的DM系统,这些方法其实都属于手动设计特征,复杂的对话逻辑是由人来设计处理逻辑去完成的。这样的方法在小范围内其实表现会更好,但是随着对话业务越来越复杂,构建与维护成本也会越来越高,当然距离我们理想的人机对话那是远远不够的;所以DM系统可否交于深度学习来完成呢?
将对话逻辑交给深度学习来处理,就是以数据驱动的对话

接下来看看如何炼丹了~~

基本结构

人机对话

1、SLU/NLU 模块

将用户语言转为用户意图,同时识别对实体进行标注用于填槽; 这部分模块基本上非常成熟了,不论采用什么DM设计的系统,NLU模块都差不多是通过字典以及上下文语料进行意图分类任务以及实体的序列标注任务;使得系统明白”是什么“

例如

user:我想要吃火锅 → intent:find_food [我 想要 吃 V.food]

intent识别

ut即意图类别

像之前提到过的BERT模型就可以用来处理NLU的分类任务,效果已经非常好了。

NLU模块会应用到小型的知识图谱,我们需要对意图进行分类就是为了应用这个意图下的知识,明确该任务所依赖的槽。这部分仍旧是通过手工设计的,毕竟算法的作用目前只是用于识别,知识仍然需要人为添加。

2、DST:对话状态跟踪模块

跟踪当前对话状态,并输出对话状态

DST模块依赖于前面的NLU模块+知识图谱;使得系统明白”在哪儿“

3、DPL:对话策略模块

根据当前的对话状态、外部数据、用户输入等决定下一步应该采取什么动作

DPL模块依赖NLU与DST模块,使得系统明白”要干什么“

4、NLG:自然语言生成

将DPL的action转化为自然语言给用户

比如: action→“为您推荐 v.hotel,价格实惠交通便利” 这样的语义模板,再将槽值填入返回给用户

以上任务型对话机器人的通用结构,通常所说的DM部分就包括DST(对话状态) DPL(策略学习);接下来主要阐述这两个模块

DST

DST模块儿主要确定用户对话的状态,也叫做belief state:置信状态;由belief tracking模块进行处理,最终输出槽值的概率分布。 比如 S.food 【中国菜 0.88 越南菜0.12 韩国菜 0.08】这样子的表示形式;所以belief tracking同样承担了NLU的任务

在具体的对话任务里,对话状态指的就是指不同的slot-value对的情况,

DST

它的输入是Un(n时刻的意图和槽值对,也叫用户Action)、An-1(n-1时刻的系统Action)和Sn-1(n-1时刻的状态),输出是Sn(n时刻的状态)。

belief tracker

如图所示,belief tracker 网络输出了槽位的槽值分布;
主要对语句进行了特征处理、置信度计算以及上下文处理三个部分

特征提取

特征提取

用户t时刻的输入以及系统t-1时刻的回复经过CNN完成了特征抽取,得到两个向量作为上方神经元的输入。(用CNN可能是因为模型局部特征处理稳定的特点,向量不会损失太多信息;恩、纯瞎猜~~~)

置信度计算

置信度计算

上一步中的用户与系统的语句向量再加上知识图谱中的slot-value对加入到神经网络中进行计算,最终输出就是slot以及值的概率分布

之所以同时计算用户与系统的向量是因为往往信息蕴含在这一组对话中,比如
系统请求:上一时刻系统要求用户提供某种信息,例如“您大概需要什么价位的呢?
系统确认:上一时刻系统要求用户确认某种信息,例如“您是需要土耳其食物是吗?”

整个过程考虑上下文

image.png

在前面模型中会有一个RNN模型,而且前序y值作为下一个神经元的输入;
这是因为考虑到对话过程中用户对需求表达的模糊甚至更改,所以模型将整个context通过RNN进行考虑,毕竟RNN模型本身就对整个对话序列全局考虑。context的接入在置信度计算的附图中也可以看到。

外部数据

通过belief tracker 完成slot值分布后,我们取max slot值前往数据库进行业务查询;比如置信度最高的火锅,从数据库可以查到对应的商家,从而可以获取 商家地址 商家电话 等信息。这类信息也会作为槽值进行处理(槽值确定),区别于通过用户语言获取的槽;

DPL

DPL基于当前状态(state)决定系统需要采取action。它的输入是Sn,输出是An。

DPL

这是一个典型的强化学习场景,需要系统产出一个action,每一步action之后,用户会返回用户action,从而使得状态S发生跳转,而Sn-1与Sn之间会有信息更新,比如槽填充。推动了对话进行;我们可以定义S变化时的reward奖励(比如根据信息填槽),通过训练模型累计reward的数值最高,从而使得系统action的准确性;

reward定义

上图就是对槽值填写与否定义了一个score(reward) table,通过强化学习训练使得全局策略最优,最终将每次的action通过NLG处理后返回给用户。

总结

基于数据驱动的TASKBOOT

intent network+Belief Tracker+知识图谱 承载了NLU的任务
Belief Tracker维护了对话的状态
policy network 根据当前状态以一定的策略采取了 系统action;

一次次系统action和用户action 推动对话进行,与外部数据共同推动任务信息完善;最终完成任务;

基于数据驱动的问题

目前行业普遍应用仍然是手动设计的DM系统,而不是深度学习方法

1、训练语料,数据驱动的深度学习DM需要大量语料;冷启动产品特别不适合用data_trave的方式;

2、深度学习的黑箱,导致业务交互不可控,即风险不可控,这个影响很大。

3、生成语句可能有语法问题,体验不可控

相信随着技术与业务探索,这些问题都可以解决。要想实现真正的CUI ,这是必须要走的一步!

(笔者正寻求NLP、人机对话方向产品职位 微信:cheng390552021)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,039评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,223评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,916评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,009评论 1 291
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,030评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,011评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,934评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,754评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,202评论 1 309
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,433评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,590评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,321评论 5 342
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,917评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,568评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,738评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,583评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,482评论 2 352