Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
多轮对话简介和基本方法
何云超
2016.11.10
报告内容
对话系统
多轮对话介绍
常见方法
Demo
人机交互
人机交互方式
感觉系统:视觉、听觉、体感、味觉、嗅觉
设备:屏幕、音响、键盘、鼠标、耳机、MIC、压力屏等
形式:文字、图片、声音、温度、味道等
下一代交互革命
语音
目标:人们通过语音的方式,实现对机器的一切操作
原因:符合直觉
语音交互
解放双手
学习成本低
空间限制更少
设备简单
语音交互场景
输入
语音输入法、会议纪要、自动电影字幕
翻译
方言转换、多语种翻译
控制
语音控制设备(电视、车辆、音响、手机、游戏、台灯、…)
对话系统
呼叫中心、智能客服、语音问答、聊天、语音助手
Siri
Cortana (小娜)
Google Now
小冰 (微信公众号)
贤儿机器僧 (微信公众号)
科大讯飞 灵犀
百度 度秘
Amazon Echo
Google Home
Pepper
对话系统
对话系统分类
闲聊型
每条路径的分数是路径上每个时间点的分数的累加
特点:机器伪装成一个人,和用户进行沟通
例如:小冰、贤儿机器僧…
任务型
特点:万能小超人,帮助用户做具体的事情,订机票、查天气、设置提醒、
邮件处理
例如:Google No...
不完美。。。
闲聊型
例如:小冰、贤儿机器僧…
几番对话后就会露马脚、不再
对其感兴趣
任务型
例如:Google Now、控制类
支持领域不多,简单场景
如何构建对话系统
闲聊型
任务型
闲聊型
基于检索的方法
事先准备大量的回复文本,对于一个输入文本,
按照一定算法,选择最适合的回文
选择算法: 基于规则、分类、相似度
特定:所有回文都是从固定回文集中选择,不会
产生新的回复
基于生成模型
没有预先定义的回文集,直接生成回复文...
生成模型
语法错误
训练时间长
所需训练数据大
不一致问题
通用回复(嗯好、不错、不知道、无可奉告)
简单任务型机器人
例如:查天气、查路线、查股票、查赛况、订机票、选情。。。
特点:调用 API
本质:将一个文本映射为一种API的调用方式,String到API调用
的映射
方法:语义解析
Call API
北京天气怎么样
提醒我下午2点开会
...
Example
简单任务型对话系统
特点:单轮
一次用户输入和系统反馈,称为一个轮次,单轮表示轮次和轮
次之间独立
任意两句话之间相互独立
即,当前话语和前文与后文都无关
假设,执行一条指令(call API)所需的全部信息,都包含在这一句
话中
没有记忆功能
实际情况
用户话语之间存在关系
多句话一起才能形成完整语义
[用户]: 北京天气怎么样?
[系统]: 北京,晴,温度2到10度
[用户]: 上海呢?
[系统]: 上海,下雨,温度10到16度
[用户]: 爸爸去哪儿什么时候更新
[系统]: 爸爸...
多轮对话
目标:
记录历史话语
考虑话语之间的相互关系
可以处理不完整语义情况
多轮对话基本流程
主要模块:
语音识别 ASR
语义理解 SLU
对话管理 DM
对话状态追踪
DST
对话决策 DP
自然语言生成 NLG
语音合成 TTS
语义理解
语义表示 (Semantic Representation):以什么形式表示文本
的语义
分布式表示(向量)
领域-意图-槽位表示法 (对话系统中常用)
Microsoft LUIS Example: Link.
发QQ消息给小周说太...
对话状态 DS
记录了用户在对话中的所有历史信息
对话状态追踪
记录用户历史输入,维持多个槽位上的取值
对话管理基本方法
有限状态机 FSM
槽位填充
有限状态机 FSM
人为定义对话流程
系统主导
系统问,用户答
答非所问,直接忽略
仅适用于简单任务
FSM Example: OpenDial 系统
More: http://wiki.letv.cn/pages/viewpage.action?pageId=61295459
概率规则 if-else-then
用户行为au
系统行为am
用...
槽位填充 SF
Frame:槽位的集合,定义了需要由用
户提供什么信息
机票预订
Departure_city ?
Departure_date ?
Destination_city ?
Return_date ?对话状态:记录了哪些槽位已被填...
对话状态更新
t+1 时刻的对话状态 st+1,依赖于之前时刻 t 的状态 st,和之前时
刻 t 的系统行为 at,以及当前时刻 t+1 对应的用户行为 ot+1
槽位填充 Example
Site: http://wiki.letv.cn/pages/viewpage.action?pageId=60951745
如何进行行为选择:
按顺序填充
槽位加权填充
Ontology
DEMO
OpenDial 订票系统
Demo
Alex
对话状态追踪
行为选择
谢谢
何云超 heyunchao@le.com
Upcoming SlideShare
Loading in …5
×

何云超 多轮对话

多轮对话 multi-turn dialog for task-oriented system

  • Be the first to comment

何云超 多轮对话

  1. 1. 多轮对话简介和基本方法 何云超 2016.11.10
  2. 2. 报告内容 对话系统 多轮对话介绍 常见方法 Demo
  3. 3. 人机交互 人机交互方式 感觉系统:视觉、听觉、体感、味觉、嗅觉 设备:屏幕、音响、键盘、鼠标、耳机、MIC、压力屏等 形式:文字、图片、声音、温度、味道等 下一代交互革命 语音 目标:人们通过语音的方式,实现对机器的一切操作 原因:符合直觉
  4. 4. 语音交互 解放双手 学习成本低 空间限制更少 设备简单
  5. 5. 语音交互场景 输入 语音输入法、会议纪要、自动电影字幕 翻译 方言转换、多语种翻译 控制 语音控制设备(电视、车辆、音响、手机、游戏、台灯、…) 对话系统 呼叫中心、智能客服、语音问答、聊天、语音助手
  6. 6. Siri Cortana (小娜) Google Now 小冰 (微信公众号) 贤儿机器僧 (微信公众号) 科大讯飞 灵犀 百度 度秘 Amazon Echo Google Home Pepper 对话系统
  7. 7. 对话系统分类 闲聊型 每条路径的分数是路径上每个时间点的分数的累加 特点:机器伪装成一个人,和用户进行沟通 例如:小冰、贤儿机器僧… 任务型 特点:万能小超人,帮助用户做具体的事情,订机票、查天气、设置提醒、 邮件处理 例如:Google Now、控制类 混合型 特定:既能闲聊,又能完成任务 例如:Siri、Cortana 平台与设备 PC 移动端(手机、车载) 家居(音响、玩具)
  8. 8. 不完美。。。 闲聊型 例如:小冰、贤儿机器僧… 几番对话后就会露马脚、不再 对其感兴趣 任务型 例如:Google Now、控制类 支持领域不多,简单场景
  9. 9. 如何构建对话系统 闲聊型 任务型
  10. 10. 闲聊型 基于检索的方法 事先准备大量的回复文本,对于一个输入文本, 按照一定算法,选择最适合的回文 选择算法: 基于规则、分类、相似度 特定:所有回文都是从固定回文集中选择,不会 产生新的回复 基于生成模型 没有预先定义的回文集,直接生成回复文本;主 要依靠机器翻译技术,将用户输入翻译为系统回 复;需要大量的训练数据。 腾讯聊天记录、各大电信公司短信记录、微博私 信、阿里旺旺
  11. 11. 生成模型 语法错误 训练时间长 所需训练数据大 不一致问题 通用回复(嗯好、不错、不知道、无可奉告)
  12. 12. 简单任务型机器人 例如:查天气、查路线、查股票、查赛况、订机票、选情。。。 特点:调用 API 本质:将一个文本映射为一种API的调用方式,String到API调用 的映射 方法:语义解析 Call API 北京天气怎么样 提醒我下午2点开会 发短信给跃亭说一切都会过去 领域 意图 槽位
  13. 13. Example
  14. 14. 简单任务型对话系统 特点:单轮 一次用户输入和系统反馈,称为一个轮次,单轮表示轮次和轮 次之间独立 任意两句话之间相互独立 即,当前话语和前文与后文都无关 假设,执行一条指令(call API)所需的全部信息,都包含在这一句 话中 没有记忆功能
  15. 15. 实际情况 用户话语之间存在关系 多句话一起才能形成完整语义 [用户]: 北京天气怎么样? [系统]: 北京,晴,温度2到10度 [用户]: 上海呢? [系统]: 上海,下雨,温度10到16度 [用户]: 爸爸去哪儿什么时候更新 [系统]: 爸爸去哪儿每周五晚22点开播 [用户]: 到时候提醒我 [系统]: 已成功为您增加周五晚22点的提醒,内 容是爸爸去哪儿开播了 [用户]: 提前10分钟提醒 [系统]: 修改为周五晚21点50分提醒吗 [用户]: 确定 [系统]: 已成功为您增加周五晚21点50分提醒, 内容是爸爸去哪儿开播了
  16. 16. 多轮对话 目标: 记录历史话语 考虑话语之间的相互关系 可以处理不完整语义情况
  17. 17. 多轮对话基本流程 主要模块: 语音识别 ASR 语义理解 SLU 对话管理 DM 对话状态追踪 DST 对话决策 DP 自然语言生成 NLG 语音合成 TTS
  18. 18. 语义理解 语义表示 (Semantic Representation):以什么形式表示文本 的语义 分布式表示(向量) 领域-意图-槽位表示法 (对话系统中常用) Microsoft LUIS Example: Link. 发QQ消息给小周说太阳照屁股了 (communication make_call) 提醒我周五晚上10点给爸妈打电话 (reminder create_single_reminder)
  19. 19. 对话状态 DS 记录了用户在对话中的所有历史信息
  20. 20. 对话状态追踪 记录用户历史输入,维持多个槽位上的取值
  21. 21. 对话管理基本方法 有限状态机 FSM 槽位填充
  22. 22. 有限状态机 FSM 人为定义对话流程 系统主导 系统问,用户答 答非所问,直接忽略 仅适用于简单任务
  23. 23. FSM Example: OpenDial 系统 More: http://wiki.letv.cn/pages/viewpage.action?pageId=61295459 概率规则 if-else-then 用户行为au 系统行为am 用户话语uu 系统话语um 模型定义在xml文件中
  24. 24. 槽位填充 SF Frame:槽位的集合,定义了需要由用 户提供什么信息 机票预订 Departure_city ? Departure_date ? Destination_city ? Return_date ?对话状态:记录了哪些槽位已被填充 行为选择:下一步该做什么,填充什么槽位,还是进行何种 操作
  25. 25. 对话状态更新 t+1 时刻的对话状态 st+1,依赖于之前时刻 t 的状态 st,和之前时 刻 t 的系统行为 at,以及当前时刻 t+1 对应的用户行为 ot+1
  26. 26. 槽位填充 Example Site: http://wiki.letv.cn/pages/viewpage.action?pageId=60951745 如何进行行为选择: 按顺序填充 槽位加权填充 Ontology
  27. 27. DEMO OpenDial 订票系统
  28. 28. Demo Alex 对话状态追踪 行为选择
  29. 29. 谢谢 何云超 heyunchao@le.com

×