神经网络:深度学习基础

1.反向传播算法(BP)的概念及简单推导

反向传播(Backpropagation,BP)算法是一种与最优化方法(如梯度下降法)结合使用的,用来训练人工神经网络的常见算法。BP算法对网络中所有权重计算损失函数的梯度,并将梯度反馈给最优化方法,用来更新权值以最小化损失函数。该算法会先按前向传播方式计算(并缓存)每个节点的输出值,然后再按反向传播遍历图的方式计算损失函数值相对于每个参数的偏导数

接下来我们以全连接层,使用sigmoid激活函数,Softmax+MSE作为损失函数的神经网络为例,推导BP算法逻辑。由于篇幅限制,这里只进行简单推导,后续Rocky将专门写一篇PB算法完整推导流程,大家敬请期待。

首先,我们看看sigmoid激活函数的表达式及其导数:

神经网络:深度学习基础
神经网络:深度学习基础

可以看到sigmoid激活函数的导数最终可以表达为输出值的简单运算。

我们再看MSE损失函数的表达式及其导数:

神经网络:深度学习基础

其中 神经网络:深度学习基础 代表ground truth(gt)值, 神经网络:深度学习基础 代表网络输出值。

神经网络:深度学习基础

由于偏导数中单且仅当 神经网络:深度学习基础 时才会起作用,故进行了简化。

接下来我们看看全连接层输出的梯度:

神经网络:深度学习基础

神经网络:深度学习基础

我们用 神经网络:深度学习基础 ,则能再次简化:

神经网络:深度学习基础

最后,我们看看那PB算法中每一层的偏导数:

输出层:
神经网络:深度学习基础
神经网络:深度学习基础

倒数第二层:
神经网络:深度学习基础
神经网络:深度学习基础

倒数第三层:
神经网络:深度学习基础
神经网络:深度学习基础

像这样依次往回推导,再通过梯度下降算法迭代优化网络参数,即可走完PB算法逻辑。

2.滑动平均的相关概念

滑动平均(exponential moving average),或者叫做指数加权平均(exponentially weighted moving avergae),可以用来估计变量的局部均值,使得变量的更新与一段时间内的历史取值有关

变量 神经网络:深度学习基础神经网络:深度学习基础 时刻记为 神经网络:深度学习基础神经网络:深度学习基础 为变量 神经网络:深度学习基础神经网络:深度学习基础 时刻训练后的取值,当不使用滑动平均模型时 神经网络:深度学习基础 ,在使用滑动平均模型后, 神经网络:深度学习基础 的更新公式如下:

上式中, 神经网络:深度学习基础神经网络:深度学习基础 相当于没有使用滑动平均。

神经网络:深度学习基础 时刻变量 神经网络:深度学习基础 的滑动平均值大致等于过去 神经网络:深度学习基础 个时刻 神经网络:深度学习基础 值的平均。并使用bias correction将 神经网络:深度学习基础 除以 神经网络:深度学习基础 修正对均值的估计。

加入Bias correction后, 神经网络:深度学习基础神经网络:深度学习基础 的更新公式如下:

神经网络:深度学习基础 越大, 神经网络:深度学习基础 越接近1,则公式(1)和(2)得到的结果( 神经网络:深度学习基础神经网络:深度学习基础 )将越来越接近。

神经网络:深度学习基础 越大时,滑动平均得到的值越和 神经网络:深度学习基础 的历史值相关。如果 神经网络:深度学习基础 ,则大致等于过去10个 神经网络:深度学习基础 值的平均;如果 神经网络:深度学习基础 ,则大致等于过去100个 神经网络:深度学习基础 值的平均。

下图代表不同方式计算权重的结果:

如上图所示,滑动平均可以看作是变量的过去一段时间取值的均值,相比对变量直接赋值而言,滑动平均得到的值在图像上更加平缓光滑,抖动性更小,不会因为某种次的异常取值而使得滑动平均值波动很大

滑动平均的优势: 占用内存少,不需要保存过去10个或者100个历史 神经网络:深度学习基础 值,就能够估计其均值。滑动平均虽然不如将历史值全保存下来计算均值准确,但后者占用更多内存,并且计算成本更高。

为什么滑动平均在测试过程中被使用?

滑动平均可以使模型在测试数据上更鲁棒(robust)

采用随机梯度下降算法训练神经网络时,使用滑动平均在很多应用中都可以在一定程度上提高最终模型在测试数据上的表现。

训练中对神经网络的权重 神经网络:深度学习基础 使用滑动平均,之后在测试过程中使用滑动平均后的 神经网络:深度学习基础 作为测试时的权重,这样在测试数据上效果更好。因为滑动平均后的 神经网络:深度学习基础 的更新更加平滑,对于随机梯度下降而言,更平滑的更新说明不会偏离最优点很远。比如假设decay=0.999,一个更直观的理解,在最后的1000次训练过程中,模型早已经训练完成,正处于抖动阶段,而滑动平均相当于将最后的1000次抖动进行了平均,这样得到的权重会更加鲁棒。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
青葱年少的头像青葱年少普通用户
上一篇 2023年12月26日
下一篇 2023年12月26日

相关推荐