什么是卷积神经网络的深度?

我在查看CS231n 卷积神经网络用于视觉识别中的卷积神经网络。卷积神经网络中的神经元以三维排列(heightwidthdepth)。我对CNN的depth感到困惑,无法想象它是什么样的。

在链接中他们说CONV层的参数包括一组可学习的滤波器。每个滤波器在空间上(沿宽度和高度)都很小,但扩展到输入体积的整个深度

例如,看这张图片。如果图片质量太差,请原谅。质量差的图片

我能理解我们从图像中取出一个小区域,然后与“滤波器”进行比较的想法。所以滤波器将是一组小图像的集合吗?他们还说我们将每个神经元仅连接到输入体积的局部区域。这种连接的空间范围是一个称为神经元感受野的超参数。那么感受野的维度是否与滤波器相同?这里的深度又是什么?我们用CNN的深度表示什么?

所以,我的主要问题是,如果我有一张尺寸为[32*32*3]的图像(假设我有50000张这样的图像,使数据集变为[50000*32*32*3]),我应该选择什么作为它的深度,深度意味着什么?滤波器的维度又会是什么?

如果有人能提供一些直观理解的链接,将会非常有帮助。

编辑:在教程的一部分(现实世界的例子部分),它说Krizhevsky等人赢得2012年ImageNet挑战赛的架构接受了尺寸为[227x227x3]的图像。在第一个卷积层,它使用了感受野大小F=11,步长S=4且无零填充P=0的神经元。由于(227 - 11)/4 + 1 = 55,并且由于Conv层具有深度K=96,Conv层的输出体积尺寸为[55x55x96]

在这里我们看到深度是96。那么深度是我任意选择的吗?还是我计算出来的?在上面的例子中(Krizhevsky等人),他们有96个深度。那么96个深度意味着什么?教程还说每个滤波器在空间上(沿宽度和高度)都很小,但扩展到输入体积的整个深度

那么这意味着深度会是这样的吗?如果是这样,那么我可以假设深度 = 滤波器数量吗?输入图片描述


回答:

在深度神经网络中,深度指的是网络的深度,但在这种情况下,深度用于视觉识别,它转换为图像的第三维度。

在这种情况下,你有一张图像,其输入大小为32x32x3,即(宽度, 高度, 深度)。神经网络应该能够基于这些参数进行学习,因为深度转换为训练图像的不同通道。

更新:

在你的CNN的每一层,它学习训练图像的规律性。在最开始的层,规律性是曲线和边缘,然后当你深入到更深的层时,你开始学习更高层次的规律性,如颜色、形状、物体等。这是基本的想法,但有很多技术细节。在继续之前,先看看这个:http://www.datarobot.com/blog/a-primer-on-deep-learning/

更新2:

看看你提供的链接中的第一张图。它说‘在这个例子中,红色输入层保存图像,所以它的宽度和高度将是图像的尺寸,深度将是3(红色、绿色、蓝色通道)’。这意味着ConvNet神经元通过在三维中排列其神经元来转换输入图像。

作为对你问题的回答,深度对应于图像的不同颜色通道

此外,关于滤波器的深度。教程是这样说的。

每个滤波器在空间上(沿宽度和高度)都很小,但扩展到输入体积的整个深度

这基本上意味着滤波器是图像的一个较小部分,它在图像的深度上移动,以学习图像中的规律性。

更新3:

对于现实世界的例子,我刚刚浏览了原始论文,它是这样说的:第一个卷积层用96个大小为11×11×3的内核,以4像素的步长过滤224×224×3的输入图像

在教程中,它将深度称为通道,但在现实世界中,你可以设计任何你喜欢的维度。毕竟那是你的设计

教程旨在让你一窥ConvNets在理论上的工作方式,但如果我设计一个ConvNet,没有人能阻止我提出一个具有不同深度的ConvNet

这有意义吗?

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注