首页 > 解决方案 > 为什么卷积网络的训练比全连接网络慢得多

问题描述

这是我建立的卷积神经网络:

卷积神经网络架构

相比之下,这是一个只有密集层的常规 ANN:

全连接神经网络

参数的数量是相当的。两者都用于对 MNIST 数据集(60.000 个 28x28 数组)中的手写数字进行分类。独立于我的计算能力,CNN 的训练速度要慢得多。ANN 在 60.000 个图像上进行 250 个 Epochs:0:05 h CNN 在 30.000 个图像上进行 20 个 Epochs:12:00 h

那么问题是为什么?我的猜测是因为 CNN 的参数共享,参数的数量可能是相似的,但是卷积层的一个参数被多次使用:

28x28 图像上的 3x3 内核 -> 每个参数使用 32 个内核大约使用 784 次(相同的填充),产生 28x28x32 输出(池化 14x14x32 之后)。所以下一个卷积层的内核是 3x3x32,所以这里每个参数将被使用大约 6.272 次。

对整个培训过程有更多了解的人可以同意或不同意我的观点吗?或者你对这个话题有什么其他想法吗?

标签: pythonmathkerasneural-networkconv-neural-network

解决方案


推荐阅读