我知道这可能是一个愚蠢的问题,但我对机器学习和人工神经网络有点陌生。
深度卷积神经网络和密集卷积神经网络有什么区别吗?
提前致谢!
最佳答案
密集 CNN 是深度 CNN 的一种,其中每一层都与比自身更深的另一层连接。
这是什么意思?
在普通的 CNN 中,每一层仅与其兄弟层相连。考虑4层,L1的输出仅连接到L2,L2的输出仅连接到L3,L3的输出仅连接到L4。
在密集 CNN 中,考虑 4 层,L1 的输出连接到 L2、L3、L4,L2 的输出连接到 L3、L4,L3 的输出连接到 L4。
下面用一张图来说明(图片来源来自this论文):
为什么我们需要这样做?
现在我们拥有 100 层甚至更多层的神经网络。神经网络使用反向传播进行训练。在该算法中,利用成本函数的梯度(导数)来更新各层的权重。对于每个新层,梯度值都会减小,特别是当您使用 sigmoid 时。这会导致训练时间更长,或者有时根本不训练。这个问题也称为梯度消失。 Dense CNN 中的直接连接解决了这个问题。
与普通 CNN 相比,密集 CNN 也不太容易过度拟合。
更多信息请阅读this纸,很容易理解。
关于machine-learning - 深度 CNN 和密集 CNN 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55406924/