导航:首页 > 异常信息 > ffm和全连接神经网络区别

ffm和全连接神经网络区别

发布时间:2023-06-16 12:21:12

1. 一文看懂四种基本的神经网络架构

原文链接:
http://blackblog.tech/2018/02/23/Eight-Neural-Network/

更多干货就在我的个人博客 http://blackblog.tech 欢迎关注

刚刚入门神经网络,往往会对众多的神经网络架构感到困惑,神经网络看起来复杂多样,但是这么多架构无非也就是三类,前馈神经网络,循环网络,对称连接网络,本文将介绍四种常见的神经网络,分别是CNN,RNN,DBN,GAN。通过这四种基本的神经网络架构,我们来对神经网络进行一定的了解。

神经网络是机器学习中的一种模型,是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
一般来说,神经网络的架构可以分为三类:

前馈神经网络:
这是实际应用中最常见的神经网络类型。第一层是输入,最后一层是输出。如果有多个隐藏层,我们称之为“深度”神经网络。他们计算出一系列改变样本相似性的变换。各层神经元的活动是前一层活动的非线性函数。

循环网络:
循环网络在他们的连接图中定向了循环,这意味着你可以按照箭头回到你开始的地方。他们可以有复杂的动态,使其很难训练。他们更具有生物真实性。
循环网络的目的使用来处理序列数据。在传统的神经网络模型中,是从输入层到隐含层再到输出层,层与层之间是全连接的,每层之间的节点是无连接的。但是这种普通的神经网络对于很多问题却无能无力。例如,你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。
循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。

对称连接网络:
对称连接网络有点像循环网络,但是单元之间的连接是对称的(它们在两个方向上权重相同)。比起循环网络,对称连接网络更容易分析。这个网络中有更多的限制,因为它们遵守能量函数定律。没有隐藏单元的对称连接网络被称为“Hopfield 网络”。有隐藏单元的对称连接的网络被称为玻尔兹曼机。

其实之前的帖子讲过一些关于感知机的内容,这里再复述一下。
首先还是这张图
这是一个M-P神经元

一个神经元有n个输入,每一个输入对应一个权值w,神经元内会对输入与权重做乘法后求和,求和的结果与偏置做差,最终将结果放入激活函数中,由激活函数给出最后的输出,输出往往是二进制的,0 状态代表抑制,1 状态代表激活。

可以把感知机看作是 n 维实例空间中的超平面决策面,对于超平面一侧的样本,感知器输出 1,对于另一侧的实例输出 0,这个决策超平面方程是 w⋅x=0。 那些可以被某一个超平面分割的正反样例集合称为线性可分(linearly separable)样例集合,它们就可以使用图中的感知机表示。
与、或、非问题都是线性可分的问题,使用一个有两输入的感知机能容易地表示,而异或并不是一个线性可分的问题,所以使用单层感知机是不行的,这时候就要使用多层感知机来解决疑惑问题了。

如果我们要训练一个感知机,应该怎么办呢?
我们会从随机的权值开始,反复地应用这个感知机到每个训练样例,只要它误分类样例就修改感知机的权值。重复这个过程,直到感知机正确分类所有的样例。每一步根据感知机训练法则来修改权值,也就是修改与输入 xi 对应的权 wi,法则如下:

这里 t 是当前训练样例的目标输出,o 是感知机的输出,η 是一个正的常数称为学习速率。学习速率的作用是缓和每一步调整权的程度,它通常被设为一个小的数值(例如 0.1),而且有时会使其随着权调整次数的增加而衰减。

多层感知机,或者说是多层神经网络无非就是在输入层与输出层之间加了多个隐藏层而已,后续的CNN,DBN等神经网络只不过是将重新设计了每一层的类型。感知机可以说是神经网络的基础,后续更为复杂的神经网络都离不开最简单的感知机的模型,

谈到机器学习,我们往往还会跟上一个词语,叫做模式识别,但是真实环境中的模式识别往往会出现各种问题。比如:
图像分割:真实场景中总是掺杂着其它物体。很难判断哪些部分属于同一个对象。对象的某些部分可以隐藏在其他对象的后面。
物体光照:像素的强度被光照强烈影响。
图像变形:物体可以以各种非仿射方式变形。例如,手写也可以有一个大的圆圈或只是一个尖头。
情景支持:物体所属类别通常由它们的使用方式来定义。例如,椅子是为了让人们坐在上面而设计的,因此它们具有各种各样的物理形状。
卷积神经网络与普通神经网络的区别在于,卷积神经网络包含了一个由卷积层和子采样层构成的特征抽取器。在卷积神经网络的卷积层中,一个神经元只与部分邻层神经元连接。在CNN的一个卷积层中,通常包含若干个特征平面(featureMap),每个特征平面由一些矩形排列的的神经元组成,同一特征平面的神经元共享权值,这里共享的权值就是卷积核。卷积核一般以随机小数矩阵的形式初始化,在网络的训练过程中卷积核将学习得到合理的权值。共享权值(卷积核)带来的直接好处是减少网络各层之间的连接,同时又降低了过拟合的风险。子采样也叫做池化(pooling),通常有均值子采样(mean pooling)和最大值子采样(max pooling)两种形式。子采样可以看作一种特殊的卷积过程。卷积和子采样大大简化了模型复杂度,减少了模型的参数。
卷积神经网络由三部分构成。第一部分是输入层。第二部分由n个卷积层和池化层的组合组成。第三部分由一个全连结的多层感知机分类器构成。
这里举AlexNet为例:

·输入:224×224大小的图片,3通道
·第一层卷积:11×11大小的卷积核96个,每个GPU上48个。
·第一层max-pooling:2×2的核。
·第二层卷积:5×5卷积核256个,每个GPU上128个。
·第二层max-pooling:2×2的核。
·第三层卷积:与上一层是全连接,3*3的卷积核384个。分到两个GPU上个192个。
·第四层卷积:3×3的卷积核384个,两个GPU各192个。该层与上一层连接没有经过pooling层。
·第五层卷积:3×3的卷积核256个,两个GPU上个128个。
·第五层max-pooling:2×2的核。
·第一层全连接:4096维,将第五层max-pooling的输出连接成为一个一维向量,作为该层的输入。
·第二层全连接:4096维
·Softmax层:输出为1000,输出的每一维都是图片属于该类别的概率。

卷积神经网络在模式识别领域有着重要应用,当然这里只是对卷积神经网络做了最简单的讲解,卷积神经网络中仍然有很多知识,比如局部感受野,权值共享,多卷积核等内容,后续有机会再进行讲解。

传统的神经网络对于很多问题难以处理,比如你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。理论上,RNN能够对任何长度的序列数据进行处理。
这是一个简单的RNN的结构,可以看到隐藏层自己是可以跟自己进行连接的。

那么RNN为什么隐藏层能够看到上一刻的隐藏层的输出呢,其实我们把这个网络展开来开就很清晰了。

从上面的公式我们可以看出,循环层和全连接层的区别就是循环层多了一个权重矩阵 W。
如果反复把式2带入到式1,我们将得到:

在讲DBN之前,我们需要对DBN的基本组成单位有一定的了解,那就是RBM,受限玻尔兹曼机。
首先什么是玻尔兹曼机?
[图片上传失败...(image-d36b31-1519636788074)]
如图所示为一个玻尔兹曼机,其蓝色节点为隐层,白色节点为输入层。
玻尔兹曼机和递归神经网络相比,区别体现在以下几点:
1、递归神经网络本质是学习一个函数,因此有输入和输出层的概念,而玻尔兹曼机的用处在于学习一组数据的“内在表示”,因此其没有输出层的概念。
2、递归神经网络各节点链接为有向环,而玻尔兹曼机各节点连接成无向完全图。

而受限玻尔兹曼机是什么呢?
最简单的来说就是加入了限制,这个限制就是将完全图变成了二分图。即由一个显层和一个隐层构成,显层与隐层的神经元之间为双向全连接。

h表示隐藏层,v表示显层
在RBM中,任意两个相连的神经元之间有一个权值w表示其连接强度,每个神经元自身有一个偏置系数b(对显层神经元)和c(对隐层神经元)来表示其自身权重。
具体的公式推导在这里就不展示了

DBN是一个概率生成模型,与传统的判别模型的神经网络相对,生成模型是建立一个观察数据和标签之间的联合分布,对P(Observation|Label)和 P(Label|Observation)都做了评估,而判别模型仅仅而已评估了后者,也就是P(Label|Observation)。
DBN由多个限制玻尔兹曼机(Restricted Boltzmann Machines)层组成,一个典型的神经网络类型如图所示。这些网络被“限制”为一个可视层和一个隐层,层间存在连接,但层内的单元间不存在连接。隐层单元被训练去捕捉在可视层表现出来的高阶数据的相关性。

生成对抗网络其实在之前的帖子中做过讲解,这里在说明一下。
生成对抗网络的目标在于生成,我们传统的网络结构往往都是判别模型,即判断一个样本的真实性。而生成模型能够根据所提供的样本生成类似的新样本,注意这些样本是由计算机学习而来的。
GAN一般由两个网络组成,生成模型网络,判别模型网络。
生成模型 G 捕捉样本数据的分布,用服从某一分布(均匀分布,高斯分布等)的噪声 z 生成一个类似真实训练数据的样本,追求效果是越像真实样本越好;判别模型 D 是一个二分类器,估计一个样本来自于训练数据(而非生成数据)的概率,如果样本来自于真实的训练数据,D 输出大概率,否则,D 输出小概率。
举个例子:生成网络 G 好比假币制造团伙,专门制造假币,判别网络 D 好比警察,专门检测使用的货币是真币还是假币,G 的目标是想方设法生成和真币一样的货币,使得 D 判别不出来,D 的目标是想方设法检测出来 G 生成的假币。
传统的判别网络:

生成对抗网络:

下面展示一个cDCGAN的例子(前面帖子中写过的)
生成网络

判别网络

最终结果,使用MNIST作为初始样本,通过学习后生成的数字,可以看到学习的效果还是不错的。

本文非常简单的介绍了四种神经网络的架构,CNN,RNN,DBN,GAN。当然也仅仅是简单的介绍,并没有深层次讲解其内涵。这四种神经网络的架构十分常见,应用也十分广泛。当然关于神经网络的知识,不可能几篇帖子就讲解完,这里知识讲解一些基础知识,帮助大家快速入(zhuang)门(bi)。后面的帖子将对深度自动编码器,Hopfield 网络长短期记忆网络(LSTM)进行讲解。

2. 深度学习与神经网络有什么区别

找深度学习和神经网络的不同点,其实主要的就是:
原来多层神经网络做的步骤是:特征映射到值。特征是人工挑选。
深度学习做的步骤是 信号->特征->值。 特征是由网络自己选知仔择。

另外,深度学习作为机器学习的领域中一个新的研究方向,在被引进机器学习后,让机器学习可以更加的接近最初的目标,也就是人工智能。
深度学习主要就是对样本数据的内在规律还有表示层次的学习,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。 深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的悔岩效果,远远超过先前相关技术。
深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。
而神经网络则是可以分为两种,一种是生物神经网络,而另一种则是人工神经网络。
生物神经网络就是生物的大脑神经元、主要是由细胞以及触点组成的,主要的作用就是让生物产生意识,或者是帮助生物实现思考还有行动的目的。
神经网络可以指向两种,一个是生物神经网络,一个是人工神经网络。
人工神经网络(Artificial Neural Networks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(Connection Model),它是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。
人搭前汪工神经网络:是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在工程与学术界也常直接简称为“神经网络”或类神经网络。

3. 语言模型介绍

语言模型(LM)是很多自然语言处理(NLP)任务的基础。语言模型是指对于语言序列 ,计算该序列的概率,即 ,这里的语言序列是有序的语言序列,后续计算也会体现这一点。一般我们认为一个正常的语句,它出现的概率是大于非正常的语句。比如有如下三个语句:

那么应当会有 和 ,这是因为 正常词序的语句会比乱序的语句更常见,正常含义的语句会比无意义的语句更常见

计算一个语言序列的概率,我们可以使用链式法则去计算

但该计算方法有两个缺陷:

我们能够建立语言模型了,一般的我们在训练集上得到语言模型的参数,在测试集里面来测试模型的性能,那么如何去衡量一个语言模型的好坏呢?比较两个模型A,B好坏,一种外在的评价就是将AB放入具体的任务中,然后分别得到模型的准确率,这种方式当然是最好的方式,但这种方式的缺点是过于耗时,在实际情况中往往需要花费过多时间才能得到结果。另一种方式是使用下面要介绍的困惑度,但注意困惑度并不是上述外在评价的一个好的近似,所以一般使用在试点试验上,所谓试点试验就是一个小规模的初步研究,以评估一些性能。
困惑度的基本评价方式是对测试集赋予高概率值的模型更好,一个句子W的困惑度(PP)定义如下:

S代表sentence,N是句子长度, 是第i个词的概率。第一个词就是 ,而 是<s>,表示句子的起始,是个占位符,事实上,结尾应该也有一个占位符,但这里好像没有写。

这个式子可以这样理解,PPL越小, 则越大,一句我们期望的sentence出现的概率就越高。

为了解决参数空间过大的问题。人们引入了马尔科夫假设:随意一个词出现的概率只与它前面出现的有限的一个或者几个词有关。

如果一个词的出现与它周围的词是独立的,那么我们就称之为unigram,也就是一元语言模型:

如果一个词的出现仅依赖于它前面出现的一个词,那么我们就称之为bigram:

一般来说,N元模型就是假设当前词的出现概率只与它前面的n-1个词有关。而这些概率参数都是可以通过大规模语料库来计算:

在实践中用的最多的就是bigram和trigram了,高于四元的用的非常少,由于训练它须要更庞大的语料,并且数据稀疏严重,时间复杂度高,精度却提高的不多。

那在实际计算中,我们怎么计算一个句子的概率呢?
以一元模型为例,在一元语言模型中,我们的句子概率定义为:

那么这里面的每个因子 该怎么计算呢?
这里使用频率统计的办法,由于一元模型认为每个词是相互独立的,所以统计的时候,只需要统计语料库中每个词出现的频率作为概率就可以了。

这里的计算可以认为是根据极大似然估计得到的,假如词典里有V个词,每个词对应一个概率,考虑到所有词出现的概率和是1,那就有V-1个参数 。假设词典表中第i词在语料库中出现的数目为 ,并且 那么根据极大似然估计就有:


取对数之后:

这个可以用多元函数极值去求解。不过这样进行多元极值求解不容易计算,如果用条件极值会容易计算,用拉格朗日乘数法进行求解。

求解得:

有了每个词的出现概率,带入到式子 中就可以计算出对应句子的概率。

对于二元模型或者多元模型,其计算方式有些区别,因为假设有些不同,假如我们需要计算 的值,那么统计频率的方式是:

那对于bigram中的第一个词的概率,由于他之前没有词汇,那这时候我们一般会认为句子的开头和结尾分别有一个抽象符号<s>和</s>,那么句子就变成了<s>, ,</s>,因此 式可以变为:

其余的n-gram模型也是类似的计算方法,有的地方说的是不要用添加开始和结尾的符号,直接用unigram和bigram的方法去计算 即可,这里暂时以斯坦福的课程为准吧,但是应该对最终影响有限,毕竟本质上是在做最大似然估计。

在上述 计算过程中,由于分子是词对出现的次数,那很有可能在语料库中没有出现这样的词对,这时计算结果就是0,同时也会导致句子的出现概率也为0,那这样有些不合理,即使写错了字,也应当有一定概率出现,所以在计算 式的时候要做一下平滑处理

其原理是保证每一个词对(对于bigram而言)都会出现一次,因此, 式可以修改为:

其中V是词的字典数目,这里分母加1是为了保证概率和为1,即 ,通俗理解为,我们往语料库中加入了 这V个词对,因此其分母语料库统计的数目也要加V。

Add-K平滑就是保证每个词对都出现K次,因此, 式可以修改为:

这里分母加KV和之前的模式是一样的。

这个估计是一个很重要的平滑方式,其原理就是对于没有看见的事件,我们不能认为它的发生概率就是零,因此我们从概率的总量(Probability mass)中,分配一个很小的比例给予这些没有看见的事件,这样一来,看见的那些事件的概率总和就要小于1,因此,需要将所有看见的事件概率小一点。至于小多少,要根据“越是不可信的统计折扣越多”的方法进行。
可以参考: https://zhuanlan.hu.com/p/53636976

神经网络语言模型就是指利用神经网络进行语言建模,当前的一些预训练语言模型就是利用神经网络来建模的。

前向神经网络,又被称为全连接(Fully Connected Neural Network)神经网络,是最早被引入到语言建模中的神经网络结构。前向神经网络一般可表示为:

这里的 是一个resial connect的含义。
其中 ,是权重矩阵, 是输出层的节点数,在语言模型中等于词典的大小, 等于隐藏层大小,为用户自定义。 是输入的特征维度。

当我们用上述前馈神经网络来描述语言模型的时候,我们假设要预测词 ,那我们通常用 这前n-1个词作为输入。一般词的输入先要做一层embedding的映射,将每个词转为一个低维度的向量,这就需要一个look up table,假设字典数目是V,而embedding的长度是m,那么这个look up table就是一个 的矩阵。输入了n-1个词,经过embedding之后,就有n-1个m维度向量,我们将它们拼接起来作为前馈神经网络的输入,这时候前馈神经网络的输入维度 ,最终输出的 作为预测 的得分,然后再接一层softmax得出概率,计算交叉熵损失函数即可训练模型。
下图中的每个子单元是在对语句中的某一个词进行预测。

循环神经网络(Recurrent Neural Networks)是另一种可以用来进行语言模型建模的网络结构,之前提到的前向神经网络语言模型是以前n-1个词作为输入来预测当前词,这种处理方式是解决不了时序问题的,在预测当前词的时候,无法很好的依赖于上下文(主要是上文),而循环神经网络则可以解决上下文依赖问题。

循环神经网络引入了一个中间隐藏层 ,该隐藏层的状态可以沿着时间将信息传给下一次预测。直观来说,就是将第 时刻的隐藏层的状态 作为第 时刻模型预测或者训练的一个输入,这里的时刻也可以叫做时间步。
下图是一张对RNN进行时间铺开的展示图,每个时间单元都将自身的隐藏层作为下一个时间单元的输入,这张图上面并没有画出第一个时间单元接受的隐藏层的输入,事实上,第一个单元也接受了输入,一般是一个初始化的0向量。

上述的结构依然有局限性,就是它只能利用近期的信息去编码我们需要的格式,如果时间步的跨度过大,原先的信息会在传递中逐渐丢失。
假设现在有这样一个任务,考虑到下面这句话“I grew up in France… I speak fluent French.”,现在需要语言模型通过现有以前的文字信息预测该句话的最后一个字。通过以前文字语境可以预测出最后一个字是某种语言,但是要猜测出French,要根据之前的France语境。因为这次的有用信息与需要进行处理信息的地方之间的距离较远,这样容易导致RNN不能学习到有用的信息,最终推导的任务可能失败。

LSTMs也是循环神经网络的一种,它利用了cell状态将长期依赖的信息保留了下来,它也具有这种链式结构,但是它的重复单元不同于标准RNN网络里的单元只有一个网络层,它的内部有四个网络层。LSTMs的结构如下图所示。

LSTM的核心是细胞状态,用贯穿计算单元的水平线表示。这个状态区别于隐藏层的状态,它只是很少的参与信息交换,所以可以保存较远的时间步的信息。我们可以从下图看到,细胞状态在一个时间步里面只参与三次信息交互:两次接受信息,一次输出信息参与计算。这三个操作被称为门,分别称为忘记门、输入门和输出门。

最后回到语言模型上面,使用RNN进行语言模型建模,那么输入的 就是经过embedding的结果,并且最后对于每个 的输出上再接一层全连接层,输出词典数目的维度,最后再加一层softmax就可以得到下一个词输出的概率

上述的都是单向语言模型,但是实际上,我们在t时刻的词的概率不只会依赖于之前的词,有时候还会和后面的词有关,比如说there is a tree,这里的is就是单数形式,依赖于后面的a tree来确定。所以就有了两个单向的LSTM(并不是Bi-LSTM)去更好的进行语言建模。

给定N个token的序列 ,前向语言模型的表示方法为:

同样的,后向语言模型的表示方法为:

前向模型和后向模型都是用同样的方式去预测下一个词,只是方向不同,而且ELMo不光是两个反方向的LSTM模型叠加,还可以是多层的两个反方向LSTM叠加,因此会有多个细胞状态和隐藏层,但其实和单层的是一样的,只是上层的LSTM接受的输入是下层的隐藏层(也可以加上残差连接),两个不同方向的LSTM模型是互不干扰的,他们的联系就只有输入的token的embedding是共用的,以及最后的全连接加softmax是通用的。ELMo训练的时候,比如预测词 ,输入 左边的词汇,经过正向LSTM得到一个 ,同时输入 右边的词汇,经过反向LSTM也得到了一个 ,然后将这两个hidden拼接到一起之后接一个全连接softmax,就可以得到当前输出为词汇表中各词的概率了,同前文中描述的一样,交叉熵损失函数就是当前预测词为实际词的概率,也就是我们要求的语言模型的概率。
最后的极大似然估计则为:

其中token 的embedding表示的参数 以及softmax 层(全连接加softmax转成字典的向量维度)参数 前后向是通用的,LSTM 的参数按照方向取不同值。

传统的语言模型是从左到右或者从右到左的利用上文或者下文去预测当前词,但实际上,当前词出现不只是单单依靠上文或者下文,其实应该是同时依赖于上下文,在ELMo里面,就是用了双向语言模型的结构,但是这种双向语言模型只是两个独立的前向和后向模型合并起来的,并不是一种完美的结合上下文。因此谷歌在Bidirectional Encoder Representation from Transformers一文中,提出了一种Masked Language Model,该语言模型结构是在一个句子中随机挑选一部分词汇,用一个MASK标记替换掉该词汇,然后在模型训练的时候去预测该词汇,完成训练过程
Masked的具体过程是随机选择语料中15%的token,然后再将这些token以80%的概率用[MASK]替换掉,10%的概率用词汇表中的其余词汇替换,还有10%的概率保持不变,然后将这15%的token的位置记录下来。Masked language model需要将包含了MASK的token输入到transformer的encoder的结构里面,encoder会针对每一个输入的token进行self-attention,这样就可以让某个词的信息编码到全局信息。最后根据之前MASK的token位置,取出这些token各自对应的hidden,然后再接一个全连接softmax得到预测值(这里的全连接softmax并不加入到语言模型的词语表征里面,只在训练时候使用),最后再根据实际值去计算mask token的损失函数值。在Bert里面除了mask token的损失值,还有一个next sentence的损失值,对于两个句子组成的句子对,bert在构造样本的时候,会将后一个句子以一定概率替换成其余的句子,并且要记录下构造样本是随机生成的句子对还是真实的句子对,损失值的计算需要用到[CLS]的表征结果,我们对[CLS]的表征结果经过一层全连接softmax,然后去判断这个句子对是随机生成的还是真实的。最后,这两个损失值是直接相加作为最终损失值。
参考链接:
Statistical language model 统计语言模型
深入理解语言模型 Language Model
从经典结构到改进方法,神经网络语言模型综述
深入浅出讲解语言模型
神经网络语言建模系列之一:基础模型

4. 线性层和全连接层的区别

线性层和全连接层没有区别。线性层即全连接层。

全连接层,是每一个结点都与上一层的所有结点相连,用来把前边提取到的特征综合起来。由于其全相连的特性,一般全连接层的参数也是最多的。

例如在VGG16中,第一个全连接层FC1有4096个节点,上一层POOL2是7*7*512 = 25088个节点,则该传输需要4096*25088个权值,需要耗很大的内存。

卷积神经网络的全连接层

在 CNN 结构中,经多个卷积层和池化层后,连接着1个或1个以上的全连接层。与 MLP 类似,全连接层中的每个神经元与其前一层的所有神经元进行全连接。全连接层可以整合卷积层或者池化层中具有类别区分性的局部信息。为了提升 CNN 网络性能,全连接层每个神经元的激励函数一般采用 ReLU 函数。

最后一层全连接层的输出值被传递给一个输出,可以采用 softmax 逻辑回归(softmax regression)进行分类,该层也可称为 softmax 层(softmax layer)。对于一个具体的分类任务,选择一个合适的损失函数是十分重要的,CNN 有几种常用的损失函数,各自都有不同的特点。通常,CNN 的全连接层与 MLP 结构一样,CNN 的训练算法也多采用BP算法。



5. 深度学习和神经网络的区别是什么

这两个概念实际上是互相交叉的,例如,卷积神经网络(Convolutional neural networks,简称CNNs)就是一种深度的监督学习下的机器学习模型,而深度置信网(Deep Belief Nets,简称DBNs)就是一种无监督学习下的机器学习模型。
深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。
深度学习的概念由Hinton等人于2006年提出。基于深信度网(DBN)提出非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来希望,随后提出多层自动编码器深层结构。此外Lecun等人提出的卷积神经网络是第一个真正多层结构学习算法,它利用空间相对关系减少参数数目以提高训练性能。

6. 全连接神经网络和传统bp网的区别

?
一个是表示各层连接方式,一个表示训练方式。没有什么可比性。

7. 前馈式神经网络与反馈式神经网络有何不同

前馈式神经网络和反馈式神经网络是两种主要的神经网络架构。

前馈式神经网络是信息在网络中单向流动的结构,它的信息只能从输入层流向输出层。常见的迟掘慎前馈式神经网络有多层感知器和卷积神经网络。

反馈散镇式神经网络是信息在网络中双码敬向流动的结构,信息可以从输入层流向输出层,也可以从输出层流回输入层。常见的反馈式神经网络有循环神经网络和递归神经网络。

前馈式神经网络适用于静态任务,而反馈式神经网络适用于动态任务。

阅读全文

与ffm和全连接神经网络区别相关的资料

热点内容
网络共享中心没有网卡 浏览:491
电脑无法检测到网络代理 浏览:1348
笔记本电脑一天会用多少流量 浏览:473
苹果电脑整机转移新机 浏览:1347
突然无法连接工作网络 浏览:959
联通网络怎么设置才好 浏览:1189
小区网络电脑怎么连接路由器 浏览:930
p1108打印机网络共享 浏览:1184
怎么调节台式电脑护眼 浏览:601
深圳天虹苹果电脑 浏览:839
网络总是异常断开 浏览:582
中级配置台式电脑 浏览:893
中国网络安全的战士 浏览:601
同志网站在哪里 浏览:1378
版观看完整完结免费手机在线 浏览:1430
怎样切换默认数据网络设置 浏览:1077
肯德基无线网无法访问网络 浏览:1252
光纤猫怎么连接不上网络 浏览:1374
神武3手游网络连接 浏览:936
局网打印机网络共享 浏览:973