




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章
语言模型语言模型是自然语言处理领域的核心技术,能够评估相同单词构成句子序列的概率。本章将深入探讨传统的N-gram统计语言模型和基于深度学习的NNLM神经网络语言模型,展示语言模型的发展历程和技术变革。语言模型概述语言模型定义
语言模型作用通过语言模型,可以确定哪个词语出现的可能性更大,或者通过若干上文语境词来预测下一个最可能出现的词语。语言模型本质简而言之,语言模型能够评估相同单词构成句子序列的概率。不同的单词排列会导致不同的概率,而概率最高的序列通常是最符合自然语言规律的。语言模型的概率计算对于语句A"猫坐在垫子上"和语句B"坐猫在垫子上",语言模型计算两个句子出现的概率结果,赋予更符合语句逻辑的语句A更高的概率。要计算词序列的概率需要通过应用概率论中的链式法则(chainrule)。在事件之间存在相关性的情况下联合概率是通过条件概率计算得到。如果分析的句子很长,需要计算的词组也将变得很长,而在实际的语料库中,大部分这样的长词组是不存在的,这就造成了数据的严重稀疏性问题。为解决数据稀疏性问题,采用了马尔可夫假设作为缓解措施。马尔可夫假设认为,在计算特定的条件概率时,只需要考虑一定数量的紧邻前置词。概率公式链式法则应用数据稀疏性问题马尔可夫假设语言模型的实例分析语句A:"猫坐在垫子上"这句话符合中文的句子结构,更加通顺,语言模型会赋予其更高的概率。语句B:"坐猫在垫子上"虽然使用了相同的词汇,但不符合中文语法规则,语言模型会赋予其较低的概率。语言模型的目的就是计算两个句子出现的概率结果,鉴于语句A更符合正常的语句逻辑则对其赋予更高的概率。N-gram统计语言模型简介N-gram定义N-gram模型是一种基于统计的语言模型,它将连续的单词或符号序列视为N个字符的组合。N的取值N通常是一个较小的整数,常见的取值范围为1到4。子序列划分在N-gram模型中,每个单词或符号序列被划分为长度为N的连续子序列,这些子序列被称为N-gram。目的通过将当前词出现概率关联长度降低至N,从而减缓统计语言模型难以对未出现句子进行泛化这一问题。N-gram语言模型评估词序列N-gram概率公式上下文依赖一句话中每个单词出现的概率是根据它之前N−1个单词的序列来估计的概率乘积将所有条件概率相乘来得到整个句子的概率N-gram模型假设一个单词出现的概率仅与它之前的N−1个单词有关,这个公式就是基于这一假设来计算一个特定句子出现的概率的。N-gram模型的不同形式Unigram(N=1)每个词的出现概率与其他词无关,仅考虑该词在语料库中的频率。Bigram(N=2)每个词的出现概率仅与前一个词有关。Trigram(N=3)每个词的出现概率与前两个词有关。随着N值的增加,模型能捕捉更长的上下文依赖,但也需要更多的训练数据来避免数据稀疏问题。N-gram语言模型的平滑操作平滑技术的目的解决语料库中不存在的词组合问题加一平滑在所有可能的词组合计数上加一3加一平滑公式插值技术组合不同阶的N-gram模型来预测词的概率平滑的核心理念是对于那些在语料库中未出现过的词组合,赋予它们一个微小的概率值而非零概率,以此来防止在计算联合概率时遇到零概率的问题。N-gram平滑操作计算示例单词IwanttoeatChinesefoodlunchspend频次253392724177461581093341278上表展示了语料库中不同单词出现频次的统计信息。通过加一平滑操作,即使某个词组合在训练集中没有出现,也可以赋予它一个非零的概率,从而使模型能够处理那些在训练阶段未观察到的词组合。N-gram语言模型的缺点语义理解有限将所有单词孤立对待,只考虑其出现次数,忽略了单词的深层次信息语义关系和文本的真实语境。上下文窗口固定N-gram模型只能根据前面的N个词来计算概率,无法捕捉更长距离的依赖关系。无法识别相似词无法理解词汇之间的语义关系,如"bicycle"和"bike"之间的相似性。数据稀疏问题在语料库不足的情况下,N-gram模型可能会给语义相似但表达不同的句子赋予很低的概率。词嵌入简介词嵌入(WordEmbedding)是一种在自然语言处理中广泛使用的表示方法,它将离散的词汇表中的每个词转换为连续向量空间中的稠密向量。简而言之,就是将词进行向量化操作,使其能够被机器学习算法处理。词嵌入的目的通过词嵌入,期望这些向量能够包含足够多的信息,从而提升算法在不变条件下的整体性能。就像日常生活中的身份证ID能够包含一个人的多种信息,词嵌入也希望能够在一个向量中表达足够多的词语信息,以便计算机根据需求进行数据处理。词嵌入的重要性在语音识别领域,将音频序列转换为向量作为模型的输入;在图像处理领域,通过像素值构成的矩阵作为模型的输入。语音和图像都具备自然的向量化条件,可以通过不同的度量方式判断相似性。然而,语言并不具备天然的向量化条件,因此词嵌入在自然语言处理领域具有极其重要的现实意义。离散分布表示独热编码定义将每个单词表示为一个稀疏向量的方法,其中向量的长度等于词汇表中的单词数量,向量中的每个元素都是0,除了表示单词的索引处为1。独热编码优点可以将单词表示为一个固定长度的向量,使得它们可以被统计模型轻松地处理。可以依靠矩阵迅速计算得到结果,本身具备良好的可解释性利于人工归纳与特征表示。独热编码缺点当词汇表非常大时,独热编码会导致生成非常稀疏的向量,这不仅增加了存储和计算的复杂性,还容易造成维度灾难。这种独立看待每个单词的编码方式,在向量层面上使得各个单词之间无法进行有效的相似性衡量。独热编码示例catdogtheisonundertablewalkscat10000000dog01000000the00100000is00010000on00001000在上表中,使用独热向量对单词进行编码,对于独热编码中的每个向量,只有一个元素是1,其余都是0,因此每个单词都可以在向量空间中被唯一地表示。这使得模型能够区分不同的单词,并将它们用作特征来预测下一个单词或者进行其他类型的自然语言处理任务。分布式表示定义分布式表示是一种将词转换为固定长度的连续稠密向量的技术距离概念允许在向量空间中为词之间定义"距离"概念,从而能够在向量中封装更丰富的信息语义表示能够在一个统一的空间内表达多样化且复杂的语义信息简化学习通过直观的向量表示,降低后续学习任务的难度分布式表示具有普适性,确保所提出的语义表示在不同的数据集和应用场景下均可有效工作,展现出广泛的适用性。例如,Word2Vec或GloVe等技术生成的词向量可以在情感分析、机器翻译等多种任务中应用,且表现出良好的效果。NNLM神经网络语言模型简介NNLM定义基于深度学习的神经网络语言模型(NeuralNetworkLanguageModel,简记为NNLM)改变了传统的独热编码方法,使用神经网络来学习能够反映单词语义特征的分布式表示,即词嵌入表示。历史背景这一概念最初由YoshuaBengio教授及其团队在2003年发表的里程碑论文《ANeuralProbabilisticLanguageModel》中提出。词嵌入思想NNLM利用神经网络引入了分布式词表示的思想,即每个单词用实值向量表示,从而更好地捕捉词与词之间的微妙关系和语义信息。语义映射在词嵌入过程中,主要目的是将单词映射到一个线性空间中,在这个空间中,具有相似语义的两个单词会被映射到空间中的两个点更接近一些。NNLM模型输入整体结构NNLM(NeuralNetworkLanguageModel)模型通过输入前文的单词序列来预测后文单词的概率。输入处理输入部分是由单词构成的序列,神经网络通过这个序列实现多分类任务,预测下一个词的概率,并将最大概率的单词作为预测结果。编码转换在具体的训练过程中,前文句子中的所有单词会被转换成独热编码形式。输入的单词序列w1···wT,中的每个单词wt都属于一个大但有限的词汇集V。神经网络处理这个独热编码序列被送入神经网络进行处理,以学习单词之间的语义关系和上下文之间的依赖关系。NNLM模型输入示例词汇表示例假设有一个词汇表V,包含以下单词:V={The,cat,is,chasing,the,dog}现在有一个句子"Thecatischasing",可以将这个句子表示为一个单词序列w1,w2,...,wT,其中T是句子中的单词数量。在这里,T=4,句子中的单词有:w1=The,w2=cat,w3=is,w4=chasing独热编码转换然后,可以将每个单词表示为词汇表大小的独热编码向量。例如,假设使用词汇表中单词的索引顺序作为编码,那么"cat"的独热编码向量如下所示:cat=[0,1,0,0,0,0]在这个向量中,第二个元素为1,表示"cat"在词汇表中的索引位置为2。同样地,可以将"Thecatischasing"这个单词序列进行独热编码,作为NNLM模型的输入。编码信息转换独热编码输入NNLM的输入结果为独热编码,即所有单词初始阶段为离散分布表示编码矩阵乘积输入的独热编码会和编码矩阵进行乘积将原始的独热编码表示转换为一个连续的、低维度的实数向量词嵌入生成通过将每个单词的独热编码与编码矩阵相乘,可以获得编码矩阵中的对应行,这便是所谓的词嵌入表示特征向量形成此嵌入表示随后作为当前单词在神经网络中的特征向量,用于执行分类任务编码信息转换示例假设有一个简单的词汇表,其中包含4个单词:{apple,banana,cat,dog}。利用独热编码技术对词汇表进行编码。独热编码矩阵X的形状将是(4,4),因为有4个单词,每个单词用4维的独热编码表示。上述矩阵中的每一行表示不同单词的编码信息,"banana"的独热编码就是:x2=[0100]假设编码矩阵C是一个(4,n)的矩阵,具体编码矩阵的维度可按需设定,本文选择4进行举例。通过将x2与C相乘,可以获得矩阵C中的第二行,这便是单词"banana"的词嵌入表示。NNLM模型细节详述输入层完成了独热编码到分布式表示的操作隐藏层通过非线性激活函数进行特征转换残差连接避免模型遗忘重要信息而损害影响模型性能输出层预测下一个单词的概率分布NNLM模型的基本思想就是利用一个前馈神经网络来拟合一个可以输出文本序列条件概率的函数。模型本身也是简单的三重结构层级,输入层、隐藏层和输出层。输入有wt−1到wt−(n−1)共n−1个单词,即wt出现之前的单词。NNLM模型缺点计算开销大在训练过程中,N
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入职车间安全培训内容课件
- 企业生产安全培训师课件
- 加快形成新质生产力:核心要义
- 河南体彩资金管理办法
- 物流公司公章管理办法
- 《中小学生守则》《中学生日常行为规范》知识竞赛试题(附答案)
- 2025年中央八项规定精神应知应会50题测试卷带答案详解典型题
- 2025年政工师考试试题及参考答案
- 民族教育意识形态建构-洞察及研究
- 清明节主题班会《清明节缅怀先烈》课件
- 江苏手术分级管理制度
- 医院5s管理制度规定管理制度
- 消防避火服课件教学
- 土地法学教学课件电子教案课件
- 小学二年级上册心理健康教案(适合北京教育出版社)
- 2025年时事政治考试题及参考答案(100题)
- 林区施工防火管理制度
- 代办报建合同协议书
- 2024有限公司生产安全事故应急预案
- 三级养老护理员职业技能鉴定理论考试题(附答案)
- 化药口服固体制剂连续制造技术指导原则(试行)
评论
0/150
提交评论