-1

对于我的深度学习作业,我需要设计一个图像分类网络。在这个设计中,这个约束条件最多可以有500,000个隐藏/可调参数。如何决定或计算我设计中隐藏/可调参数的数量?

如何计算或观察这些隐藏参数的数量,特别是如果我使用张量流程教程作为初始代码/设计。

在此先感谢

回答

0

500 000参数?您使用每个像素的R,G和B值?如果是,则存在一些问题 1.数据太多(计算时间过长) 2.在图像分类中,公司总是使用一些其他图像分析技术(预处理)来将数据投入到NN中。如果你有相同的图像。其次是一个piksel移动。对于网络来说,他们可能非常困难。想象一下其他的神经网络。使用两个参数可能是体重和身高。如果你交换这些参数将会发生什么。 在学习图像网络过程中可以减少这种效果,但是当我用5x5二进制图像进行实验时,很难进行网络化。我开始使用4层,但这只有一点帮助。 用于lerning的图像可以是很好的clasified,也可以去掉一个像素,但你有问题。 如果没有使用eksperiments或使用遗传算法找到它。 之后,你应该使用一些算法来找到网络识别为“不重要”的日期(这个输入和其余的重大差异,如果这个输入权重太接近0网络“认为”它并不重要)

2

如何计算或观察这些隐藏参数的数量,特别是如果我使用张量流程教程作为初始代码/设计。

  • 而是我为你做的工作,我会告诉你怎么算自由参数

迅速扫视它看起来像在cifar10代码使用最大池层,卷积,偏差,完全连接重量。让我们来回顾一下这些图层中的每一个有多少个可用参数添加到您的架构中

  • max pooling:免费!没错,没有来自最大池的“免费参数”。
  • conv:使用[1,3,3,1]参数来定义卷积,其中数字对应于张量,如[batch_size,CONV_SIZE,CONV_SIZE,FEATURE_DEPTH]。将所有尺寸大小相乘以找到您的自由参数的总大小。在[1,3,3,1]的情况下,总数为1x3x3x1 = 9。
  • 偏差:偏差类似于卷积,因为它由类似[10]或[1,342,342, 3]。同样的事情,只需将所有尺寸大小乘以得到总的自由参数即可。有时偏差只是一个单一的数字,这意味着大小为。
  • 完全连接:完全连接的层通常具有类似[1024,32]的二维形状。这意味着它是一个二维矩阵,并且可以像卷积一样计算总的自由参数。在这个例子中[1024,32]有1024x32 = 32,768个自由参数。

最后,您将所有图层中的所有可用参数相加,即您的可用参数总数。

+0

嗨@bakayim,如果这回答你的问题,那么请接受是作为答案。 – Wontonimo