推理时间是否取决于参数数量? [关闭]

问题描述 投票:0回答:3

我有两个网络。一个具有以下:

总参数:2,246,550可训练的参数:2,246,550不可训练的参数:0

和第二个网络大约有总可训练参数333,013

但在推断时间的情况下,第二个网络花费了0.12秒和第一个网络平均耗时0.08秒。

造成这种差异的原因是什么?

machine-learning neural-network deep-learning caffe
3个回答
1
投票

您不一定能说出来。假设0.4M参数网络主要由卷积层组成,而2M参数网络则由完全连接的层组成。然后第一个将需要更长的前进距离。因此,它取决于很多因素,包括深度,参数,操作数等。通常,您可以说它取决于乘法数。


1
投票

尽管参数的数量确实会影响网络的测试时间,但这并不是唯一的因素。您还应该考虑应用学习的过滤器/权重的数据/功能的大小。

例如,考虑两个简单的转换网络:-净A具有单个7x7过滤器-净B具有单个3x3滤镜

很明显,网络A具有49个参数,而网络B仅具有9个参数。但是,净值A的输入是150x150图像,而净值B的输入是1500x1500图像。显然,在这些设置下,网络B将需要更长的时间来处理输入。

[在很多情况下,深网将conv层与完全连接的层混合在一起,这使得很难/不可能比较“相同大小的输入”的触发器数量。

顺便说一句,仍然是一个尚待解决的问题,是向compute the number of FLOPS required for a net添加功能的Caffe。


0
投票

当然,较大的(较复杂的网络)将花费更多时间来评估输入,因为推理需要通过所有网络传播输入以到达最后一层(输出)。因此,通常与参数的数量成正比,即与深度,每层神经元的数量以及每两层之间的连接类型相关。

© www.soinside.com 2019 - 2024. All rights reserved.