关于深度学习中卷积层的后向

时间:2017-02-01 04:15:48

标签: image-processing computer-vision deep-learning caffe

我理解在深度学习中计算前向部分的方法。现在,我想了解落后部分。我们以X(2,2)为例。位置X(2,2)的向后可以计算如下图所示

enter image description here

我的问题是公式中的dE/dY(例如dE/dY(1,1)dE/dY(1,2) ...)在哪里?如何在第一次迭代中计算它?

1 个答案:

答案 0 :(得分:2)

简短回答

这些术语在幻灯片底部的最终扩展中;它们有助于dE / dX(2,2)的总和。在您的第一次反向传播中,您从最后开始并向后工作(因此名称) - 并且 Y 值是地面实况标签。非常适合计算它们。 : - )

LONG ANSWER

我会用更抽象的自然语言来保持这一点。我希望这个替代解释可以帮助你看到大图并整理数学。

您可以使用指定的权重开始训练,这些权重可能与地面实况(标签)完全相关,也可能根本不相关。你盲目地向前移动,根据对这些权重的天真信仰在每一层做出预测。 Y(i,j)值是来自该信仰的结果元像素。

然后你在最后点击标签。你向后工作,调整每个重量。请注意,在最后一层, Y 值是地面实况标签。

在每一层,您在数学上处理两个因素:

  1. 这个预测有多远?
  2. 此参数对预测的贡献有多大?
  3. 您可以通过" off * weight * learning_rate"调整X-to-Y权重。 当你完成N层的那个时,你会备份到N-1层并重复。

    <强> PROGRESSION

    无论您是使用固定值还是随机值初始化权重(我通常建议使用后者),您都会注意到在早期迭代中确实没有太大进展。由于这是从猜测工作权重中缓慢调整,因此需要多次迭代才能在最后一层中获得一些有用的学习。在这一点上,第一层仍然无能为力地颠簸。损失函数会在一段时间内接近其初始值反弹。例如,通过GoogLeNet的图像识别,这种鞭打持续约30个时期。

    然后,最后,你在后面的层中获得了一些有效的学习,模式稳定到足以使一些一致性渗透回早期层。此时,您将看到损失函数下降到&#34;定向实验&#34;水平。从那里开始,进展很大程度上取决于问题的范式和结构:一些有急剧下降,然后逐渐趋同;其他人有一个更渐进的下降,几乎是收敛的指数衰减;更复杂的拓扑结构会在中期或早期阶段产生额外的急剧下降,并且能够立足......#/ p>