0


深度学习模型复杂度评估(时间复杂度、空间复杂度)

1、两个指标

时间复杂度和空间复杂度是衡量一个算法的两个重要指标,用于表示算法的最差状态所需的时间增长量和所需辅助空间.

在深度学习神经网络模型中我们也通过:

  • 计算量/FLOPs(时间复杂度)即模型的运算次数。floating point operations (s表示复数),指的是浮点运算次数,理解为计算量
  • 访存量/Bytes(空间复杂度)即模型的参数数量

**PS:**FLOPs 是模型推理时间的一个参考量,但并不能百分百表示该模型推理时间的长短,
因为乘法和加法计算不一样,乘法的时间一般是加法时间的四倍,但现在有很多优化卷积
层的计算算法,可能把乘法计算时间缩为加法的两倍不等,所以FLOPs只是个估量的指标,
不是决定推理时间长短的指标。即FLOPs越小并不代表着模型推理时间越短

这两个指标来评判深度学习模型的性能

所以我们经常在论文里面看到类似如下的图就可以理解其含义了:

2、复杂度对模型的影响

  • 时间复杂度决定了模型的训练/预测时间。

如果复杂度过高,会导致模型训练和预测耗费大量时间,既无法快速的验证想法和改善模型,也无法做到快速的预测。

  • 空间复杂度决定了模型的参数数量。

由于维度灾难的限制,模型的参数越多,训练模型所需的数据量就越大,而现实生活中的数据集通常不会太大,这会导致模型的训练更容易过拟合。


本文转载自: https://blog.csdn.net/qq_45100200/article/details/130630353
版权归原作者 清纯世纪 所有, 如有侵权,请联系我们删除。

“深度学习模型复杂度评估(时间复杂度、空间复杂度)”的评论:

还没有评论