- 神经网络设计与实现
- (英)列奥纳多·德·马尔希 劳拉·米切尔
- 1043字
- 2021-06-24 11:18:04
2.3.1 反向传播介绍
在了解数学原理之前,先对训练过程进行直观了解会很有用。回顾学过的感知器类,我们只是利用实际输出与预测之间的差来测量误差。如果要预测连续输出而不是二元输出,因为正误差和负误差可能会相互抵消,所以必须使用不同的方法来测量。
避免此类问题的常见方法是通过使用均方根误差(RMSE)来测量误差,其定义如下:
E=(t-y)2
如果让我们的预测发生变化并绘制平方误差,将获得抛物线曲线(见图2-7)。
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/2-7.jpg?sign=1739663564-Mf1rvX6PVyHKTEooAS7ztGd5vtg9SjTy-0-6fe4331571cf9f7487310e3ab76c8153)
图2-7 单个神经元的误差曲线
实际上,我们的预测结果受到权重和偏置项控制,我们通过更改它们来减少误差。通过改变权重和偏置项,可以获得更复杂的曲线,其复杂性将取决于我们的权重和偏置项数量。对于权重个数为n的通用神经元,我们将具有n+1维度的椭圆抛物面(见图2-8),因为我们也需要改变偏置项。
曲线的最低点被称为全局最小值,也就是损失最小的地方,这意味着我们的误差不会低于这个数。在这种简单情况下,全局最小值也是仅有的最小值,但是在复杂函数中,还会有一些局部最小值。局部最小值定义为周围任意的小间隔内的最低点,因此不一定是全局的最低点。
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/2-8.jpg?sign=1739663564-ubsjTx155eghTXea5Qv2F9uticqpNqVA-0-e4652b296a7aa993da431a0abfa583a6)
图2-8 线性感知器的误差曲面
这样,我们可以将训练过程视为一个优化问题,即以有效的方式寻找曲线的最低点。探索误差曲面的便捷方法是使用梯度下降法。梯度下降法使用平方误差函数相对于网络权重的导数,并且遵循向下方向。方向由梯度给出。为方便起见,在查看函数的导数时,我们将考虑与之前看到的方法相比略有不同的测量平方误差的方法:
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/032-2-i.jpg?sign=1739663564-HeLjLdZ5MBC3CwLnh4ix6b9EugGoHGt7-0-2ada09b75c914cb00e4cea2bb2f944d3)
为了消除求导将要添加的系数,我们决定将平方误差除以2。这不会影响我们的误差曲面,甚至会让误差曲面变得更大,因为稍后,我们会将误差函数乘以另一个称为学习率的系数。
网络的训练通常使用反向传播进行,反向传播用于计算最陡的下降方向。如果单独看每个神经元,可以看到与感知器相同的公式。唯一的区别是,现在,一个神经元的输入是另一神经元的输出。让我们以神经元j为例,它会运行其激活函数以及之前所有网络的结果:
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/032-3-i.jpg?sign=1739663564-GI5thddbsAsQQuOKMOKphzIw8cOtnxLN-0-01c19062af10c752719718c7cacbfd0d)
如果神经元在输入层之后的第一层中,那么输入层就是网络的输入。n表示神经元j的输入单位数,wkj表示神经元k的输出和神经元j之间的权重。
我们希望其激活函数是非线性且可微的,用希腊字母φ表示。因为如果它是线性的,则一系列线性神经元的组合仍将是线性的。并且我们希望它是可微的,因为我们要计算梯度。
逻辑函数是一种非常常见的激活函数,也称为sigmoid函数,由以下公式定义:
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/033-i.jpg?sign=1739663564-03swlyJp8picLMk9IAoaS3U9VzZmVDX7-0-16cb0dc9db9b9a7d59881c8c24b7d7ad)
它的导数形式如下:
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/033-2-i.jpg?sign=1739663564-V5OtwBxXnc98ZG6n9I2MWQrvLt2s9cCJ-0-7b68f368fc6e3ddd238ccfbd5e9a7d0a)
反向传播的特殊之处在于,不仅输入会到达输出以调整权重,而且输出也会返回到输入,如图2-9所示。
![](https://epubservercos.yuewen.com/96A46E/20422784308285606/epubprivate/OEBPS/Images/2-9.jpg?sign=1739663564-R7pm4jrrry9RlvFcyMlyb78x3C0EmD3r-0-b4f07e95948ac3f23229bc005f73d128)
图2-9 一个简单的二元分类FFNN示意图