多层感知机
深度学习主要关注多层模型,现在以多层感知机(multilayer perceptron,MLP)为例,介绍多层神经网络的概念。
隐藏层
多层感知机在单层神经网络的基础上引入了一到多个隐藏层(hidden layer)。隐藏层位于输入层和输出层之间。图展示了一个多层感知机的神经网络图。
模型图所示的多层感知机中,输入和输出个数分别为4和3,中间的隐藏层中包含了5个隐藏单元(hidden unit)。由于输入层不涉及计算,模型图中的多层感知机的层数为2。由模型图可见,隐藏层中的神经元和输入层中各个输入完全连接,输出层中的神经元和隐藏层中的各个神经元也完全连接。因此,多层感知机中的隐藏层和输出层都是全连接层。
具体来说,给定一个小批量样本X∈ℝn×d,其批量大小为n,输入个数为d。假设多层感知机只有一个隐藏层,其中隐藏单元个数为h。记隐藏层的输出(也称为隐藏层变量或隐藏变量)为H,有H∈ℝn×h,因为隐藏层和输出层均是全连接层,可以设隐藏层的权重参数和偏差参数分别为Wh∈ℝd×h和bh∈ℝ1×h,输出层的权重和偏差参数分别W0∈ℝh×q和b0∈ℝ1×q
我们先来看一种含单隐藏层的多层感知机的设计。其输出的计算为
也就是将隐藏层的输出直接作为输出层的输入。如果将以上两个式子联立起来,可以得到
从联立后的式子可以看出,虽然神经网络引入了隐藏层,却依然等价于一个单层神经网络:其中输出层权重参数为WhW0,偏差参数为bhW0+