自然语言处理的总体介绍及其主要的任务,传统机器学习方法和深度学习方法分析,以及涉及到的NLP前沿研究进展。

注脚

1.自然语言处理 基础 (Natural Language Processing, NLP) 孙栩 北京大学 xusun@pku.edu.cn http://xusun.org

2.NLP 的总体介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档分类 NLP 的典型 任务简介 问答系统 、 情感分析 、 自然语言生成 NLP 的前沿 研究进展:自然语言生成面对的主要挑战 内容安排 2 /300

3.NLP 的总体介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档分类 NLP 的典型 任务简介 问答系统 、 情感分析 、 自然语言生成 NLP 的前沿 研究进展:自然语言生成面对的主要挑战 内容安排 3 /300

4.NLP 的总体介绍 简介 研究范式

5.自然语言处理是通过建立形式化的计算模型来分析、理解和处理自然语言 什么是自然语言: 指人类使用的语言,如汉语、英语 等 语言是思维的载体,是人际交流的 工具 语言的两种属性-文字和声音 人类 历史上以语言文字形式记载和流传的 知识 占知识总量的 80 %以上 其它术语 计算语言学 (Computational Linguistics) 自然语言理解 (Natural Language Understanding) 人类语言技术 (Human Language Technology) 自然语言处理是什么? 5 /300

6.自然语言处理( natural language processing , NLP ) 或 称自然语言理解 (natural language   understanding) 是 人工智能研究的重要 内容 自然语言处理就是 利用计算机为工具对人类特有的书面 形式和 口头形式的自然语言的信息进行各种类型处理和 加工 的技术。 - 冯志伟 《 自然语言的计算机处理 》 自然语言处理是什么? 人工智能( AI ) 机器学习、模式识别 机器视觉,等等 自然语言处理 (机器对人类语言的理解) 6 /300

7.终极目标 强 人工智能 强自然语言处理 使计算机能理解并生成人类语言(人工智能的最高境界) 当前目标 弱人工智能 弱自然语言处理 研制具有一定人类语言能力的计算机文本或语音处理系统(目前阶段切实可行的做法) 研究目标 7 /300

8.强人工智能、 弱人工智能 ? 如何 判断计算机系统的智能? 计算机系统的表现 (act) 如何? 反应 (react) 如何? 相互作用 (interact ) 如何? 与有意识个体(人)比较如何? 自然语言处理是什么? 8 /300

9.NLP 的 传统 统计机器学习方法 序列标注问题 链 状 结构 典型问题:分词、 词性标注、实体识别 典型模型 :HMM,结构化感知器 句法分析 树状结构 上下文无关句法、 PCFG 模型 依存句法、依存 句法分析 模型 研究方向 S NP VP John V NP liked the dog in the pen 9 /300

10.NLP 的深度学习方法 前馈神经网络 词向量 基于窗口的分类 卷积 神经网络 捕捉局部结构信息 NER 、情感 分析 递归 神经网络 循环神经网络 捕捉时序信息 LSTM, GRU 序列到序列模型 Attention 研究方向 10 /300

11.前沿研究 图像描述生成 多模态 问答系统 / 阅读理解 基于文本的推理 序列到序列 模型 ConvS2S Transformer 自然语言生成 风格转换等 研究方向 11 /300

12.机器翻译 人机对话 信息检索 、信息提取 情感分析、 舆论分析、知识 发现 自动抽取知识库 具体的自然语言处理任务简介 12 /300

13.搜索 在线广告 / 推荐 自动 / 辅助翻译 语音识别 讯飞 Siri Cortana Alexa 聊天机器人 自动客户服务 控制设备 小冰 自然语言处理与 产业 13 /300

14.表象原因:自然语言中有大量的歧义现象 无法象处理人工语言那样,写出一个完备的、有限的规则系统来进行定义和描述。自然语言的规则很少没有例外 此外,还有大量的噪音甚至错误表达 歧义举例: The boy saw the girl with a telescope. 本质原因:知识体系的缺乏 自然语言的理解不仅和语言本身的规律有关,还和语言之外的知识(例如常识)有关 语言处理涉及的常是海量知识,知识库的建造维护难以进行 场景 / 背景的建立问题 两个原因的 联系 : 歧义 是知识缺乏的表现形式 自然语言处理的难点是什么? 14 /300

15.表象原因:自然语言中有大量的歧义现象 无法象处理人工语言那样,写出一个完备的、有限的规则系统来进行定义和描述。自然语言的规则很少没有例外 此外,还有大量的噪音甚至错误表达 歧义举例: The boy saw the girl with a telescope. 本质原因:知识体系的缺乏 自然语言的理解不仅和语言本身的规律有关,还和语言之外的知识(例如常识)有关 语言处理涉及的常是海量知识,知识库的建造维护难以进行 场景 / 背景的建立问题 两个原因的 联系 : 歧义 是知识缺乏的表现形式 自然语言处理的难点是什么? 14 /300

16.用 规则分析 句子“ the boy saw the girl with a telescope” 具体方法 16 /300

17.All grammar leak (Sapir 1921) 对于自然语言而言,不大可能写出一部完备的规则集,语言规则有很强的伸缩性。 规则系统的普遍问题 不完备 规则本身的歧义 理论不够严谨 (ad-hoc) 规则调整和更新很复杂 维护困难 具体方法 17 /300

18.目前, 数据驱动的方法是主流 1992: 24% 1994: 35% 1996: 39% 1999: 60% 2001: 87% 2010 : >90% 效果评测 ? 自然语言 歧义多、关于语言处理方法和系统的评测也需要解决相关的歧义问题 1 ,规避语言学争议、制定标准测试集 2 ,看应用效果 具体方法 18 /300

19.Morphology 词汇学 / 形态学 传统 词素 / 语素 (morphemes) 深度学习 向量表示 神经网络结合 深度 学习方法:词汇学 19 /300

20.词向量 Word vectors Embedding 深度学习方法:词汇学 20 /300

21.Syntax 语法 / 句法 传统 短语 离散的类别, NP , VP 深度学习 向量表示 神经网络结合 深度 学习方法:句法 21 /300

22.Semantics 语 义 传统 : 精心设计的函数系统 没有相似性和模糊性的概念 深度学习 向量表示 神经网络 结合   深度 学习方法:语义 22 /300

23.情感分析 传统 情感词词典, 词 袋 否定特征 深度学习 递归网络 深度 学习方法:情感分析 23 /300

24.机器翻译 传统 多种层级 超 大规模复杂系统 深度学习 Seq-to-Seq 句子压缩为一个向量 深度 学习方法:机器翻译 24 /300

25.向量 :一切的表示,表示一切 词素、词、短语、句子 都可以表示为 向量 描述语汇间的复杂关系 多维、连续 相似性 模糊性 深度学习方法 25 /300

26.NLP 的总体介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档分类 NLP 的典型 任务简介 问答系统 、 情感分析 、 自然语言生成 NLP 的前沿 研究进展:自然语言生成面对的主要挑战 内容安排 26 /300

27.NLP 的传统机器学习方法 简单分类:机器学习基础 结构化分类:序列标注问题

28.NLP 的传统机器学习方法 简单分类:机器学习基础 结构化分类:序列标注问题

29.简单分类问题 感知器模型 (perceptron) 支持向量机模型 (support vector machine, SVM) 大纲 29 /300

30.什么是二元分类器? 是指从一个输入数据 d 映射到一个输出值,且该输出值是一个二元值的映射函数 / 算法 一般的二元分类器把这 两 个类(二元值)设为 -1 和 +1 其实没有严格的要求一定要把二元值设为 -1 和 +1 ,但是很多二元分类器这样设置,主要是为了数学计算的方便 二元分类器 30 /300

31.二元分类器 Classification Model 给定训练数据 : 二元分类器的建立 : 31 /300

32.二元分类器 32 /300

33.感知器模型 (perceptron) 假设问题是线性可分的 我们 需要一种学习方法,能够较快速地收敛到稳定状态,实现自动分类 (classification) 主要思路 如果遇到一个新实例(比如句子、文本),跟原有实例 ( 已知分类结果 ) 相似的实例更有可能被分类为相似的类 感知 器模型 早期思想由 Rosenblatt 在 1950 年代提出 ,但是现有的 perceptron 模型和原来早期的模型已经有了较大的 不同 。 经过了大幅度算法改进,如今使用 很 广泛。 33 /300

34.主要步骤: 随机初始化一个超平面 一个接一个扫描训练数据(已经标注了正确的分类结果),基于现有的模型参数 (weight vector) ,计算分类结果 如果分类结果正确,则继续 如果分类错误,则修改模型参数,加上正确分类结果对应的特征向量,减去错误分类结果对应的特征向量 如果达到收敛状态(稳定状态),则结束 感知器模型 生物学 的解释: 有点像大脑神经元的正向反馈和负向反馈 主要受到神经元网络的启发 34 /300

35.具体算法 感知器模型 感知器模型是基于简单的加减法! 优点一:非常容易实现 优点二:而且实际效果好 35 /300

36.举例说明:为什么简单的加减法可以实现线性分类 4 个线性可分 (linearly separable) 的数据点 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 Z = 1 Z = - 1 (1/2, 1) (1,1/2) (-1,1/2) (-1,1) 36 /300

37.举例说明:为什么简单的加减法可以实现线性 分类 37 /300

38.参数 的更新 左上角的数据点被错误分类了 eta = 1/3 , W(0) = (0,1) W ==> W + eta * Z * X W_x = 0 + 1/3 *(-1) * (-1) = 1/3 W_y = 1 + 1/3 * (-1) * (1/2) = 5/6 W(1) = (1/3,5/6) 举例说明:为什么简单的加减法可以实现线性分类 38 /300

39.-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 first correction W(1) = (1/3,5/6) 举例说明:为什么简单的加减法可以实现线性分类 39 /300

40.参数 的更新 ( 继续 ) 左上角的数据 点还是被 错误分类了 W ==> W + eta * Z * X W_x = 1/3 + 1/3 *(-1) * (-1) = 2/3 W_y = 5/6 + 1/3 * (-1) * (1/2) = 4/6 = 2/3 W(2) = (2/3,2/3) 举例说明:为什么简单的加减法可以实现线性分类 40 /300

41.举例说明:为什么简单的加减法可以实现线性分类 41 /300

42.通过(基于数据点的)简单的加减法可以有效学习到“正确的”模型参数 最后 , 4 个数据点都可以正确分类 在 这个实例里,只需要更新 2 次 参数 在几何拓扑的层面上,参数的更新其实就是“分类超平面”的转向 举例说明:为什么简单的加减法可以实现线性 分类 42 /300

43.怎么提取相关特征 (Feature) Y 1 x 1 Y 2 x 2 Y 3 x 3 Y 4 x 4 Y 5 x 5 Y 6 x 6 Unigram features 43 /300

44.怎么 提取相关 特征 (Feature) Y 1 x 1 Y 2 x 2 Y 3 x 3 Y 4 x 4 Y 5 x 5 Y 6 x 6 Bigram features 44 /300

45.怎么 提取相关 特征 (Feature) Y 1 x 1 Y 2 x 2 Y 3 x 3 Y 4 x 4 Y 5 x 5 Y 6 x 6 Bigram features 45 /300

46.怎么 提取相关 特征 (Feature) Y 1 x 1 Y 2 x 2 Y 3 x 3 Y 4 x 4 Y 5 x 5 Y 6 x 6 Trigram features 46 /300

47.简单分类问题 感知器模型 (perceptron) 支持向量机模型 (support vector machine, SVM) 大纲 47 /300

48.二元分类器的新问题 48 /300

49.二元分类器的新问题 49 /300

50.二元分类器的新问题 50 /300

51.二元分类器的新问题 51 /300

52.二元分类器的新问题 感知器属于 大边界分类器 (large margin classifier) ,产生的结果可能是其中 任意一个分界线 52 /300

53.最大 边界理论( Maximum Margin ) 53 /300

54.最大边界理论( Maximum Margin ) 边界 上的这些数据点被称为支持向量 (support vectors) 这是支持向量机名字的由来 54 /300

55.从数据点 x i 到分界线的距离为 分界线的“ 边界 (margin) ” ρ 定义为支持向量之间的距离 最大 边界 理论 ( Maximum Margin ) 55 /300

56.最大边界理论:只有支持向量( support vectors) 是重要的,其它的非支持向量的数据点可以忽略 最大化边界思想在理论和直觉上都是一个比较好的选择 最大边界理论在众多的实际应用上,包括很多自然语言处理任务(文本分类等)都效果很不错 最大边界理论( Maximum Margin ) 56 /300

57.简单分类问题 感知器模型 (perceptron) 支持向量机模型 (support vector machine, SVM) 大 边界分类器和最大边界分类器 感知器属于 大边界分类器 (large margin classifier) , 学习 的 结果可能是其中 任意一个分界线 支持向量 机 SVM 属于 最 大 边界分类器 ( maximum margin classifier) , 学习 的结果是能产生最大边界的 一 个分界线 57 /300

58.非线性支持向量机 (Non-linear SVMs ) 较简单 的数据,线性分类可以很好地工作: 但是遇到这种比较困难的数据的话,应该怎么处理? 如果能够 把低维数据投射到高维空间 ,则能够很好地解决这些问题!而且可以 ( 在高维空间 ) 继续使用线性分类! 58 /300

59.主要思想: 寻找一种 通用而高效率 的方法,从而能够把低维空间的数据投射到高维空间,得以在高维空间进行线性分类,解决低维空间无法线性分类的问题。 非线性支持向量机 (Non-linear SVMs ) 59 /300

60.非线性 SVM 通过 核函数 (Kernel Function) 来 实现 具体 来说,线性 SVM 可以通过“点积” (dot product) 来实现 K ( x i ,x j )= x i T x j 核函数是一个特殊的函数,从而可以把点积扩展到 高维的特征空间 K ( x i ,x j )= φ (x i ) T φ ( x j ) 核函数举例 : 假设 2 维向量 x=[ x 1 x 2 ] ,我们可以使用核函数 K ( x i ,x j )=(1 + x i T x j ) 2 , 从而有如下等式 K ( x i ,x j )= φ (x i ) T φ ( x j ): K ( x i ,x j )=(1 + x i T x j ) 2 , = 1+ x i1 2 x j1 2 + 2 x i1 x j1 x i2 x j2 + x i2 2 x j2 2 + 2 x i1 x j1 + 2 x i2 x j2 = [1 x i1 2 √ 2 x i1 x i2 x i2 2 √ 2 x i1 √ 2 x i2 ] T [1 x j1 2 √ 2 x j1 x j2 x j2 2 √ 2 x j1 √ 2 x j2 ] = φ (x i ) T φ ( x j ), where φ (x) = [1 x 1 2 √ 2 x 1 x 2 x 2 2 √ 2 x 1 √ 2 x 2 ] 非线性支持向量机 (Non-linear SVMs ) 可见,该核函数把 2 维空间的点积扩展到了 6 维空间的点积,但是几乎没有增加计算量 ( 计算量只是很小的增加 ) 60 /300

61.常用的核函数举例 线性 核函数 Linear: K ( x i , x j )= x i T x j 多项式核函数 Polynomial: K ( x i , x j )= (1+ x i T x j ) p 高斯 RBF 核函数 Gaussian RBF (radial-basis function network): Sigmoid 核函数 Sigmoid: K ( x i , x j )= tanh ( β 0 x i T x j + β 1 ) 非线性支持向量机 (Non-linear SVMs ) 61 /300

62.也就是说 对于数据分布复杂的数据集,难以进行线性分类的,把低维空间数据投射到高维空间,从而在高维空间实现线性分类 无需显式地定义高维空间,只需要定义一个核函数就可以了,实现隐性的空间升维 核函数扮演了高维空间中的点积函数的功能 非线性支持向量机 (Non-linear SVMs) 62 /300

63.也就是说 对于数据分布复杂的数据集,难以进行线性分类的,把低维空间数据投射到高维空间,从而在高维空间实现线性分类 无需显式地定义高维空间,只需要定义一个核函数就可以了,实现隐性的空间升维 核函数扮演了高维空间中的点积函数的功能 非线性支持向量机 (Non-linear SVMs) 62 /300

64.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为 分类器的信息输入( 提取的特征) 直接 用 简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 NNP 64 /300

65.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 VBD 65 /300

66.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 DT 66 /300

67.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 NN 67 /300

68.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 CC 68 /300

69.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 VBD 69 /300

70.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 TO 70 /300

71.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 VB 71 /300

72.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 PRP 72 /300

73.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征 ) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 IN 73 /300

74.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 DT 74 /300

75.基于滑动窗口 (sliding window) 的简单分类方法 对每个观测量(词)进行独立的分类,使用周围的观测量(滑动窗口范围内的词)作为分类器的信息输入(提取的特征 ) 简单分类效果不好,因为无法考虑周围的标签信息(分类信息) 直接用简单分类方法会怎样? John saw the saw and decided to take it to the table. 分类器 NN 75 /300

76.标注偏置 问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 0.4 0.6 0.2 0.2 0.2 0.2 0.2 0.45 0.55 0.2 0.3 0.1 0.1 0.3 0.5 0.5 0.1 0.3 0.2 0.2 0.2 76 /300

77.标注偏置问题 (label bias problem) 0.4 0.6 从局部的概率转移情况可以看到 : 标签 1 总是倾向于转移到标签 2 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 77 /300

78.0.4 0.6 0.45 0.55 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 从局部的概率转移情况可以看到 : 标签 1 总是倾向于转移到标签 2 78 /300

79.0.4 0.6 0.45 0.55 0.5 0.5 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 从局部的概率转移情况可以看到 : 标签 1 总是倾向于转移到标签 2 79 /300

80.0.4 0.6 0.2 0.2 0.2 0.2 0.2 0.45 0.55 0.5 0.5 从局部的概率转移情况可以看到 : 标签 1 总是倾向于转移到标签 2 标签 2 总是倾向于转移到标签 2 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 80 /300

81.0.4 0.6 0.2 0.2 0.2 0.2 0.2 0.45 0.55 0.2 0.3 0.1 0.1 0.3 0.5 0.5 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 从局部的概率转移情况可以看到 : 标签 1 总是倾向于转移到标签 2 标签 2 总是倾向于转移到标签 2 81 /300

82.0.4 0.6 0.2 0.2 0.2 0.2 0.2 0.45 0.55 0.2 0.3 0.1 0.1 0.3 0.5 0.5 0.1 0.3 0.2 0.2 0.2 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 从局部的概率转移情况可以看到 : 标签 1 总是倾向于转移到标签 2 标签 2 总是倾向于转移到标签 2 82 /300

83.0.4 0.6 0.2 0.2 0.2 0.2 0.2 0.45 0.55 0.2 0.3 0.1 0.1 0.3 0.5 0.5 0.1 0.3 0.2 0.2 0.2 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 根据局部的 概率转移 情况,可得到 局部最优 的标签序列: 1  2  2  2 (0.6 x 0.3 x 0.3 = 0.054) 而实际上, 全局最优 的标签序列是 : 1  1  1  1 ( 0.4 x 0.45 x 0.5 = 0.09 ) 83 /300

84.0.4 0.6 0.2 0.2 0.2 0.2 0.2 0.45 0.55 0.2 0.3 0.1 0.1 0.3 0.5 0.5 0.1 0.3 0.2 0.2 0.2 根据局部的 概率转移 情况,可得到 局部最优 的标签序列: 1  2  2  2 (0.6 x 0.3 x 0.3 = 0.054) 而实际上, 全局最优 的标签序列是 : 1  1  1  1 ( 0.4 x 0.45 x 0.5 = 0.09 ) 标注偏置问题 (label bias problem) 标签 1 标签 2 标签 3 标签 4 标签 5 观测 1 观测 2 观测 3 观测 4 84 /300

85.( 全局 ) 序列标注 模型 能够 对序列标注问题进行一个 全局的建模 ,并确定一个 全局最优的决策 。从而解决局部最优导致的问题,例如标注 偏置问题 常用的 ( 全局 ) 序列标注模型 隐马尔可夫模型 Hidden Markov Model (HMM) 结构化感知器 Structured Perceptron 条件随机场 conditional random fields ( 全局 ) 序列标注模型 85 /300

86.NLP 的总体介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档分类 NLP 的典型 任务简介 问答系统 、 情感分析 、 自然语言生成 NLP 的前沿 研究进展:自然语言生成面对的主要挑战 内容安排 86 /300

87.NLP 的深度学习方法 语义表示:词向量 反向传播:前馈神经网络 机器翻译:循环神经网络 句法分析:递归神经网络 文档分类:卷积神经网络

88.如何表示一个词的含义 ? Webster dictionary 中 meaning 的定义 The idea that is represented by a word, phrase, etc. The idea that a person wants to express by using words, signs, etc. The idea that is expressed in a work of writing, art, etc. 传统的 NLP 方法:词是离散表示的 动机 88 /300

89.在传统的 NLP 方法中,词是 原子性 的符号 在运算中一般表示为一个向量,一般称为 one-hot 表示 只有一个 1 , 很多很多 0 问题:维度爆炸 口语: 2 万 PTB : 5 万 词表 : 50 万, Google 1T : 1300 万 动机 89 /300

90.在传统的 NLP 方法中,词是原子性的符号 在运算中一般表示为一个向量,一般称为 one-hot 表示 只有一个 1 , 很多很多 0 问题:没有含义! 没有含义信息,词与词的计算是没有意义的 动机 90 /300

91.改进:使用共现矩阵 (co-occurrence matrix) 示例语料 I like deep learning. I like NLP. I enjoy flying. 动机 91 /300

92.改进:共现矩阵 (co-occurrence matrix) 问题 随词典大小增大而增大 高维度:需要大量存储空间 后续的分类模型会有数据稀疏问题 (data sparsity) 模型不强健 (robust) 如何解决这个问题? 动机 92 /300

93.词向量:使用低维向量来表示一个词 用固定大小且较少的维度来存储“大多数”重要的信息 通常在 25-1000 维 向量是密集的 如何缩减维度? 不同的方法会产生不同类别的词向量 word2vec , CBOW , GloVe 等 解决方案 93 /300

94.主要思想 预测每个词的周围词 而不是直接计数共现信息 Word2Vec 和 GloVe 的思路很相似 Glove: Global Vectors for Word Representation Pennington et al. 2014 and Levy and Goldberg 2014 更快 易于合入新的句子 / 文章或增大词典 Word2Vec :思路 94 /300

95.预测每个词周围窗口为 m 内的词 目标函数 : 给定一个词,最大化 大小为 m 内的窗口内的 词的概率 是我们要优化的参数   Word2Vec :细节 95 /300

96.我们需要最优化我们的目标 / 代价函数 对于该问题要最小化 最小化→梯度下降法 例子 Word2Vec :参数更新 96 /300

97.梯度下降法的直观表示 对于一个简单的两个参数的凸函数 轮廓线表示目标函数的不同值 Word2Vec :参数更新 97 /300

98.词向量 非常善于 编码相似性 相似性检验可以直接通过在词向量空间中进行向量相减完成 结果也不错 语法 对于动词和形容词变化也类似 语义 ( Semeval 2012 task 2) 词向量 :特点 98 /300

99.词向量间有线性关系 [ Mikolov et al., 2014] Word2Vec 99 /300

100.距离相近的词向量有相似的语义 [Pennington et al., 2014] GloVe :距离 frog 最近的 词 100 /300

101.GloVe 线性关系: 亲属 [Pennington et al., 2014] GloVe 可视化 101 /300

102.GloVe 线性关系: 公司与 CEO [Pennington et al., 2014] GloVe 可视化 102 /300

103.GloVe 线性关系: 形容词 - 比较级 - 最高级 [Pennington et al., 2014] GloVe 可视化 103 /300

104.代替原有的 one-hot 作为模型的输入 可以在大语料上预训练,获得有用的信息,对模型有益 embedding matrix 也叫 look-up table 概念上,通过 L 左乘一个 One-hot 向量 e(of length |V|) 就可以得到一个词向量 词向量的用途 104 /300

105.优势: 可以通过反向传播在训练过程中更新 可以通过神经网络传播任何信息到词向量 词向量的用途 105 /300

106.优势: 可以通过反向传播在训练过程中更新 可以通过神经网络传播任何信息到词向量 词向量的用途 105 /300

107.神经网络有一套自己的 术语 正如 SVMs 如果你理解 Logistic regression 模型的原理 你 已经理解 一个神经网络中的神经元的操作 简介神经网络 107 /300

108.神经元:一个 logistic regression 单元 神经元: 一个 logistic regression 单元 一 个非线性激活函数 108 /300

109.多叠加几次,我们就有了一个多层神经网络 神经网络 109 /300

110.神经网络:矩阵表示 110 /300

111.例子:函数拟合,如回归或分类 没有非线性,深度神经网络只能进行线性变换 更多的层数可以直接由一个单一的线性变换完成 层数更多,他们可以拟合更复杂的函数 神经网络:非线性 111 /300

112.一 层是一个线性层和非线性的组合:前馈计算 这样的一层有很多名字 全连接层、前馈层 这样的网络也有很多名字 前馈神经网络、全连接网络、多层感知器 神经元最后的激活值 a 可以进一步用来计算 例如, softmax 概率或者一个未归一化的分数 神经网络 112 /300

113.我们计算了所有变量的梯度 这基本就是反向传播 算导数、用 chain-rule ! 剩下 的窍门 算低层 梯度 时复用高层梯度 例子 模型最后一个导数: x 中的词向量   反向传播 (Backpropagation) 113 /300

114.反向传播:另一种解释 简单路径的链式法则 114 /300

115.反向传播:另一种解释 两条路径的链式法则 115 /300

116.反向传播:另一种解释 多条路径的链式法则 116 /300

117.计算流图中的链式法则 计算流图:有向无环图,结点为计算结果,边为计算依赖 反向传播:另一种解释 117 /300

118.多 层神经网络的反向传播 根据计算流图反复应用链式法则 反向传播:另一种解释 前向传播 按照拓扑序计算每个节点 反向传播 最终的梯度为 1 按照拓扑序的反序计算每个节点的梯度 118 /300

119.自动求导 神经网络库的基础 反向传播:另一种解释 根据前向的计算, 可以自动 推断对应的梯度计算 每个节点规定 如何根据输入求得输出 如何根据输出的梯度求得输入的梯度 对于原型设计而言是简单且迅速的 119 /300

120.最早使用的非线性函数 提示与 技巧: 非线性函数 120 /300

121.tanh vs. sigmoid 初始化:接近 0 实际中更快收敛 漂亮的导数 目前最广泛: rectifier 使用 rectifier 的神经元一般 称为 Rectified Linear Unit ( ReLU ) 极 低的计算量 实际中在视觉领域效果更好   提示与 技巧:非线性 函数 121 /300

122.参数优化 梯度下降:每次更新使用所有样例的总梯度 随机梯度下降:每次只使用一个或几个样例 一般的更新规则: J 是当前样例的损失 / 代价函数, 是参数, 是学习率 普通梯度 下降法是全批量方法 非常慢,勿用。使用 2 阶的批量方法,如 L-BFGS 。 随机梯度下降法 (SGD) vs 全批量梯度下降法 (GD) 在大规模数据上, SGD 通常胜过所有 GD 方法 在一些较小数据上, L-BFGS 或 Conjugate Gradients 更好   提示与 技巧: 参数 优化 122 /300

123.SGD 的改进: Momentum 增加一部分之前的更新量到当前更新 当梯度一直指向同样的方向时,这会加快到达极小点的步伐 当动量很大 时,减小学习率 更新规则: 初始为 0 ,一般 取 0.9 动量过几轮后通常会增大 (0.5->0.99)   提示与 技巧: 参数 优化 123 /300

124.直观理解 Momentum 增加部分 (momentum misnomer) 参数修改会形成在持续梯度方向 的速度 简单凸函数的优化 过程 提示与 技巧: 参数 优化 124 /300

125.直观理解 Momentum 增加部分 (momentum misnomer) 参数修改会形成在持续梯度方向 的速度 简单凸函数的优化 过程 提示与 技巧: 参数 优化 124 /300

126.语言模型 最早的神经语言模型 (neural language model) A Neural Probabilistic Language Model, Bengio et al. 2003 通过神经网络估计 n-gram 语言模型中的条件概率 模型 是参数矩阵, 问题:固定的上下文窗口   126 /300

127.循环神经网络 循环神经网络 (recurrent neural network) 循环:每个时间点使用 相同的 参数 输入增加之前的网络输出 让神经网络以之前所有的词为条件 一 个词的计算包含 之前所有词 的 信息! 127 /300

128.语言模型 RNN 语言模型 给定一个词向量序列 在每个时刻 计算   128 /300

129.语言模型 RNN 语言模型 参数含义 每个时刻使用相同的 W 是 时刻时的输入对应的词向量 时刻 时的隐层表示 需要使用 ,可以初始化为 0 向量,也可以作为参数学习 是一个 词典中词的 概率分布   129 /300

130.机器翻译 目前一般是统计方法 使用平行语料 European Parliament 第一个平行语料 Rosetta Stone -> 传统系统 (SMT ) 非常复杂 130 /300

131.机器翻译: SMT 第一 步:对齐 (Alignment) 很难 131 /300

132.机器翻译: SMT 第一步:对齐 (Alignment) 一节 课也讲不完 不只是单个词的对齐,还可以 有 短语、语法的对齐 然后考虑翻译后短语的重排序 132 /300

133.机器翻译: SMT 第 n 步:解码 源语言中的每个短语都有很多种可能的翻译 形成一个很大的搜索空间 133 /300

134.机器翻译: SMT 第 n 步: 解码 寻找最优的序列 一个困难的搜索问题,也包含语言模型 134 /300

135.机器翻译: SMT 之前只说了几个问题 略过 了不少重要的细节 实际的 SMT 系统 包含很多特征工程 非常复杂的系统 很多不同、独立的机器学习问题 135 /300

136.神经机器翻译 (neural machine translation) 用 RNN 来翻译? 序列到序列模型 (Sequence-to-sequence) 机器翻译: NMT 136 /300

137.机器翻译: NMT 一个最简单的 RNN 翻译模型 编码器 (Encoder) :使用 RNN 获得一个固定长度的表示 解码器 (Decoder) : RNN 语言模型,与 Encoder 相同参数 目标 : 最小化所有目标词在原词上的负对数似然 其实没这么简单   137 /300

138.机器翻译: NMT 扩展 1 : 编码器、解码器的网络使用不同的参数 138 /300

139.机器翻译: NMT 扩展 2 : 解码器每个时间点的输入包含前一个输出的词 解码器每个时间点的输入都可以包含编码器的输出 解码器的计算 前一 个隐状态 (标准) 编码器 最后隐向量 前一个预测的输出词   139 /300

140.扩展 2 : 另一 种画法 机器翻译: NMT 140 /300

141.机器翻译: NMT 扩展 3 :训练堆叠 / 深层的 RNN 扩展 4 :训练双向的编码器 扩展 5 :颠倒源语言句子 训练 C B A -> X Y ,而不是 A B C -> X Y 141 /300

142.机器翻译: NMT 扩展 6 :使用更加复杂的循环计算方法 最主要的扩展 长短时记忆 网络 ( Long-short-term Memory, LSTM) 门控循环单元 (Gated Recurrent Units, GRU) Cho et al. 2014 主要思路 保留长时记忆,以捕捉长距离信息 允许误差信息根据输入以不同的程度进行传递 142 /300

143.结果比较 ( 至 2015) 机器翻译: NMT 143 /300

144.结果比较 ( 至 2015) 机器翻译: NMT 143 /300

145.句法分析(短语结构)的目标 获得一颗句法树 递归 神经网络:句法分析 145 /300

146.递归神经网络的目标 获得一个句法树的结构 每个结点有对应的向量表示 递归 神经网络 :句法分析 146 /300

147.递归 神经网络 :句法分析 输入 : 两个候选子节点的表示 输出:如果两个节点合并 语义表示 新节点的得分:用来判断是否要合并 147 /300

148.模型: 表示: 分数: 每个结点的计算都使用 相同的 W 和 u   递归神经网络:句法分析 148 /300

149.递归神经网络:句法分析 实验结果 标准 WSJ 分割, labeld F1 基于一个简单 PCFG ,且使用更少状态 搜索空间 Fast pruning ,减少矩阵向量乘积 比 Stanford factored parser 提高 3.8% ,快 20% 149 /300

150.递归神经网络: 场景 分析 场景 分析 (Scene Parsing) 同样是复合性原理 一个场景图片的含义是以下的函数 更小的子区域 如何组合成更大的对象 对象间如何作用 150 /300

151.递归神经网络:场景分析 算法: 与自然语言分析同样使用 Recursive Neural Network 151 /300

152.图片的多分类划分 与自然语言分析同样使用 Recursive Neural Network 递归神经网络:场景分析 152 /300

153.NLP 的深度学习方法 语义表示:词向量 反向传播:前馈神经网络 机器翻译:循环神经网络 句法分析:递归神经网络 文档 分类:卷积神经网络

154.卷积神经网络 RecursiveNN : 只获取 合理短语 的复合向量 NLP 中的 CNN :计算 所有 可能的片段 的向量 无论是否是合理的 不需要句法分析器 在语言学或认知学上看似并不可行 例子 : “the country of my birth ” the country, country of, of my, my birth, the country of, country of my, of my birth, the country of my, country of my birth 154 /300

155.卷积神经网络 卷积 运算:对输入重复应用加权 求和 一般的 1 维离散变量卷积的公式 以 M 为窗口内两个函数的复合 f ,与相关的词有关 g, 与位置有关 卷积特别擅长从图像中提取特征 2 维例子 黄色 : filter weights 绿色: inputs   155 /300

156.卷积神经网络 第一 层:计算所有 bigram 的向量 计算与 RecursiveNN 中相同 可以解释为对于词向量的卷积 156 /300

157.卷积神经网络 更 高层:多种计算方式可以选择 选择 1(naïve 的选择 ) : 便于理解但不一定是最好的 重复第一层,但使用不同的权重 157 /300

158.卷积神经网络 更 高层:多种计算方式可以选择 选择 1(naïve 的选择 ) : 便于理解但不一定是最好的 重复第一层,但使用不同的权重 158 /300

159.选择 2( 主流的选择 ) : 池化操作 (pooling) 将得到多个向量合并为一个向量 由 Collobert and Weston 2011 和 Kim 2014 首先应用于 NLP Convolutional Neural Networks for Sentence Classification 卷积神经网络   159 /300

160.卷积神经网络 模型: 一 层 CNN+ 一个池化层 词向量: 句子 : (向量拼接) 是词的拼接 卷积核: ,窗口为 h h 大于 2 或更高,如 3 注意:这里卷积核是向量 计算 CNN 层的 特征   160 /300

161.卷积神经网络 池化层 (Pooling layer) 这里介绍的是最大池化层 (max pooling) 想法:捕捉最重要的 activation feature map 取最大值 Pooled : 但我们想要更多的特征!   161 /300

162.卷积神经网络 使用多个卷积核 窗口大小相同的 h 可以组合为一个矩阵 可以使用不同大小的窗口 因为有池化层,窗口的大小并不影响下一层的输入维度 下一层输入的维度就是卷积核的个数 我们可以用不同的卷积核来观察 unigrams, bigrams, trigrams, 4-grams, … 162 /300

163.卷积神经网络 CNN 应用于 文档分类 首先一个卷积,然后一个最大池化 得到最后的特征向量 假设有 m 个 filter w 如何进行分类? 简单的 softmax 层   163 /300

164.在分类任务上的结果 Kim 2014 卷积神经网络 164 /300

165.技巧: Dropout 想法 : 随机选取一些特征 z 设为 0 建立一个 mask 向量 r ,元素为 Bernoulli 随机变量,为 1 的概率为 p( 超参数 ) 在训练中删除特征 原因:预防 co-adaptation 避免特定的特征组合导致过拟合   165 /300

166.技巧: Dropout 在训练中,反向传播只经过 z 中那些为 r 为 1 的元素 在测试时,没有 dropout , z 变大 因而,我们缩放最终的向量 p 倍 实际中也可在训练中前向计算时将输出变为 p 倍 ,测试时不变 Kim (2014) reports 2 – 4% improved accuracy and ability to use very large networks without overfitting   166 /300

167.NLP 的总体介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档分类 NLP 的典型 任务简介 问答系统 、 情感分析 、 自然语言生成 NLP 的前沿 研究进展:自然语言生成面对的主要挑战 内容安排 167 /300

168.NLP 的典型 任务简介 问答系统 情感分析 自然语言生成

169.问答系统 (Question Answering Systems) 简介 资源与评价 基于知识的问答系统 (Knowledge-based Approaches) 构建问题的语义表示 (Semantics Parsing) 基于语义表示构建查询 (Query Mapping) 基于语料的问答系统 (Corpus-based Approaches) 问题处理 (Question Processing) 段落 检索 (Passage Retrieval) 答案 处理 (Answer Processing) 内容 169 /300

170.问答是人类获取知识的基本方式之一 How many provinces did the Ottoman empire contain in the 17 th century? (The answer is 32) What part of the atom did Chadwick discover? (The answer is the neuron) 日常语言交流大多也属于问答范畴 Which restaurants in Manhattan serve good Chinese food? Do you use a or an before an abbreviation starting with L? 问答系统 – 简介 170 /300

171.问答系统 (Question Answering Systems) 在 NLP 中指一个自动化的系统 以自然语言回答以自然语言形式提出的问题 跨学科领域 问答系统 – 简介 信息抽取 自然语言处理 人工智能 数据库 软件工程 语言学 语义网 关系数据 171 /300

172.两者的目标均是获取信息,但有不同 信息检索:查询驱动 用户查询的输入为 关键字 系统返回 一系列文档 :文档相关即可 用户需要自行从中查找需要的内容 问答系统:答案驱动 用户查询的输入为 问题 :自然语言查询 系统返回 精确答案 实现更为复杂、更为复杂的信息需求 问答系统 与 信息检索 172 /300

173.搜索引擎在逐渐向问答系统发展 三种查询类型 Informational: 查询数据或信息 the user is looking for a specific bit of information e.g.: 2018 年校庆活动安排 Navigational: 查询网址 The user is looking to reach a particular website e.g.: 北大设备部网址 Transactional: 查询资源 the user wants to get to a website where there will be more interaction e .g.: 北大毕业典礼视频下载 Google 中实际的信息类查询 Who first invented rock and roll music? When was the mobile phone invented? Where was the hamburger invented? How to lose weight? 问答系统 与 信息检索 Type of query Query log analysis Informational 48% Navigational 20% Transactional 30% 173 /300

174.搜索引擎在逐渐向问答系统发展 不仅仅是信息检索系统 问答系统 与 信息检索 174 /300

175.搜索引擎在逐渐向问答系统发展 但稍微复杂的问题便不能回答 问答系统 与 信息检索 175 /300

176.问答系统可以根据不同标准划分为多种 根据问题 / 答案类型 事实型 : factoid, when, who, where 是否型 : yes/no, is … ? 定义型 : definition, what is 因果型 : cause/consequence, how, why, what 过程型 : procedural, what are the steps 比较型 : comparative, what are the differences between 示例型 : with examples, list of hard disks similar to hard disk 观点 型 : opinions, what is the opinion of 摘要型 : summaries, what are the arguments for and against 问答系统的分类 176 /300

177.问答系统可以根据不同标准划分为多种 根据问题 / 答案类型 ( 简化版 ) 简单事实问题 (simple factoid questions) 大多数商用系统,答案简短通常为一个命名实体 Who wrote the Declaration of Independence? 复杂叙述问题 (complex narrative questions) 答案略长,为完整的句子 What is a Hajj? 复杂观点问题 (complex opinion questions) 关于观点 / 意见,需要整理阐述 Was the Gore/Bush/Trump election fair? 问答系统的分类 177 /300

178.问答系统可以根据不同标准划分为多种 根据问题 / 答案类型 根据问题言语行为 ( 问题的表达形式 ) 是否型 : yes/no, is it true that WH 型 : wh , who was the first president 间接请求 : indirect requests, I would like you to list 命令 : commands, name all the presidents 问答系统的分类 178 /300

179.问答系统可以根据不同标准划分为多种 根据问题 / 答案类型 根据问题言语行为 ( 问题的表达形式 ) 根据应用场景 封闭领域问答 : Close D omain QA 开放领域问答 : O pen Domain QA 单 文档问答 : Single Document QA 也 称阅读理解 (Reading Comprehension) 社区问答 : Community QA 如知乎、 Quora 问答系统的分类 179 /300

180.问答系统可以根据不同标准划分为多种 根据问题 / 答案类型 根据问题言语行为 ( 问题的表达形式 ) 根据应用场景 根据技术方案 基于信息检索 / 语料 (IR-based/Corpus-based) 基于知识 (Knowledge-based) 混合方法 IBM Watson ( DeepQA ) 问答系统的分类 180 /300

181.问题种类繁多、千奇百怪 问题为自然语言表述、形态各异 数据来源广泛、超大规模 自然语言理解技术本身挑战 …… 至今仍是复杂系统 大量的子任务 深度学习可能擅长每个子任务,但整合代价极高 深度学习可以做端到端问答 实际上,较为成功的仅有阅读理解和极小文档集简单问答 问答系统 的 难点 181 /300

182.结构化数据 关系型 (relational) 数据库 表 ( 表 中内容被称为关系 ) SQL 数据库 RDF(Resource Description Framework) 数据 库 三元组 ( 实体 - 关系 - 实体 ) ,本体知识库 Freebase, DBPedia , wikidata 半结构化数据 XML 数据库 纯文本 (free text) 多模态数据:图片、语音、视频 问答系统的答案来源 182 /300

183.基于知识的 方法 构建问题的语义表示 基于语义表示构建 查询 基于信息检索 / 语料库的方法 问题分析 ( 分类、模板匹配、语义分析 ) 段落检索 ( 段落抽取、排序 ) 答案抽取 ( 实体识别、模板匹配、排序 ) 基于社区问答的方法 问题:问题分类、问题推荐、问题排重 用户:专家发现、信誉评估 答案:质量评估、答案整合 主要研究内容 183 /300

184.问答系统 (Question Answering Systems) 简介 资源与评价 基于知识的问答系统 (Knowledge-based Approaches) 构建问题的语义表示 (Semantics Parsing) 基于语义表示构建查询 (Query Mapping) 基于语料的问答系统 (Corpus-based Approaches) 问题处理 (Question Processing) 段落 检索 (Passage Retrieval) 答案 处理 (Answer Processing) 内容 184 /300

185.基本框架 下面简单介绍 知识库定义 及其一般的 构建方法 问题理解的方法: 语义分析器 (semantic parser) 基于知识的方法 185 /300

186.本体知识库 信息科学中 的本体 定义 对 特定领域之中某套概念及其相互之间关系的形式化表达 依据 某种类别体系,来表达实体、概念、事件及其属性和相互 关系 例子: Freebase ( Bollacker et al. 2008) 、 Dbpedia ( Bizer et al., 2009) ,均为 RDF 类型数据库 一般而言,关系型数据库不被视为本体知识库:不含有形式化 语义 构建:一般从 Wikipedia Infoboxes 中抽取三元组 例子: 基于知识的 方法 - 知识库 Subject Predicate Object AdaLovelace Birth-year 1815 186 /300

187.问题理解的目标 将自然语言形式的问题转换 为特定 逻辑 形式 (logical from ) 之后可以根据该逻辑形式进行知识库查询 例子:简单的逻辑形式 (?x 表示要得到的内容 ) 例子:多样的逻辑形式、对于 RDF 知识库一般形式为最后一种 一般使用语义分析器 (Semantic Parser) 完成 基于知识的 方法 - 问题理解 When was Ada Lovelace born? Birth-year(Ada Lovelace, ?x) What is the capital of England? Capital-city(?x, England) 187 /300

188.问答系统 (Question Answering Systems) 简介 资源与评价 基于知识的问答系统 (Knowledge-based Approaches) 构建问题的语义表示 (Semantics Parsing) 基于语义表示构建查询 (Query Mapping) 基于语料的问答系统 (Corpus-based Approaches) 问题 处理 (Question Processing) 片段检索 (Passage Retrieval) 答案 处理 (Answer Processing) 内容 188 /300

189.基于语料的方法一般只针对事实型问题 目标: 从网页或其它 文档集 中 找 到可以回答问题的 文本片段 基于语料的方法 189 /300

190.基本框架 : 借助信息检索的方法,查找最佳解答 三个阶段 问题处理:确定 问题类型 、 形成 合适 的 关键词 查询 片段 检索 :检索获得 top 文档、 拆分 文档为合适单位 答案处理:得到候选答案、 排序 选出最佳 基于语料 的方法 190 /300

191.问题处理 (Question Processing) 主要任务 1. 确定答案类型 (Answer Type Detection) 答案 类型:答案中实体的类型,人、地点、时间等 2. 形成查询 (Query Formation) 信息检索时要使用的关键词 3. 焦点提取 (Focus Detection) 例子: Which U.S. state capital has the largest population? Answer type: city Query: US state capital, largest, population Focus: state capital 基于语料的 方法 - 问题 处理 191 /300

192.2. 形成查询 从问题中获得用来检索的 关键词列表 示例: 基于语料的 方法 - 问题处理 192 /300

193.答案处理 (Answer Processing) 从筛选出的 片段 中抽取答案 示例: How tall is Mt. Everest? 两类算法 1. 模式抽取 (Answer-type pattern extraction) 2.N-gram tiling :从小粒度的单词拼接为完整答案 基于语料的 方法 - 答案处理 29,029 feet 193 /300

194.集大成者 构建问题的浅层语义表达 (shallow semantic representation) 用信息检索方法来产生候选答案 利用本体和半结构化数据 用更多的 knowledge source 来为候选答案计算分数 Geospatial databases Temporal reasoning Taxonomical classification Watson Project 194 /300

195.集大成者 Watson Project 195 /300

196.Hardware Cluster of 90 IBM Power 750 servers in 10 racks Watson system has 2880 POWER processor threads and has 16 terabytes of RAM, cost about USD $3 million Data Encyclopedias, dictionaries, thesauri, newswire articles, and literary works Databases, taxonomies, and ontologies such as DBPedia , WordNet, and Yago Software DeepQA software and the Apache UIMA framework The system was written in various languages, including Java, C++, and Prolog, runs on SUSE Enterprise using Apache Hadoop More than 100 different techniques are used People Led by Dr. David Ferrucci with 46 people (research, PM, annotation, system, strategy team) Watson Project :系统十分庞大 196 /300

197.NLP 的典型任务简介 问答系统 情感分析 自然语言生成

198.概述 情感分类 观点抽取 内容 198 /300

199.Web 2.0 互联网文本大数据 规模 庞大、类型多样 时效性、多语言 文本信息的类型 事实 型 (facts) 大多数信息处理技术面向这类文本 观点 型 (opinions) 情感分析、观点抽取面向的文本 简介 199 /300

200.Sentiment Analysis 一般被译作情感分析 但要准确理解这里情感的含义 Sentiment Oxford: 1. a feeling or an opinion , especially one based on emotions ( 基于情感的)观点,看法; 情绪 Collins: 1. A sentiment that people have is an attitude which is based on their thoughts and feelings ( 基于思想或情感的 ) 态度, 情绪 2. A sentiment is an idea or feeling that someone expresses in words ( 用言辞表达的 ) 见解, 感想 可以有 极性: 积极、消极、中性; 程度: 强烈、平和 Sentiment vs. Emotion 200 /300

201.Emotion Analysis 较少用,似可以译为感情分析 以与 Sentiment Analysis 区分 Emotion Oxford: 1 . a strong feeling such as love, fear or anger; the part of a person‘s character that consists of feelings 强烈 的感情;激情;情感; 情绪 Collins: 1 . An emotion is a feeling such as happiness, love, fear, anger, or hatred, which can be caused by the situation that you are in or the people you are with 情感;情绪 可以有 开心、恐惧、愤怒、悲伤等 Sentiment vs. Emotion 201 /300

202.互联网上有海量的观点 文本 观点对于决策十分重要 个人:朋友、家庭的观点,直接询问 商务:用户的观点,需要调查、咨询 互联网上大量用户生成内容、表达对任意事物的观点 例如:购物评论、微博文本 辅助个人和商务决策参考 舆情监督 背景 202 /300

203.用户需求分析与精准营销 IBM 利用软件分析微博发文,从语言习惯以及情感色彩等方面相当准确 地推断 出使用者的人格 特征 研究显示,人格特征确实可以用来预测消费者会购买什么样的东西,但 民众 不可能主动接受人格测验,只为了方便营销部门更好的入侵他们的 生活 “许多企业在线营销效果不佳,主要原因是它们几乎都以消费者年龄、 性别 等人口组成分类来理解客户,但 真正重要的是应该找出客户的 ‘深层心理侧写’ ,包括他们的人格特质、价值观和需求 等。 ” - IBM 艾曼登研究中心主管 Eben Haber 应用 203 /300

204.概述 情感分类 观点抽取 内容 204 /300

205.将文本按照 所表达的总体情感 进行 分类 例如 :正面 (Positive), 负面 (negative), (possibly ) 中性 (neutral) 与 基于话题的文本分类相似又 不同 对于 基于话题的文本分类 , 话题词汇很重要 情感 分类中,情感词汇更加 重要 例如 : great, excellent , horrible, bad, worst, etc. 情感分类 205 /300

206.主客观分析 (subjectivity classification) 客观:反映关于世界的事实 信息,例如 苹果手机是苹果产品 主观:反映个人感受、观点或信念 等,例如 他喜欢苹果手机 主客观 vs. 观点性 有的主观句不表达情感或观点 例如 : I think that he went home 有 的客观句暗示情感或观点(隐式观点) 例如 : The earphone broke in two days. 又 如: I bought the mattress a week ago and a valley has formed. 任务 206 /300

207.倾向性分析 (sentiment/polarity classification) 对包含观点的文本进行倾向性 判断 一般分为三类 积极:“外观漂亮” 消极:“设计审美有缺陷” 中性:“设计师来自法国” 一些评测中不考虑中性:非观点句、非主观句 粒度 / 层次 词的倾向性 句子的倾向性 文档的倾向性 任务 207 /300

208.英文资源较多 情感词典多: SentiWordNet , Inquirer 包含词语、短语 倾向性和主观性分别标注 语料库数量多 Stanford Sentiment Treebank IMDB M ovie Review Amazon/Yelp Review 开源工具 OpinionFinder 资源 208 /300

209.中文资源较少 情感词典 Hownet : 部分情感词汇 语料库 NLPCC , COAE , NTCIR 资源 209 /300

210.情感词典: SentiWordNet 资源 极性:好、坏 主观性:多、少 例子: estimable ,三个词义 210 /300

211.利用 Web 获取标注 语料 利用用户打分获取产品评论 倾向 利用表情 符号 获取文本 倾向 情感语料的构建 211 /300

212.基于规则的方法 利用情感词典、 模板 基于机器学习的方法 利用标注 语料 混合 方法 层级: 文档:文档作为整体的倾向性 句子:文档级别对很多应用并不适用,单句情感可能与文档整体不同 很多工作侧重从新闻文档中识别主观句 情感分类方法 212 /300

213.Pang and Lee, 2002 [NAACL 2018 Test-of-Time Award] 看作是特殊的文本分类 任务 文档采用标准的 特征 ( 离散 ) 向量 表示 实验 : IMDB 三 种分类器:朴素贝叶斯、最大熵、支持向量机 文档 情感 分类 - 基于分类器 方法 213 /300

214.基于递归神经网络的方法 Socher et al. 2013 ,一系列方法 考虑句法结构,人工标注了 treebank (左图) 短语与句子的分类,通过神经网络获取向量表示 (右图) 情感 分类 - 深度学习方法 214 /300

215.基于 CNN 的方法 CNN [Kim 2014] DCNN [ Blunsom el at. 2014] 不 考虑句法结构信息 卷积操作 ( 词序列特征 ) 池化操作 ( 判别性特征 ) 情感 分类 - 深度学习方法 215 /300

216.传统的情感分析的对象几乎都是评论 电影评论: IMDB , Stanford SST 商品评论: Amazon 服务评论: Yelp 随着社交媒体的兴起,面向社交媒体的情感分析逐渐兴起 SemEval 和 NLPCC 近些年的 shared task 都必包含这一任务 社交媒体情感分析的实用价值更大 商业应用 社会学研究 舆情 监测 面向社交媒体的情感分析 216 /300

217.产品 / 电影评论:效果较好,可实用 社交媒体:相当困难 不 规范:英文中拼写不规范,中文中错字、白字 Twitter: good gud goood goooooooood qood gudd guud g00d goodd 反 讽 (sarcasm) 他可是高兴了! 与对象关联才有意义,需要抽取情感针对的对象 (aspect) 我支持强化金融监管,支持约束金融创新 我反对放松金融监管,反对促进金融创新 监管:积极 创新:消极 面向社交媒体的情感分析 - 难点 217 /300

218.尽管难点重重,但社交媒体也有其独特的可用线索 表情符号 Emoticons: ( *^_^*) Emoji: 😄 Hashtag/ 话题 # 深度学习 # 炼中药 回复与评论 转发、收藏、点赞 社交网络的关系 f ollowers 、 @xx 面向社交媒体的情感分析 218 /300

219.利用 tweet 之间的关系(转发、回复等)进行针对某一对象的情感分析 [Jiang et al. 2011] 启发式规则 “相邻”的 tweet 有一致的情感类别 “相邻”的定义 同 一用户发布的 转发 (retweet) 回复 (reply) 使用基于图的方法进行迭代计算 一 个 tweet 的情感由其本身的情感和其相邻 tweet 的情感决定   面向社交媒体的情感分析 - 方法 219 /300

220.概述 情感分类 观点抽取 内容 220 /300

221.示例 I bought an iPhone a few days ago. It was such a nice phone. The touch screen was really cool. The voice quality was clear too. Although the battery life was not long, that is ok for me. However , my mother was mad with me as I did not tell her before I bought the phone. She also thought the phone was too expensive, and wanted me to return it to the shop. …” 内容 观点 (opinions) 、观点对象 (targets of opinions) 、观点持有者 (opinion holders) 观点抽取 221 /300

222.示例 I bought an iPhone a few days ago. It was such a nice phone. The touch screen was really cool . The voice quality was clear too. Although the battery life was not long , that is ok for me . However , my mother was mad with me as I did not tell her before I bought the phone. She also thought the phone was too expensive , and wanted me to return it to the shop. …” 内容 观点 (opinions) 、 观点对象 (targets of opinions) 、 观点持有者 (opinion holders) 观点抽取 222 /300

223.观点的 组成 观点 持有者 (Opinion holder ) 持有 / 表达观点的人或机构 目标 对象 (Object ) 观点 的表达对象,所指向的对象 观点 表达 (Opinion ) 持有 者对目标对象的态度、评价 一般 针对产品评论进行分析 观点抽取 223 /300

224.一个对象 o 是一个产品、人物、事件、机构、或话题,可表示为 一 个部件 / 子部件构成的层次结构 每个 部件都有一系列属性 (attributes ) 观点 可表达于任一节点或 属性 部件或属性也称为 特征 (aspect , features) 目标对象 224 /300

225.一个观点表示为五元组 :目标对象 对象 的特征 观点所表达的情感值(如倾向性分类 ) :观点持有者 观点表达的时间 i 为持有者, j 为对象, k 为特征, l 为时间   观点表示 225 /300

226.给定 观点 文本,抽取所有五元组 无结构化文本结构化 定量、定性分析 数据 挖掘 可视化呈现 任务很困难:五元组中每项转换都很频繁 观点抽取的目标 226 /300

227.给定 观点 文本,抽取所有五元组 无结构化文本结构化 定量、定性分析 数据 挖掘 可视化呈现 任务很困难:五元组中每项转换都很频繁 观点抽取的目标 226 /300

228.自然语言生成 (Natural Language Generation, NLG) 文本至文本、数据至 文本 传统定义 核心任务概览 NLG 的一般解决方案 传统方案 深度学习方案 NLG 的评价 内部 评价 外部评价 内容 228 /300

229.Philip M. Parker 在 Amazon 上发布了超过 100,000 本书 例如 《2007-2012 年印度售卖的大小 6x9 英尺或以下的簇绒可洗拼块地毯、浴室防滑垫和桌布概览 》 显然, Parker 没有亲自写那 100,000 本书 他 使用计算机程序收集了公开信息并把它们汇编 Parker 书不需要有多么大的读者群,只要一小部分书售出几次,他就可以获得 可 观的利润 Parker 的算法可以视为一种 文本至文本 的自然语言生成方法 输入现有的文本,自动生成新的、一致的文本作为 输出 文本至文本生成 229 /300

230.Philip M. Parker 在 Amazon 上发布了超过 100,000 本书 例如 《2007-2012 年印度售卖的大小 6x9 英尺或以下的簇绒可洗拼块地毯、浴室防滑垫和桌布概览 》 显然, Parker 没有亲自写那 100,000 本书 他 使用计算机程序收集了公开信息并把它们汇编 Parker 书不需要有多么大的读者群,只要一小部分书售出几次,他就可以获得 可观 的利润 Parker 的算法可以视为一种 文本至文本 的自然语言生成方法 输入现有的文本,自动生成新的、一致的文本作为 输出 文本至文本 生成 230 /300

231.其它文本至文本生成的例子 机器翻译 [Hutchins & Somers 1992; Och & Ney, 2003] 从一种语言到另一种语言 自动文摘 [Clarke & Lapata , 2010] 将相关的句子或文本凝炼使其更 简洁 文本简化 [ Siddharthan , 2014; Macdonald & Siddharthan , 2016] 将较繁难的文本简化,以适合低文化水平或儿童读者 自动改错 [ Kukich , 1992; Dale et al . , 2012] 改正文本中的拼写、语法或其他文本错误 学术论文自动评审意见生成 [ Bartoli et al., 2016] 文本复述 [ Bannard & Callison -Burch, 2005; Kauchak & Barzilay , 2006] 问题生成 [Brown et al., 2005; Rus et al., 2010] 以教育或其他为 目的 文本至文本生成 231 /300

232.洛杉矶时报在 3 分钟内发出地震快报 2014 年 3 月 17 日,加利福尼亚贝佛利山 附近 发生了一 场小型 地震 洛杉矶 时报在 3 分钟内发出地震快报,给出了地震的事件、地点及强度 显然,这份快报也不是人工撰写的 这 份地震快报是由写稿机器人根据自动检测得到的地震数据自动生成的 [ Oremus , 2014] 这类快报仅作为一种文本形式的事件记录,作为告知发给读者 机器新闻 ( robo -journalism) 在新闻业和 媒体研究领域产生了深刻影响 [van Dalen, 2012; Clerwall , 2014; Hermida , 2015] 写稿机器人可以看成一种 数据至文本 的自然语言生成 方法 这 类方法不依赖现有的文本,输入为非文本的数据 数据至文本生成 232 /300

233.洛杉矶时报在 3 分钟内发出地震快报 2014 年 3 月 17 日,加利福尼亚贝佛利山 附近 发生了一 场小型 地震 洛杉矶 时报在 3 分钟内发出地震快报,给出了地震的事件、地点及强度 显然,这份快报也不是人工撰写的 这 份地震快报是由写稿机器人根据自动检测得到的地震数据自动生成的 [ Oremus , 2014] 这类快报仅作为一种文本形式的事件记录,作为告知发给读者 机器新闻 ( robo -journalism) 在新闻业和媒体研究领域产生了深刻影响 [van Dalen, 2012; Clerwall , 2014; Hermida , 2015] 写稿机器人可以看成一种 数据至文本 的自然语言生成 方法 这 类方法不依赖现有的文本,输入为非文本的数据 数据至文本生成 233 /300

234.洛杉矶时报在 3 分钟内发出地震快报 2014 年 3 月 17 日,加利福尼亚贝佛利山 附近 发生了一 场小型 地震 洛杉矶 时报在 3 分钟内发出地震快报,给出了地震的事件、地点及强度 显然,这份快报也不是人工撰写的 这 份地震快报是由写稿机器人根据自动检测得到的地震数据自动生成的 [ Oremus , 2014] 这类快报仅作为一种文本形式的事件记录,作为告知发给读者 机器新闻 ( robo -journalism) 在新闻业和媒体研究领域产生了深刻影响 [van Dalen, 2012; Clerwall , 2014; Hermida , 2015] 写稿机器人可以看成一种 数据至文本 的自然语言生成 方法 这 类方法不依赖现有的文本,输入为非文本的数据 数据至文本生成 233 /300

235.数据至 文本 生成最为主要的目的是 告知 (imparting information) 告知本身并不是一个微不足道的目标 告知可能触发 劝说 (persuasion)[ Carenini & Moore, 2006] 和 行为修正 (behavior modification)[Reiter et al., 2003] 比如,每日告知用户其用水量以及所有人的平均用水量,可能会触发其节水 要成功地完成告知,选定告知内容、区分用户觉得重要和无关紧要的信息必不可少 告知不一定需要广泛的用户群体 例如,给足球世界杯决赛生成报导是没有必要的,领域中那些顶级记者必然会进行全面的报导 相反,有很多针对特定群体的小型足球赛缺少报导 数据至文本 生成的目标 235 /300

236.现实中的数据至文本生成的应用针对的是 特定领域 与 特定群体 特定领域 为 海上钻井平台生成天气预报 [ Sripada et al., 2003] 根据汽轮机的传感器信息生成运行报告 [ Yu et al., 2006] 这 类应用是很多公司的支柱 如 Narrative Science, Automated Insights, Arria -NLG 等 特定群体 / 个性化 适用于医生、护士、家长的新生儿监护 [ Mahamood & Reiter, 2011] 适用于胜者 / 负者、主场 / 客场或客观的体育新闻报导 [Lee et al., 2017] 数据至文本 生成的应用 236 /300

237.自然语言生成 (Natural Language Generation, NLG) 文本至文本生成 (text-to-text generation) 和数据至文本生成 (data-to-text generation) 都属于自然语言生成 在传统定义 [Reiter & Dale, 1997] 中,这一术语更倾向于数据至文本生成 自然语言生成是人工智能和计算语言学的子领域,它关注构建可以根据非语言的信息表示产生可理解文本的计算机系统 由于 NLG 的广泛内涵,准确定义 NLG 是困难的 [Evans, et al., 2002] 唯一可以确定的是,其输出一定是文本 输入的类型千变万化 文本、浅层语义表示 、 数值型数据、结构化知识库 视觉 输入:图片、视频 什么是自然语言生成? 237 /300

238.文本至文本生成与数据至文本生成的边界也是模糊的 例如,自动文摘 一般被视为文本至文本生成 但很多生成式系统 (abstractive summarization system) 会利用数据至文本生成的技术 先抽取结构化的观点,再生成新的句子 [ Labbe & Portet , 2012] 下面简要介绍核心的 NLG 任务 什么是自然语言生成? 238 /300

239.文本至文本生成研究更为充分,很多都成为了经典的、单独的、有影响力的研究领域 比如机器翻译、自动文摘等 这也 是为什么 NLG 定义一般不包括这些较为独立的任务 机器翻译 (Machine Translation, MT) 将一种语言用另一种语言表示 研究自计算机开始即开始 有影响力的评测包括 NIST 、 WMT 等 有 影响力的模型包括 噪音信道模型 IBM 的 Model I, II, III 序列到序列模型 NLG 任务概览 – 文本至文本生成 239 /300

240.自动文摘 (automatic text summarization, AS) 将文档用几句话总结 研究始于 NIST 组织的 DUC 系列会议、后成为 TAC 面向单文档、多文档的摘要 多 文档摘要的核心难点是实体聚类、消岐;冲突化解 面向焦点对象的摘要 现今研究倾向于将 AS 划分为 抽取式摘要 生成 式摘要 均面向短文档 目前没有有影响力的评测 常用数据集有 Giga, CNN, LCSTS 等 胜在数量、但质量远逊于 DUC NLG 任务概览 – 文本至文本生成 240 /300

241.文本简化 (automatic text simplification) 让文本更通俗易懂 服务 儿童或有阅读障碍群体 提高网页的停留时长 eye tracking 显示人的关注点在那些简单、常见的词上 常用数据集有 PKWP EW-SEW 均 是抽取的 Wikipedia 和 S imple Wikipedia 的对齐语料 这其实属于一大类的复述任务,还有问题复述等任务 NLG 任务概览 – 文本至文本生成 241 /300

242.最近几年,图像与语言结合的任务迅速兴起 CV 与 NLP 结合的交叉领域 寻找语言的感知基础一直是 AI 的科学关切 目前有两个 hot topic : Image captioning 和 Visual QA 图像标题生成 (Image Captioning) 给定一个图片生成合适的 描述性 文字 “这是张猫的图片”, “白猫的例子”这样的标题不作数 有 影响力的评测 MSCOCO captioning track 常用数据集还有 Flickr30k NLG 任务 概览 – 图像与语言 242 /300

243.图像问答 (Visual Question Answering) 根据图像回答问题 探究语言与感知信息的关系 有影响力的评测有 VirginiaTech 和 GeorgiaTech 组织的 VQA Challenge NLG 任务 概览 – 图像与语言 243 /300

244.NLG 不只关心那些事实性信息的表达,对于非命题性的文本特征也有研究 这些“ 非命题性的文本特征 ”常常为笼统称为“风格” 风格是什么? 给风格一个严谨的定义,并说明其性质同样的困难的 一般,学者会变体 (variation) 、个性 (personality) 、情感 (affect) 视为风格 变体 / 个性 散文 体 说明体 新闻体 莎士比亚体 NLG 任务 概览 – 风格化生成 244 /300

245.个性化文本生成 针对某些性格特征,生成符合性格的特征 需要注意的是,性格与文风相关,但绝不是决定性的关系 因而,这类生成通常都针对对话,此时性格因素更显著 且有性格特征的对话,更容易通过图灵测试 例子 [ Mairesse & Walker, 2011] 外向: verbose, more expletives (swear words) Kin Khao and Tossed are bloody outstanding . Kin Khao just has rude staff. Tossed features sort of unmannered waiters, even if the food is somewhat quite adequate. 内向: more uncertainty, stammering and hedging Err... I am not really sure . Tossed offers kind of decent food. Mmhm ... However , Kin Khao , which has quite adequate food, is a thai place . You would probably enjoy these restaurants. NLG 任务 概览 – 风格化生成 245 /300

246.情感化文本生成 (Affective NLG)[De Rosis & Grasso, 2000] 个性化文本生成反映个人的性格,相对稳定 情感 化文本生成强调在某个时刻,根据人当时的情感状态生成语言,更易变化 也 有一些近期文章的目标是改变文本的情感极性,一般不称其为情感文本生成 双重目标 引起听话人的情感变化 [ Sluis & Mellish , 2010] 反映个人的情感 / 礼貌程度 [Brown & Levinson, 1987] NLG 任务 概览 – 风格化生成 246 /300

247.情感化文本生成 (Affective NLG) 影响听话人情感 积极态度 On top of this you also outperformed most people in your age group with your exceptional scores for Imagination and Creativity (7.9 vs 7.2) and Logical- Mathematical Intelligence (7.1 vs. 6.5 ). 中性 / 事实性态度 You did better than most people in your age group with your scores for Imagination and Creativity (7.9 vs 7.2) and Logical-Mathematical Intelligence (7.1 vs. 6.5). NLG 任务 概览 – 风格化生成 247 /300

248.情感化文本生成 (Affective NLG) 反映说话人态度 / 礼貌程度 直接 : Chop the tomatoes! 英文中没有 please 的祈使句是非常粗鲁的,即使有 please 语气也很强势 寻求认可 : Would it be possible for you to chop the tomatoes? will 预 设对方同意请求 自主 : Could you possibly chop the tomatoes? 这里 could 表示只是询问对方能力 间接: The tomatoes aren’t chopped yet 最为委婉,由听话者自行推断说话者意图 对听话者的胁迫逐渐 削弱 NLG 任务 概览 – 风格化生成 248 /300

249.自然语言生成 (Natural Language Generation, NLG) 文本至文本、数据至 文本 传统定义 核心任务概览 NLG 的一般解决方案 传统方案 深度学习方案 NLG 的评价 内部 评价 外部评价 内容 249 /300

250.自然语言生成作为一个复杂的过程涉及到诸多问题 这些问题可以划分为以下的层次 [Reiter & Dale, 1997, 2000] 说 什么 (what to say) 内容确定 (content determination) 怎么说 (how to say it) 文本组织 (text structuring) :确定信息以何种顺序表达 语句 组织 (sentence structuring) :确定每个语句如何表达 信息汇集 (sentence aggregation) :每个句子应当包含哪些信息 信息表达 (lexicalization) :寻找合适的词表达信息 指 称生成 (referring expression generation) :如果出现相同的词,需要共指还是区分? 语言实现 (linguistic realization) NLG 的传统解决方案 250 /300

251.事实上,神经网络 (NN) 在 NLG 中的应用可以追溯至 Kukich ( 1987 ),但受限于小规模样本 随着计算机硬件的发展, NN 再次兴起 NN 学习得到的表示被理解为具有 语法和语义上的泛化 [ Mikolov et al., 2013; Luong et al., 2018; Pennington et al., 2014] NN 在 序列建模 也取得了成功 [ Bengio et al., 2003; Schwenk & Gauvain , 2005; Minh & Hinton 2007; Mikolov et al., 2010] Sutskever et al. (2011) 展示了 RNN 在 NLG 中的潜力 一 个 character-level LSTM 可以生成合乎语法的英文句子 当然这仅仅说明其在语言实现 (language realization) 上的能力 真正在 NLG 中的应用,依赖于 Encoder-Decoder 架构和 Conditional Language Model 的出现 NLG 的深度学习方案 251 /300

252.Encoder-Decoder 框架最早由 Sutskever et al., 2014 提出 Encoder RNN 将输入编码为向量表示,作为 D ecoder RNN 的额外输入 这 一架构非常适合序列到序列 (Sequence-to-Sequence, Seq2Seq) 类型的任务,例如机器翻译 [ Kalchbrenner & Blunsom , 2013; Bahdanau et al., 2015 ] Encoder-Decoder 框架 252 /300

253.随着技术发展, encoder 和 decoder 不仅限于 RNN ,输入也不限于文本的形式 NN : CNN 、 RNN 和 MLP Input: 图片、 abstract meaning representations Encoder-Decoder 框架 253 /300

254.更进一步,出现了基于注意力机制的模型 [ Bahdanau et al. 2015; Xu et al., 2015] 注意力学习到了输入表示到输出文本的松散耦合 (loose couplings) Encoder-Decoder 框架 254 /300

255.自然语言生成 (Natural Language Generation, NLG) 文本至文本、数据至 文本 传统定义 核心任务 概览 NLG 的一般解决方案 传统方案 深度学习方案 NLG 的评价 内部 评价 外部评价 内容 255 /300

256.客观评价基于参考输出评价系统输出 重心是输出文本,而非输出与输入的关系 反映的其实是输出文本是否是 ” 似人类的 ” 只能从侧面反映通顺度和忠实度 核心优势是耗费少 目前的客观评价方法可以分为 3 类 基于 n-gram 重合的方法 BLEU, NIST, ROUGE, METEOR, GTM, CIDEr , WMD 基于字串距离的方法 Edit distance, TER, TERP, TERPA 基于内容重合的方法:这类方法正逐渐成为主流 Dice/ Jaccard , MASI, PYRAMID, SPICE 内部评价:客观评价 256 /300

257.以 SPICE 为例(图像标题生成评价) 根据参考标题 (5 个 ) 构建 scene graph 构建系统标题的 scene graph 进行图匹配,计算 precision 、 recall 和 F-score 事实上,所有的 NLG 评价方法的 有效性 都依赖提供多个参考输出 内部评价:客观评价 257 /300

258.以 SPICE 为例(图像标题生成评价) 根据参考标题 (5 个 ) 构建 scene graph 构建系统标题的 scene graph 进行图匹配,计算 precision 、 recall 和 F-score 内部评价:客观评价 258 /300

259.以 SPICE 为例(图像标题生成评价) 在 MS COCO 的评价表明, SPICE 优于一批现有方法 内部评价:客观评价 259 /300

260.外部评价跟最终的应用领域密切相关,例如 对于机器翻译系统,输出文本的语法正确性一般不是核心需求 只要保证可读性,语法错误不影响用户目标的达成 但外部评价往往比内部评价更耗时、且有时很难找到足够的用户群体 一种权衡办法是提供交互全过程的 ground truth 比如,在面向任务的对话系统中,给出每轮的标准输出 外部评价 260 /300

261.NLP 的总体介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档分类 NLP 的典型 任务简介 问答系统 、 情感分析 、 自然语言生成 NLP 的前沿 研究进展:自然语言生成面对的主要挑战 内容安排 261 /300

262.前沿研究进展: 自然语言生成面对的主要挑战 多样化 情感化 一致性

263.让模型说得好 主要挑战 263 /300

264.最大似然方法训练 (MLE) 导致模型生成 常见但单调 的句子 多样化自然语言生成 264 /300

265.我们的目标是生成 多样化 的句子 多样化自然语言生成 265 /300

266.SeqGAN 可以比 MLE 更好的拟合数据分布,但存在 奖励饱和问题 SeqGAN 只奖励句子是否更符合真实文本 SeqGAN 没有额外奖励句子的多样性 多样化自然语言生成 多样化的句子和常见句子 获得 相似的 奖励 266 /300

267.Diversity-Promoting GAN: A Cross-Entropy Based Generative Adversarial Network for Diversified Text Generation [Xu et al, 2018] 利用 对抗学习 的思想 生成器 生成句子 以使判别器无法分辨 多样化自然语言生成 267 /300

268.Diversity-Promoting GAN: A Cross-Entropy Based Generative Adversarial Network for Diversified Text Generation [Xu et al, 2018] 利用 对抗学习 的思想 判别器 判断句子 是否是多样化的、流畅的 多样化自然语言生成 268 /300

269.如何判断一个句子是多样化的? 利用 语言模型 判断句子的多样性 多样化的句子在语言空间概率相对较低 利用 teacher-forcing 避免生成不通顺的句子 多样化自然语言生成 语言模型的交叉熵作为奖励 269 /300

270.如何判断一个句子是多样化的? 利用 语言模型 判断句子的多样性 多样化的句子在语言空间概率相对较低 利用 teacher-forcing 避免生成不通顺的句子 多样化自然语言生成 语言模型的交叉熵作为奖励 269 /300

271.实验结果:生成文本 显著更长 多样化自然语言生成 S 表示只有句级别奖励 W 表示只有词级别奖励 SW 表示有两种奖励 Token 表示 生成的词数 271 /300

272.实验 结果: 生成文本 表达 更丰富 多样化自然语言生成 S 表示只有句级别奖励 W 表示只有词级别奖励 SW 表示有两种奖励 Dist -n 表示 独特的 ngram 数量 272 /300

273.实验结果:人工评价同样 DP-GAN 更好 对比排序、越低越好 多样化自然语言生成 273 /300

274.实验分析: DP-GAN 与 SeqGAN 相比 没有奖励饱和问题 SeqGAN 奖励缺少区分度 DP-GAN 的奖励更平滑、更有区分度 多样化自然语言生成 274 /300

275.实验分析: DP-GAN 生成文本比 MLE 更 符合真实文本分布 多样化自然语言生成 275 /300

276.生成样例:句子更长、用词更丰富 多样化自然语言生成 276 /300

277.让模型说得好 主要挑战 277 /300

278.任务:文本情感极性转换 在保持内容的前提下,改变文本的情感极性 示例 : The movie is amazing ! — The movie is boring ! I went to this restaurant last weak, the staff was friendly , and I were so happy to have a great meal ! — I went to this restaurant last weak, the staff was rude , and I were so angry to have a terrible meal ! 情感 化自然语言生成 278 /300

279.简单的情感词替换会产生不合理的句子 情感化自然语言生成 The food is terrible like rock The food is delicious like rock 279 /300

280.情感词替换需要先进行词义消岐 情感化自然语言生成 evil bad ill g ood 的反义词 280 /300

281.现有方法能够 较好地转换极性 但转换后 内容往往 与输入无关 情感化自然语言生成 The food is delicious What a bad movie 281 /300

282.现有方法能够 较好地转换极性 但转换后 内容往往与输入无关 原因: 隐式地分离 情感信息和语义内容 利用一个隐向量表示排除情感信息地语义内容 由于 缺少平行语料 ,很难只更改向量中地情感信息而不该表语义内容 情感化自然语言生成 The food is delicious What a bad movie 282 /300

283.Unpaired Sentiment-to-Sentiment Translation: A Cycled Reinforcement Learning Approach [Xu et al., ACL 2018] 不需要平行语料 自动识别情感词 显 式地分离情感词和非情感词 情感化自然语言生成 283 /300

284.Unpaired Sentiment-to-Sentiment Translation: A Cycled Reinforcement Learning Approach [Xu et al., ACL 2018] Neutralization module 利用自注意力机制 (self attention) 去除情感词 Emotionalization module 为中性化的句子增加情感内容 Cycled reinforcement learning 融合两个模块以联合训练 情感化自然语言生成 284 /300

285.实验数据 Yelp Review Amazon Food Review 每个评论仅有对应的评分 但没有对应的相反情感评论 缺少平行语料 情感化自然语言生成 Michael is absolutely wonderful. I would strongly advise against using this company. Horrible experience! Worst cleaning job ever! Hainan chicken was really good. I really don’t understand all the negative reviews for this dentist. Smells so weird in there. The service was nearly non-existent and extremely rude 285 /300

286.实验结果 : 取得了 转换成功率和内容保留的平衡 G-score 是 ACC 和 BLEU 的几何平均值 情感化自然语言生成 286 /300

287.实验结果: 人工评测 同样显式提出的方法 综合效果更好 评测方法: 1-10 评分 情感化自然语言生成 287 /300

288.实验分析:自注意力机制可以很准确地识别情感词 情感化自然语言生成 288 /300

289.生成样例 现有方法 内容经常无关 情感转换十分充分 用词 极为鲜明 Great, best, love 提出方法 内容保留更完整 情感转换也 很 充分 但可能含蓄一些 Thanks, fresh 情感化自然语言生成 289 /300

290.让模型说得好 主要挑战 290 /300

291.Improving Semantic Relevance for Sequence-to-Sequence Learning of Chinese Social Media Text Summarization [Ma et al., ACL 2017] 自动文摘: 使 输入编码向量 和 输出编码向量 尽可能一致 针对自动文摘中 生成摘要和 输入无关 的问题 解码器可以看作对摘要的编码 如何改进一致性 291 /300

292.A Hierarchical End-to-End Model for Jointly Improving Text Summarization and Sentiment Classification [ Ma et al., IJCAI 2018] 自动文摘: 通过 情感分析任务 辅助 自动文摘任务 多任务学习方法 情感分析看作摘要的宏观指导 如何改进一致性 292 /300

293.Global Encoding for Abstractive Summarization [ Lin et al., ACL 2018] 自动文摘: 为注意力机制提供 短语级别 的输入 自动文摘中的注意力会引起 输出短语 重复问题 通过 Inception CNN 构造输入 短语 级别 向量 以供注意力机制 利用 能够明显减少输出文本重复问题 如何改进一致性 293 /300

294.Bag-of-Words as Target for Neural Machine Translation [Ma et al., 2018] 机器翻译: 句子 词袋作为额外监督 信号 原有训练要求输出端词绝对顺序 相同 过度惩罚那些相对次序正确 的词 词袋可以容忍绝对次序错误但 相对顺序正确的句子 如何改进一致性 294 /300

295.Deconvolution-Based Global Decoding for Neural Machine Translation [ Lin et al., COLING 2018] 机器翻译:通过反卷积 预先生成全局信息 供解码器参考 改进解码时内部的一致性 如何改进一致性 295 /300

296.NLP 的总体 介绍 简介、研究范式 NLP 的传统 机器学习方法 简单分类、序列标注 问题 NLP 的深度 学习方法 语义表示、反向传播、机器翻译、句法分析、文档 分类 NLP 的典型 任务简介 问答系统、情感分析、 自然语言生成 NLP 的前沿 研究 进展 自然语言生成 面对的主要 挑战 结语 296 /300

297.书单 Dan Jurafsky and James H. Martin. Speech and Language Processing (3rd ed. draft) [ link: https://web.stanford.edu/~jurafsky/slp3/ ] 第七章、第八章、第十四章、第十五章、第十六 章 Ian Goodfellow , Yoshua Bengio , and Aaron Courville . Deep Learning . MIT Press. [ link: http://www.deeplearningbook.org/ ] 第九章、第十章、第十四 章 网页 CS224n: Natural Language Processing with Deep Learning [link: http://web.stanford.edu/class/cs224n/] 北大自然语言处理 导论 [ link: http://lanco.pku.edu.cn/resource/index.htm] NLP MOOC by Dan Jurafsky and Christopher Manning [ link: https://web.stanford.edu/~jurafsky/NLPCourseraSlides.html] 扩展阅读 - 1 297 /300

298.网页 Yoav Goldberg. A Primer on Neural Network Models for Natural Language Processing [link: http://u.cs.biu.ac.il/~yogo/nnlp.pdf] Word2Vec Tutorial - The Skip-Gram Model [link: http://mccormickml.com/2016/04/19/word2vec-tutorial-the-skip-gram-model/] Understanding LSTM Networks [link: http://colah.github.io/posts/2015-08-Understanding-LSTMs/] The Unreasonable Effectiveness of Recurrent Neural Networks [link: http://karpathy.github.io/2015/05/21/rnn-effectiveness/] 扩展阅读 - 2 298 /300

299.相关软件: 情感转换 自动文摘 机器翻译 中文切词 …… 可以在 GitHub 下载 相关软件 https ://github.com/lancopku github 299 /300

300.Thank You

user picture
  • 献良
  • 非著名互联网公司工程师

相关Slides

  • 论文提出了一种新的深度神经网络模型家族,并没有规定一个离散的隐藏层序列,而是使用神经网络将隐藏状态的导数参数化。然后使用黑箱微分方程求解器计算该网络的输出。这些连续深度模型的内存成本是固定的,它们根据输入调整评估策略,并显式地用数值精度来换取运算速度。论文展示了连续深度残差网络和连续时间隐变量模型的特性。此外,还构建了连续的归一化流,一个可以使用最大似然方法训练的生成模型,无需对数据维度进行分割或排序。至于训练,论文展示了如何基于任意 ODE 求解器进行可扩展的反向传播,无需访问 ODE 求解器的内部操作。这使得在较大模型内也可以实现 ODE 的端到端训练。

  • 自然语言处理的总体介绍及其主要的任务,传统机器学习方法和深度学习方法分析,以及涉及到的NLP前沿研究进展。

  • 1. 中国人工智能产业发展迅速,但整体实力仍落后于美国 2. 中国企业价值链布局侧重技术层和应用层,对需要长周期的基础层关注 度较小 3. 科技巨头生态链博弈正在展开,创业企业则积极发力垂直行业解决方案, 深耕巨头的数据洼地,打造护城河 4. 政府端是目前人工智能切入智慧政务和公共安全应用场景的主要渠道, 早期进入的企业逐步建立行业壁垒,未来需要解决数据割裂问题以获得长 足发展 5. 人工智能在金融领域的应用最为深入,应用场景逐步由以交易安全为主 向变革金融经营全过程扩展 6. 医疗行业人工智能应用发展快速,但急需建立标准化的人工智能产品市 场准入机制并加强医疗数据库的建设 7. 以无人驾驶技术为主导的汽车行业将迎来产业链的革新 8. 人工智能在制造业领域的应用潜力被低估,优质数据资源未被充分利 用 9. 人工智能加速新零售全渠道的融合,传统零售企业与创业企业结成伙 伴关系,围绕人、货、场、链搭建应用场景 10. 政策与资本双重驱动推动人工智能产业区域间竞赛,京沪深领跑全 国,杭州发展逐步加速 11. 各地政府以建设产业园的方式发挥人工智能产业在推动新旧动能转换 中的作用 2. 杭州未来科技城抓住人工智能产业快速发展的机会并取得显著成绩, 未来可以从人才、技术、创新三要素入手进一步打造产业竞争力

  • 张首晟教授讲述了量子的世界,人工智能未来的发展以及区块链技术的展望与发展趋势。张提出区块链与人工智能共生的见解,人工智能需要数据,但是数据往往被中心化平台垄断,因而阻碍创新。从这种意义上人工智能有所欠缺。 加密经济学创造了一个对于数据提供者有正确激励机制的数据市场。人工智能能够依赖这个数据市场起飞。