我知道这可能是个愚蠢的问题,但我对机器学习和人工神经网络还比较新手。
深度卷积神经网络和密集卷积神经网络之间有什么区别吗?
先谢谢了!
回答:
密集卷积神经网络是一种深度卷积神经网络,其中每一层都与比自己更深的层相连接。
这意味着什么?
在普通的卷积神经网络中,每一层只与其相邻层相连。假设有4层,L1的输出只连接到L2,L2的输出只连接到L3,L3的输出只连接到L4。
在密集卷积神经网络中,假设有4层,L1的输出连接到L2、L3、L4,L2的输出连接到L3、L4,L3的输出连接到L4。
这里有一张图来说明(图片来源于这篇论文):
为什么我们需要这样做?
如今,我们有100层甚至更多的神经网络。神经网络是通过反向传播来训练的。在这个算法中,成本函数的梯度(导数)被用来更新每一层的权重。随着每增加一层,梯度值会减小,特别是如果你使用的是sigmoid函数。这会导致训练时间更长,有时甚至无法训练。这个问题也被称为梯度消失。密集卷积神经网络中的直接连接解决了这个问题。
与普通卷积神经网络相比,密集卷积神经网络也不太容易过拟合。
欲了解更多,请阅读这篇论文,内容很容易理解。