自然语言处理 Paddle NLP - 任务式对话系统-理论
什么是任务型对话:
- 任务型:用于帮助用户完成某领域的特定任务,例如订餐、查天气、订票等
- 闲聊型:也称作开放域对话系统,目标是让用户持续的参与到交互过程,提供情感陪伴
- 问答型:提供知识满足,具体类型比较多,如图谱问答、表格问答、文档问答等
Pipeline型任务型对话系统
什么是NLU?
NLU(自然语言理解):是指将用户表述映射为结构化的语义表示,典型的结构化语义表示是意图+词槽的形式。
意图:是指对话中用户想要表达的目的,比如订票,查天气等
词槽:是指用户表述中,与任务相关的核心语义元素
意图分类+词槽识别==>文本分类+序列标注
什么是DST?
DS(对话状态):是指将t时刻的对话表示为可供系统选择下一时刻动作信息的抽象信息(数据结构),典型而言就是每个槽值的取值分布情况(BelifState)。
DST:对DS进行追踪,当前大多数工作采用BelifState
Pipeline型任务式对话系统中的Policy
对话策略是指根据DST估计的对话状态,通过预设的候选动作集,选择系统动作的过程。
Policy中的典型方法
典型方式: - 在离线阶段,通过监督学习或模拟学习在语料上进行学习
- 在线阶段,通过强化学习的方式,与真实用户交互过程中学习
用户模拟器在DPL中的应用
定义:用户模拟器是另一套对话系统,其动作行为与真实用户类似,用来提供进行训练或评估的环境
缺点:用户模拟器并不能完全模拟真实用户的对话习惯,它本身行为的有偏可能会导致学习到的是不是最优模型,从而在与真实用户交互时表现较差。
Pipeline型任务式对话系统中的NLG
什么是NLG?定义:自然语言生成的主要任务是将对话管理模块输出的抽象表达转换为句法合法、语义准确的自然语言句子,一般被视为一个条件语言生成任务。
评估标准: - 人为标准:是否自然、是否多样,是否完整传达了语义、是否流畅,可读性是否好等
- 机器指标:BLEU、perplexity、ROUGE、METEOR等
虽然有多种机器评估指标,但实际上依然缺乏一种能够贴近人为感知的评估标准
端到端任务型对话系统
什么是端到端任务型对话系统?
- 端到端任务型对话系统是受开放域对话领域的进步启发,使用模型以端到端的方式而不是分模块优化的方式构建任务型对话系统。
- 虽然大多数端到端任务型对话系统采用了Seq2Seq框架,但端到端任务型对话系统≠Seq2Seq模型
端到端任务型对话系统--示例
工业界的任务型对话系统
UNIT任务式对话技术发展
UNIT--面向小样本的意图识别
UNIT--TaskFlow:可编程对话流管理框架
UNIT网站:https://ai.baidu.com/unit/home