至少保存十个以上域名网站,平台网站开发,我注册了哪些网站吗,php网站模块修改1 神经网络语言模型NNLM的提出
文章#xff1a;自然语言处理中的语言模型预训练方法#xff08;ELMo、GPT和BERT#xff09; https://www.cnblogs.com/robert-dlut/p/9824346.html
语言模型不需要人工标注语料#xff08;属于自监督模型#xff09;#xff0c;所以语言…1 神经网络语言模型NNLM的提出
文章自然语言处理中的语言模型预训练方法ELMo、GPT和BERT https://www.cnblogs.com/robert-dlut/p/9824346.html
语言模型不需要人工标注语料属于自监督模型所以语言模型能够从无限制的大规模语料中学习到丰富的语义知识。
1.1 n-gram模型问题
①模型高度依赖训练语料泛化能力差也就是不同文本之间的n-gram差异很大
②模型估算概率时遇到的数据稀疏平滑后效果也不好 点—— 用n-gram语料库训练出来的每个词序列的出现的概率平滑曲线——所有词序列概率相乘所得的PS也就是有这些词序列所组成的句子的出现概率 离散点与曲线的距离——点1是词序列1的概率但是离散词序列点1没在平滑曲线L上面也就是n-gram模型会将该离散词序列1附近的另一个词序列2在平滑曲线上的概率作为离散词序列点1的概率去建立模型。而词序列2不一定在语料库中有出现 因此n-gram所建立的模型对某个句子进行预测时会有较大的概率损失。 这是无论怎么平滑都无法避免的因为建立模型的概率点是离散的。 特别是差异很大的异常点会对模型的结果造成比较大的影响
③n元模型无法建立长期联系
④n-gram以离散符号为统计单元无法体现语义相似性 由于数据是离散的如果特别能没有在语料库出现过而能在语料库中的出现概率很大但是特别能和能意思相近那么根据n-gram的计算原理两个已经意思相近的句子的出现概率可能一个为0一个很大而实际上两个句子的出现概率差不多因此会有很大的概率损失误差。
1.2 NNLM 的提出
神经网络NN
为了解决这个问题我们在将神经网络NN引入到了连续空间的语言建模中。NN 包括前馈神经网络FFNN、循环神经网络RNN、卷积神经网络CNN可以自动学习特征和连续的表征。因此人们希望将 NN 应用于 LM甚至其他的 NLP 任务从而考虑自然语言的离散性、组合性和稀疏性。
n-gram学出了离散词序列出现频率点而深度学习的神经网络语言模型直接学习出了平滑曲线
也就是不同于n-gram里面的平滑曲线是“模糊的拟合”深度学习的平滑曲线是“更细粒度的拟合”。
NNLM可以联系长期上下文
2 前馈神经网络FFNN
别称多层感知器multilayer perceptrons
2.1 包含两层隐藏层的前馈神经网络 每一个箭头都带着权重表示其输入变量的重要程度隐藏层中每个圆圈代表一个神经元神经元对应着某个函数通常都是一个非线性函数σsigmoid最常用也有换成ReUL、tanh的该类非线性函数在NN中被称为激活函数。
激活函数之sigmoid“S型函数”
激活函数之tanhh“双曲正切”函数
激活函数之ReLU“线性整流函数”
隐藏层的结果会通过线性加权组合变成下一个层的输入输出层神经元的个数取决的任务的分类类别个数一些层是没有线性激活函数的比如sigmoid函数
2.2 神经元
每个神经元都是一个函数。
2.2.1 公式
y σ( Σ(Wi * Xi) b)
输入x 输出y 权重Xi对应权重Wi 激活函数σsigmoid、tanh、ReLU
参数b表示偏置/阈值b是一个常数。b与加权求和值相加然后再经过激活函数。这有助于调整神经元的灵敏度和响应特定类型的输入。
在神经元网络中偏置是一种可学习的参数用于调整神经元的激活值。
意义 调整神经元的激活函数在输入为零时的截距位置。
2.2.2 神经元处理步骤
1 对输入加权求和加上偏置b
得到初步的点估计值
h Σ(W * X)b
意义 特征加权重要性权重weights表示了每个输入特征的重要性它们决定了每个特征在神经元的决策中所占的比重。通过适当调整权重神经元可以学习到哪些特征对于问题的解决更为关键从而提高网络的性能。 偏置项引入平移偏置项bias是一个常数它的作用是引入一个平移允许神经元在没有任何输入信号时也能发出非零的响应。这对于模型的表达能力很重要因为它允许神经元不仅仅依赖于输入的线性组合还能引入非线性决策。
实例
房价预测
假设我们正在构建一个神经网络来预测房价。我们有三个 输入特征房屋面积Area、卧室数量Bedrooms、和附近学校的评分School_Rating。每个特征都有对应的权重用来衡量它们在预测房价中的重要性。
权重1w1对应房屋面积表示房屋面积对房价的影响程度。权重2w2对应卧室数量表示卧室数量对房价的影响程度。权重3w3对应附近学校的评分表示学校评分对房价的影响程度。
假设偏置项b为-10000这意味着即使所有输入特征都为零房价预测也不会降到零因为偏置项引入了一个平移。这是因为即使房屋没有面积、没有卧室、学校评分为零房价仍然有一个基本价值。
通过对这些输入进行加权求和加上偏置项神经元可以计算一个房价的初始估计值。然后这个初始估计值将被送入激活函数例如线性激活函数、Sigmoid函数或ReLU函数以引入非线性性质并产生最终的房价预测。
2 激活函数映射——引入非线性性质
将h的值通过激活函数σ映射到一个特定的输出范围内的一个值通常是[0, 1]或[-1, 1]
σh 意义引入非线性性质,使神经网络能够适应更加复杂的数据模式和问题。
例子
二元分类
假设我们有一个二元分类问题要根据一些特征来预测一封电子邮件是垃圾邮件标记为1还是非垃圾邮件标记为0。神经网络的最后一层输出单元通常需要产生一个在[0, 1]范围内的值表示某封邮件属于垃圾邮件的概率。这时Sigmoid激活函数非常适合用于最后一层因为它可以将加权求和值映射到[0, 1]之间的范围。
例如如果某封邮件的加权求和值为0经过Sigmoid激活后输出为0.5表示该邮件属于垃圾邮件和非垃圾邮件的概率相等。如果加权求和值远远大于0例如10经过Sigmoid激活后输出接近于1表示邮件极有可能是垃圾邮件。反之如果加权求和值远远小于0例如-10经过Sigmoid激活后输出接近于0表示邮件很可能是非垃圾邮件。
这样我们可以利用Sigmoid函数将连续的加权求和值映射到概率值方便进行分类决策。
③
3 前馈神经网络语言模型FFNNLM
(Feed Forward Neural Language Model )
前馈神经网络语言模型FFNNLM由 Bengio 等人于 2003 年提出它通过学习一个单词的分布式表征将单词表征为一个被称为「嵌入」的低维向量来克服维数诅咒。FFNNLM 的性能要优于 N 元语言模型。
该语言模型使用了一个三层前馈神经网络来进行建模。其中有趣的发现了第一层参数用做词表示不仅低维紧密而且能够蕴涵语义也就为现在大家都用的词向量例如word2vec打下了基础
Word2Vec是Google公司于2013年发布的一个开源词向量工具包。该项目的算法理论参考了Bengio 在2003年设计的神经网络语言模型。由于此神经网络模型使用了两次非线性变换(tanh、softmax)网络参数很多训练缓慢因此不适合大语料。Mikolov团队对其做了简化实现了Word2Vec词向量模型。 ——《NLP汉语自然语言处理原理与实践》 右上方橙色表格为词向量矩阵对应下面的V NNLM北语讲解
3.2 LSTM-RNNLM长短期记忆循环神经网络模型
Mikolov 等人于 2010 年提出了 RNN 语言模型RNNLM理论上可以记忆无限个单词可以看作无穷元语法 (∞-gram)。 RNN解决了学习长期依赖问题能够联系上下文 是否三元或者四元甚至更高阶的模型就能覆盖所有的语言现象呢?答案显然是否定的。因为自然语言中上下文之间的相关性可能跨度非常大甚至可以从一个段落跨到另一个段落。因此即使模型的阶数再提高对这种情况也无可奈何这就是马尔可夫假设的局限性这时就要采用其他一些长程的依赖性(Long DistanceDependency来解决这个问题了。——《数学之美》 参考
自然语言处理NLP中的N-gram模型
简单理解 n-gram 语言模型N-Gram N-gram的简单的介绍 N-Gram语言模型 语言模型LM和循环神经网络RNNs 自然语言处理中的语言模型预训练方法ELMo、GPT和BERT 【研究前沿】神经网络语言模型综述_单词 NLPn-gram模型 前馈网络