一文看懂四种基本的神经网络架构(2)
这里举AlexNet为例:
卷积神经网络在模式识别领域有着重要应用,当然这里只是对卷积神经网络做了最简单的讲解,卷积神经网络中仍然有很多知识,比如局部感受野,权值共享,多卷积核等内容,后续有机会再进行讲解。 循环神经网络(递归神经网络) RNN传统的神经网络对于很多问题难以处理,比如你要预测句子的下一个单词是什么,一般需要用到前面的单词,因为一个句子中前后单词并不是独立的。RNN之所以称为循环神经网路,即一个序列当前的输出与前面的输出也有关。具体的表现形式为网络会对前面的信息进行记忆并应用于当前输出的计算中,即隐藏层之间的节点不再无连接而是有连接的,并且隐藏层的输入不仅包括输入层的输出还包括上一时刻隐藏层的输出。理论上,RNN能够对任何长度的序列数据进行处理。 这是一个简单的RNN的结构,可以看到隐藏层自己是可以跟自己进行连接的。 那么RNN为什么隐藏层能够看到上一刻的隐藏层的输出呢,其实我们把这个网络展开来开就很清晰了。 这个网络在t时刻接收到输入Xt之后,隐藏层的值是St,输出值是Ot,关键一点是,的值不仅仅取决于Xt,还取决于St-1。 式1是输出层的计算公式,输出层是一个全连接层,也就是它的每个节点都和隐藏层的每个节点相连。V是输出层的权重矩阵,g是激活函数。式2是隐藏层的计算公式,它是循环层。U是输入x的权重矩阵,W是上一次的值St-1作为这一次的输入的权重矩阵,f是激活函数。 从上面的公式我们可以看出,循环层和全连接层的区别就是循环层多了一个权重矩阵 W。 如果反复把式2带入到式1,我们将得到: 从上面可以看出,循环神经网络的输出值,是受前面历次输入值Xt、Xt-1、Xt-2、X-3、X-4…影响的,这就是为什么循环神经网络可以往前看任意多个输入值的原因。 深度信念网络 DBN在讲DBN之前,我们需要对DBN的基本组成单位有一定的了解,那就是RBM,受限玻尔兹曼机。 首先什么是玻尔兹曼机? 如图所示为一个玻尔兹曼机,其蓝色节点为隐层,白色节点为输入层。 玻尔兹曼机和递归神经网络相比,区别体现在以下几点: 1、递归神经网络本质是学习一个函数,因此有输入和输出层的概念,而玻尔兹曼机的用处在于学习一组数据的“内在表示”,因此其没有输出层的概念。 2、递归神经网络各节点链接为有向环,而玻尔兹曼机各节点连接成无向完全图。 而受限玻尔兹曼机是什么呢? 最简单的来说就是加入了限制,这个限制就是将完全图变成了二分图。即由一个显层和一个隐层构成,显层与隐层的神经元之间为双向全连接。 h表示隐藏层,v表示显层 在RBM中,任意两个相连的神经元之间有一个权值w表示其连接强度,每个神经元自身有一个偏置系数b(对显层神经元)和c(对隐层神经元)来表示其自身权重。 具体的公式推导在这里就不展示了 (编辑:ASP站长网) |