[1] 多层感知机(MLP)
??最典型的MLP包括三层:输入层、隐层和输出层,MLP神经网络的不同层是全连接的(全连接意味着上层的任何神经元都与下层的所有神经元相连)。 ??由此可知,神经网络主要有三个基本要素:权重、偏置和激活函数
??权重:神经元之间的连接强度由权重表示,权重的大小表示可能性的大小
??偏置:偏置设置是为了正确分类样本,这是模型中的一个重要参数,即确保输入计算的输出值不能随意激活。
??激活函数:起非线性映射的作用,其可将神经元的输出幅度限制在一定范围内,一般限制在(-11)或(01)之间。最常用的激活函数是Sigmoid函数,可以(-∞, ∞)数映射(0~1)范围内。
[2] 编码器-解码器(encoder-decoder)
??基于注意机制的编码器-解码器架构如下:
??这里只做一个简单的介绍,了解更多可以查看文章末尾的参考文章列表。
??编码器的最终隐藏状态可以传递给另一个RNN(解码器)。该RNN每个输出都是输出序列中的一个单词RNN下一步输入。然而,这种架构需要编码器来编码整个输入序列的最终隐藏状态。相反,如果使用注意模型,解码器不仅接受最终隐藏状态作为输入,还接受编码器处理输入序列的每一步输出作为输入。在计算解码器输出序列的每次迭代中,编码器可以赋予编码器输出不同的权重。
??解码器循环层的最终输入为注意力加权的编码器输出和循环单元前一步的预测单词索引。下为这一过程的示意图,其中“Context(上下文)表示编码器输出张量。为简化图形,在示意图中省略了嵌入层。
[3] 编码器-解码器(encoder-decoder)
??为解决从长序列到定长向量转换造成的信息损失瓶颈,Attention引入了注意机制。Attention机制与人类翻译文章时的想法有些相似,即将关注我们翻译部分对应的上下文。同样的,Attention在模型中,当我们翻译当前单词时,我们会在源句中找到相应的单词,并结合以前的翻译部分进行相应的翻译,如下图所示,当我们翻译knowledge当翻译power只要把注意力集中在"力量“。这样,当我们decoder在预测目标翻译时,可以看到encoder所有信息不仅限于原始模型中固定长度的隐藏向量,而且不会失去长程信息。
??参考文章列表可以在数学操作中查看。
[4] 残差连接(residual connection)
??如上图所示,上图来自resnet模型的skip block示意图。我们可以使用非线性变化函数来描述网络的输入输出,即输入X,输出为F(x),F通常包括卷积、激活等操作。
??这就是residual connection将输出表达为输入和输入的非线性变换的线性叠加,没有新的公式,没有新的理论,只是一种新的表达。
??残差连接是什么?当然不是。这个概念早就存在于传统的神经网络中,文章2中明确提出了残差的结构,来自LSTM控制门的思想。
y = H ( x , W H ) ? T ( x , W T ) X ? ( 1 ? T ( x , W T ) ) y = H(x,WH)?T(x,WT) X?(1- T(x,WT)) y=H(x,WH)?T(x,WT) X•(1−T(x,WT))
可以看出,当 T ( x , W T ) = 0 T(x,WT) = 0 T(x,WT)=0, y = x y=x y=x,当 T ( x , W T ) = 1 T(x,WT) = 1 T(x,WT)=1, y = H ( x , W H ) y= H(x,WH) y=H(x,WH)。
总之,为我们所知道的就是下面的式子叫残差连接,residual connection:
y = H ( x , W H ) + X y = H(x,WH) + X y=H(x,WH)+X
参考文章:
[1] MLP参考:https://zhuanlan.zhihu.com/p/63184325 [2] 编码器-解码器参考:https://zhuanlan.zhihu.com/p/52036405 [3] 注意力机制参考:https://zhuanlan.zhihu.com/p/46313756 [4] skip connect参考:https://zhuanlan.zhihu.com/p/42833949