高级大数据人才培养丛书之一,大数据挖掘技术与应用刘鹏主编赵海峰副主编BIGDATA刘鹏张燕总主编深度学习第九章深度学习在文本中的应用概述9.1自然语言处理基础9.2基于深度学习的文本处理9.3应用举例:机器翻译全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of372习题9.4应用举例:聊天机器人概述第四章深度学习基本过程of373自然语言处理(NaturalLanguageProcessing,简称NLP)需要兼顾到不同平面的知识:词汇学,描述词汇系统的规定说明单词本身固有的语义特性和语法特性;句法学,根据单词和词组之间的结构规则说明单词和词组怎样形成句子;语义学,描述句子中各个成分之间的语义关系,这样的语义关系是与情境是无关的;语用学,描述与情境有关的情景语义,说明怎样推导出句子具有的与周围话语有关的各种涵义。每个层面具备自身的特点:词汇学主要描述具体的单词的构成成份,如语素、屈折变化形式等;句法学涉及的是词和词组怎样组成句子的知识;语义学指的是给句子指派意义;语用学则涉及在对话中话语焦点的转移以及在给定的上下文中解释句子的含义。第九章深度学习在文本中的应用概述9.1自然语言处理基础9.2基于深度学习的文本处理9.3应用举例:机器翻译全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of374习题9.4应用举例:聊天机器人概述9.1自然语言处理基础9.1.1.正则表达式和自动机of375第四章深度学习基本过程正则表达式(regularexpression,简称RE)是字符文本序列的标准记录方式,是一种用于描述文本搜索符号串的语言,广泛应用于各类信息检索中。有限状态自动机(finite-stateautomaton,简称FSA)能够而且只能够生成或识别满足形式语言定义所要求的形式语言的字符串。示例,五个状态:节点0是初始状态(startstate),节点4是最后状态(finalstate),用双圆圈表示,另外还有4个转移(transition),用箭头线表示。9.1自然语言处理基础of376第四章深度学习基本过程9.1.2.句法处理句法(syntax)是指把单词和词组安排在一起怎样形成句子的方法。单词是语言处理的单元,句法是骨架,句法研究单词之间的形式关系。单词可以类聚为词类(part-of-speech),或者与相邻的单词组合成短语。PetergavethebooktoAna.(彼得把这本书给了安娜。)ThebookwasgiventoAnabyPeter.(这本书被彼得给了安娜。)句子的结构并不反映句子的意义,相同的句法结构,在不同的环境下,具有不同的意义。9.1自然语言处理基础of377第四章深度学习基本过程9.1.3.词类和词类标注词类又称为POS(Part-of-Speech)能够提供关于单词及其邻近成分的信息。词类标注(Part-of-Speechtagging或POStagging),简称标注,指给语料库中的单词指派词类标记的过程。这些标记也用来标注标点符号,因此自然语言的标注过程与计算机语言的词例还原(tokenization)过程是一样的。英语词类标注中的常用标记集:•PennTreebank的标记集包含45个标记,是小标记集;•CLAWS(theConstituentLikelihoodAutomaticWord-taggingSystem)使用的标记集C5包含61个标记,是中型的标记集,用于标注英国国家语料库(theBritishNationalCorpus,简称BNC);•第三个标记集是包含146个标记的大型标记集C7。9.1自然语言处理基础of378第四章深度学习基本过程9.1.4.上下文无关语法上下文无关语法(Context-FreeGrammar,简称CFG),上下文无关语法又称为短语结构语法(Phrase-StructureGrammar),由规则(rule)以及词表(lexicon)构成。Chomsky层次语法理论:9.1自然语言处理基础of379第四章深度学习基本过程9.1.5.浅层句法分析浅层语法分析(shallowparsing)也称为局部语法分析(partialparsing),处理层次可分为:•词•短语•句子常见的浅层语法分析主要有两类:•基于统计•基于规则基于规则的方法就是根据人工书写的或半自动获取的语法规则标注出短语的边界和短语的类型。规则的使用相对简单,但是规则的获取却比较困难。9.1自然语言处理基础of3710第四章深度学习基本过程9.1.6.语义分析判断一句话的意思要分两步来进行:•首先,计算出它上下文无关的标记形式,称之为逻辑形式(logicalform);•然后,在上下文中对逻辑形式进行解释,生成最终的意义表示。对上下文无关意义的研究称为语义学。对上下文相关语言的研究称为语用学。9.1自然语言处理基础of3711第四章深度学习基本过程9.1.7.语义网络语义网络是一种词法知识的表示方法,由带标记的链和带标记的节点组成的图。节点表示词义,链表示节点之间的语义关系。典型词汇关系信息库有:•WordNet•ConceptNet•FrameNet第九章深度学习在文本中的应用概述9.2基于深度学习的文本处理9.1自然语言处理基础9.3应用举例:机器翻译全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of3712习题9.4应用举例:聊天机器人概述9.2基于深度学习的文本处理of3713第四章深度学习基本过程9.2.1.词汇向量化表示使用神经网络的方法自动学习词汇的向量化表示,其基本原则是:一个词包含的意义应该由该词周围的词决定。9.2基于深度学习的文本处理of3714第四章深度学习基本过程9.2.2.句法分析使用递归神经网络(RecursiveNeuralNetwork,RNN)可以实现对树型结构的预测。递归神经网络的输入层有两部分:•左子节点的向量表示;•右子节点的向量表示。两个子节点的向量表示通过神经网络后生成父节点的向量表示,同时生成一个打分,表示父节点的可信度。父节点的向量表示又可以与其他子节点组合形成更大的父节点。依次递归,从而形成一棵完整的句法分析树。9.2基于深度学习的文本处理of3715第四章深度学习基本过程9.2.3.神经机器翻译递归自动编码的神经网络用于学习双语的片段向量化表示,使用交互优化的方式训练神经网络:首先,固定目标语言片段的向量表示;然后,以该向量表示为优化目标,优化源语言的神经网络;最后,固定源语言片段的向量表示,优化目标语言的神经网络。双语约束得到的片段表示应用于统计机器翻译的概率估计中,取得了显著的效果。9.2基于深度学习的文本处理of3716第四章深度学习基本过程9.2.4.情感分析理解人类情感是人工智能的目标,深度学习可用来判断情感类别及强度。为处理情感分析问题中语义合成的问题(如“不是很喜欢”与“喜欢”的情感极性相反),利用自然语言的递归性质与语义的可合成性,句子的情感语义进行建模。半监督递归自动编码模型在由词向量构建短语向量表示时,可以更多地保留情感信息。句法分析树用来决定语义合成的顺序,以此替代递归自动编码模型中通过贪心搜索损失最小的递归结构。将每个词的情感语义操作信息嵌入到词向量中,进而用来选择不同的语义合成函数。第九章深度学习在文本中的应用概述9.3应用举例:机器翻译9.2基于深度学习的文本处理9.1自然语言处理基础全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of3717习题9.4应用举例:聊天机器人概述9.3应用举例:机器翻译of3718第四章深度学习基本过程基于理性主义的机器翻译方法主张:由人类专家通过编纂规则的方式,将自然语言之间的转换规律“传授”给计算机。主要优点是:•能够显式描述深层次的语言转换规律。主要缺点是:•对于人的要求非常高,通晓源语言和目标语言,熟悉待翻译文本领域背景知识,还需熟练掌握相关计算机操作技能。•使得研制系统的人工成本高、开发周期长,面向小语种开发垂直领域的机器翻译因人才稀缺而变得极其困难。•当翻译规则库达到一定的规模后,如何确保新增的规则与已有规则不冲突也是非常大的挑战。9.3应用举例:机器翻译of3719第四章深度学习基本过程基于经验主义的机器翻译方法主张:计算机自动从大规模数据中“学习”自然语言之间的转换规律。主要优点是:•人工成本低;•开发周期短。主要缺点是:•线性不可分;•缺乏合适的语义表示;•难以设计特征;•难以充分利用非局部上下文;•数据稀疏;•错误传播。9.3应用举例:机器翻译of3720第四章深度学习基本过程基于深度学习的方法大致可以分为两类方法。利用深度学习改进统计机器翻译:仍以统计机器翻译为主体框架,利用深度学习改进其中的关键模块。端到端神经机器翻译:一种全新的方法体系,直接利用神经网络实现源语言文本到目标语言文本的映射。9.3应用举例:机器翻译of3721第四章深度学习基本过程深度学习改进统计机器翻译核心思想是以统计机器翻译为主体,使用深度学习改进其中的关键模块,如语言模型、翻译模型、调序模型、词语对齐等。优点:•能够帮助机器翻译缓解数据稀疏问题。•能够解决特征难以设计的问题。9.3应用举例:机器翻译of3722第四章深度学习基本过程端到端神经机器翻译基本思想是使用神经网络直接将源语言文本映射成目标语言文本,直接采用神经网络以端到端方式进行翻译建模的机器翻译方法。优点:•不再需要人工设计的词语对齐、短语切分、句法树等隐结构;•不再需要人工设计特征,仅使用非线性的神经网络直接实现文本的转换。9.3应用举例:机器翻译of3723第四章深度学习基本过程循环神经网络自动翻译两个RNNs首尾相连,第一个RNN给句子生成编码,第二RNN遵循相反的逻辑,解码得到目标语言,就可以将一序列源语言转换成同样的目标语言序列。神经机器翻译的翻译性能取得了突破,超过了发展多年的传统统计机器翻译。第九章深度学习在文本中的应用概述9.4应用举例:聊天机器人9.2基于深度学习的文本处理9.3应用举例:机器翻译全国高校标准教材《云计算》姊妹篇,剖析大数据核心技术和实战应用of3724习题9.1自然语言处理基础概述9.4应用举例:聊天机器人of3725第四章深度学习基本过程9.4.1.聊天机器人的主要功能模块语音识别模块;自然语言处理模块;对话管理模块。9.4应用举例:聊天机器人of6526第四章深度学习基本过程9.4.2.主要的技术挑战对话上下文建模:对话的过程是一个在特定背景下的连续交互过程,一句话的意义往往要结合上下文或者背景才能确定。而现有的自然语言处理的技术主要还是基于上下文无关假设,因此对上下文的建模成为亟待解决的问题。对话过程中的知识表示:知识表示是人工智能研究的重要基础,也是聊天机器人质量提升的重要前提,涉及到众多复杂的因素,只有全面地描述这些因素的含义和关系,才能实现真正的人机交流。9.4应用举例:聊天机器人of3727第四章深度学习基本过程9.4.3.深度学习构建智能聊天机器人大多采用Encoder-Decoder框架,主要用于文本处理的研究,比如:机器翻译、文本摘要、句法分析。一般采用RNN模型,因为RNN模型对于线性序列的字符串来说是比较有效的深度学习模型,RNN的改进模型LSTM也是经常使用的模型。根据用户输入的问题,自动生成回答。深度学习解决多轮会话的上下文信息问题时大致思路相同,都是在Encoder阶段把上下文信息及当前输入的问题同时编码,以促进Decoder阶段可以参考上下文信息生成回答。9.4应用举例:聊天机器人of3728第四章深度学习基本过程语音服务系统“自动语音系统”通过机器人将传统的多层自助语音菜单扁平化,用更人性化的方式实现语音导航、语音交互、语音咨询等常用功能。用户还可以通过语音对话直接告知业务需求,实现快速办理相关业务,如:查询手机流量情况、申请信用卡额度调整等。1.正