深度神经网络中深度和宽度的影响是什么?

机器算法验证 神经网络 深度学习
2022-02-07 03:53:54

神经网络中的深度和宽度如何影响网络的性能?

例如,等人。引入了非常深的残差网络并声称“我们通过一个简单但基本的概念获得[令人信服的准确性]——更深入。” 另一方面,Zagoruyko 和 Komodakis认为,宽残差网络“比它们常用的薄和非常深的网络要好得多”。

有人可以总结一下深度学习中当前(理论)对深度神经网络中宽度和深度的影响的理解吗?

1个回答

链接的“Wide Residual Networks”论文在 p8 的底部做了一个很好的总结:

  • 扩展不断提高不同深度的残差网络的性能;
  • 增加深度和宽度都有帮助,直到参数数量变得太多并且需要更强的正则化;
  • 残差网络中非常高的深度似乎没有正则化效果,因为具有与细网络相同数量的参数的宽网络可以学习相同或更好的表示。此外,宽网络可以成功地学习比薄网络多 2 倍或更多的参数数量,这将需要双倍的薄网络深度,这使得它们的训练成本高昂。

本文着重于两种方法之间的实验比较。尽管如此,我相信从理论上(并且论文也指出)宽残差网络比以前的工作产生更快和更准确的结果的主要原因之一是:

扩展层比拥有数千个小内核在计算上更有效,因为 GPU 在大张量的并行计算中效率更高。

即更宽的残差网络允许并行计算许多乘法,而更深的残差网络使用更多的顺序计算(因为计算取决于前一层)。

另外关于我上面的第三个要点:

具有恒等映射的残差块允许训练非常深的网络,同时也是残差网络的一个弱点。由于梯度流经网络,没有什么可以强迫它通过残差块权重,并且它可以避免在训练期间学习任何东西,因此可能只有少数块学习有用的表示,或者许多块共享很少对最终目标贡献很小的信息。

Reddit 页面上也有一些关于本文的有用评论