Tensorflow 深度神经网络跳过连接实现为求和还是级联?

Tensorflow 深度神经网络跳过连接实现为求和还是级联?,tensorflow,computer-vision,deep-learning,keras,Tensorflow,Computer Vision,Deep Learning,Keras,在深层神经网络中,我们可以实现跳过连接,以帮助: 解决了梯度消失的问题,训练速度更快 网络学习低级和高级特征的组合 恢复下采样期间的信息丢失,如最大池 然而,我读了一些源代码,一些实现了作为串联的跳过连接,一些实现了作为求和。所以我的问题是,每种实现的好处是什么?基本上,区别取决于中间特性对最后一层的影响方式不同 在某种程度上,可以将使用元素求和(例如)的跳过连接的标准体系结构视为一种迭代估计过程(例如,参见),其中通过网络的各个层细化特征。这种选择的主要好处是,它可以工作,而且是一种紧凑

在深层神经网络中,我们可以实现跳过连接,以帮助:

  • 解决了梯度消失的问题,训练速度更快

  • 网络学习低级和高级特征的组合

  • 恢复下采样期间的信息丢失,如最大池


然而,我读了一些源代码,一些实现了作为串联的跳过连接,一些实现了作为求和。所以我的问题是,每种实现的好处是什么?

基本上,区别取决于中间特性对最后一层的影响方式不同

在某种程度上,可以将使用元素求和(例如)的跳过连接的标准体系结构视为一种迭代估计过程(例如,参见),其中通过网络的各个层细化特征。这种选择的主要好处是,它可以工作,而且是一种紧凑的解决方案(它可以在一个块中固定功能的数量)

具有串联跳过连接(例如)的体系结构允许后续层重用中间表示,维护更多信息,从而提高性能。除了功能重用之外,另一个结果是隐式深度监控(如中所示),它允许更好的梯度在网络中传播,特别是对于深度监控(事实上,它已用于体系结构)


显然,如果设计不当,连接功能可能会导致参数的指数增长(这部分解释了您指出的工作中使用的分层聚合),并且根据问题的不同,使用大量信息可能会导致过度拟合。

非常感谢。答案非常详细。