![](https://csdnimg.cn/release/download_crawler_static/10526962/bg4.jpg)
如果激活函数选用 sigmoid 函数,则第二层神经元的输出值为:
1
1 1 1
(1)
11 1 12 2 13 3 1
2
1 1 1
(1)
21 1 22 2 23 3 2
3
1 1 1
(1)
31 1 32 2 33 3 3
4
1 1 1
(1)
41 1 42 2 43 3 4
1
1 exp
1
1 exp
1
1 exp
1
1 exp
y
w x w x w x b
y
w x w x w x b
y
w x w x w x b
y
w x w x w x b
第三层神经元的输出值为:
1
2 2 2 2
(2)
11 1 12 2 13 3 14 4 1
2
2 2 2 2
(2)
21 1 22 2 23 3 24 4 2
1
1 exp
1
1 exp
z
w y w y w y w y b
z
w y w y w y w y b
如果把
代入上面二式中,可以将输出向量 z 表示成输出向量 x 的函数。通过调整权
重矩阵和偏置项可以实现不同的函数映射,因此神经网络就是一个复合函数。
需要解决的一个核心问题是一旦神经网络的结构(即神经元层数,每层神经元数量)确
定之后,怎样得到权重矩阵和偏置项。这些参数是通过训练得到的,这是本文推导的核心任
务。
一个简单的例子
首先以前面的 3 层神经网络为例,推导损失函数对神经网络所有参数梯度的计算方法。
假设训练样本集中有 m 个样本
。其中 x 为输入向量,z 为标签向量。现在要确定神
经网络的映射函数:
什么样的函数能很好的解释这批训练样本?答案是神经网络的预测输出要尽可能的接
近样本的标签值,即在训练集上最小化预测误差。如果使用均方误差,则优化的目标为:
其中
和
都是向量,求和项内部是向量的 2 范数平方,即各个分量的平方和。上
面的误差也称为欧氏距离损失函数,除此之外还可以使用其他损失函数,如交叉熵、对比损
失等。
优化目标函数的自变量是各层的权重矩阵和梯度向量,一般情况下无法保证目标函数是
凸函数,因此这不是一个凸优化问题,有陷入局部极小值和鞍点的风险(对于这些概念和问