参数管理

http://zh-v2.d2l.ai/chapter_deep-learning-computation/parameters.html

请问练习4中,共享参数的好处是什么?是因为shared层的grad叠加,使得训练的速度更快吗?谢谢!

好问题!
共享参数通常可以节省内存,并在以下方面具有特定的好处:

  • 对于图像识别中的CNN,共享参数使网络能够在图像中的任何地方而不是仅在某个区域中查找给定的功能。
  • 对于RNN,它在序列的各个时间步之间共享参数,因此可以很好地推广到不同序列长度的示例。
  • 对于自动编码器,编码器和解码器共享参数。 在具有线性激活的单层自动编码器中,共享权重会在权重矩阵的不同隐藏层之间强制正交。
1 Like

从生物学角度,能否把参数类比成脑中的对于事物对结果的影响程度的判断?那对于类似事件,我们可以认为影响程度也相差不多,来减少额外的记忆。

里的强制正交是什么意思?

还想请问,一个模型中出现共享层时,一次backward()是否会导致共享层的最终grad是两个共享层梯度的和(因为一次backward()过程中,共享层第一次计算出的grad没有被清零),从而梯度下降时有更大的步幅,收敛的速度也更快呢?

“forces orthogonality”,如果有更地道的说法欢迎纠正。

理论上是的。你也可以选择关掉(frozen)任何一层的grad。

1 Like

谢谢!字数字数字数字数字数字数字数字数字数