对于常见线性回归和 s o f t m a x softmax softmax 单层神经网络,在深度学习中的多层神经网络都可以对带有隐藏层的多层感知机,其中的一至多个隐藏层经过非线性变换等价于一个单层的神经网络;常⽤的激活函数包括 R e L U ReLU ReLU 函数、 s i g m o i d sigmoid sigmoid 函数和 t a n h tanh tanh 函数。
一个小批量样本 X X X ∈ \in ∈ R m ∗ n R^{m*n} Rm∗n,其中批量大小为 n n n,输入个数为 d d d,假设多层感知机有一个隐藏层,其中隐藏单元个数为 h h h,其中 H 为隐藏层的输出,由于隐藏层和输出层均是全连接层,可以假设隐藏层的权重参数和偏差参数分别为 W h W_{h} Wh ∈ \in ∈ R d ∗ h R^{d*h} Rd∗h 和 b n b_{n} bn ∈ \in ∈ R 1 ∗ h R^{1*h} R1∗h,输出层的权重和偏差参数分别为 W o W_{o} Wo ∈ \in ∈ R h ∗ q R^{h*q} Rh∗q 和 b o b_{o} bo ∈ \in ∈ R n ∗ q R^{n*q} Rn∗q。 我们计算含单隐藏层的输出 O O O ∈ \in ∈ R n ∗ q R^{n*q} Rn∗q为: H = X W h + b n H = XW_{h} + b_{n} H=XWh+bn O = H W o + b o O = HW_{o} + b_{o} O=HWo+bo 将第 1 个表达式代入到第二个表达式: O = ( X W h + b h ) W o + b o = X W h W o + b h W o + b o O = (XW_{h}+b_{h})W_{o} + b_{o} = XW_{h}W_{o}+ b_{h}W_{o} + b_{o} O=(XWh+bh)Wo+bo=XWhWo+bhWo+bo 不难可以看出虽然神经网络引入了隐藏层,但依然等价于一个单层的神经网络:其中输出层权重参数为 W h W o W_{h}W_{o} WhWo,偏差参数为 b h W o + b o b_{h}W_{o}+b_{o} bhWo+bo。
R e L u ( x ) = m a x ( x , 0 ) ReLu (x) = max(x,0) ReLu(x)=max(x,0)
s i g m o i d ( x ) = 1 1 + e − x sigmoid(x) = \frac{1}{1+e^{-x}} sigmoid(x)=1+e−x1
t a n h ( x ) = 1 − e − 2 x 1 + e 2 x tanh(x) = \frac{1 - e^{-2x}}{1 + e^{2x}} tanh(x)=1+e2x1−e−2x