machine-learning - 深度 CNN 和密集 CNN 的区别

标签 machine-learning neural-network deep-learning conv-neural-network

我知道这可能是一个愚蠢的问题,但我对机器学习和人工神经网络有点陌生。

深度卷积神经网络和密集卷积神经网络有什么区别吗?

提前致谢!

最佳答案

密集 CNN 是深度 CNN 的一种,其中每一层都与比自身更深的另一层连接。

这是什么意思?

在普通的 CNN 中,每一层仅与其兄弟层相连。考虑4层,L1的输出仅连接到L2,L2的输出仅连接到L3,L3的输出仅连接到L4。

在密集 CNN 中,考虑 4 层,L1 的输出连接到 L2、L3、L4,L2 的输出连接到 L3、L4,L3 的输出连接到 L4。

下面用一张图来说明(图片来源来自this论文):

enter image description here

为什么我们需要这样做?

现在我们拥有 100 层甚至更多层的神经网络。神经网络使用反向传播进行训练。在该算法中,利用成本函数的梯度(导数)来更新各层的权重。对于每个新层,梯度值都会减小,特别是当您使用 sigmoid 时。这会导致训练时间更长,或者有时根本不训练。这个问题也称为梯度消失。 Dense CNN 中的直接连接解决了这个问题。

与普通 CNN 相比,密集 CNN 也不太容易过度拟合。

更多信息请阅读this纸,很容易理解。

关于machine-learning - 深度 CNN 和密集 CNN 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55406924/

相关文章:

neural-network - 神经网络

machine-learning - 成本函数,线性回归,试图避免硬编码 theta。 Octave 。

machine-learning - 如何从深度模型中获取输入图像的特征向量(softmax之前的N-1层的输出)?

python - 为什么激活值 (Softmax) 的预测会给出错误的结果?

machine-learning - 使用机器学习来分析体育博彩

machine-learning - 强化学习为什么需要MDP设置

machine-learning - 预训练如何改善神经网络的分类?

machine-learning - Mahout - 将文本转换为矢量

python - KNeighborsClassifier 欧氏距离计算

matlab - 使用 caffe 提取过滤器和偏差