人工智能:模型复杂度【机器学习模型复杂度、深度学习模型复杂度(FLOPs、MAC)】

一、机器学习模型复杂度

二、深度学习模型复杂度

通常,一个神经网络模型的复杂度用2个指标来描述:

  • 模型的参数(Parameters)数量,
    1. Params:模型的参数量。
  • 模型的计算量:
    1. FLOPs:FLoating point OPerations,前向推理的计算量。
    2. MAC:Memory Access Cost。
    3. MACC(MADD):multiply-accumulate operations:先乘起来再加起来的运算次数。

1、时间复杂度(计算量)

时间复杂度(计算量):计算量指的需要进行的加乘操作的次数,可用 FLOPS衡量,也就是浮点运算次数(FLoating-point OPerations)。
人工智能:模型复杂度【机器学习模型复杂度、深度学习模型复杂度(FLOPs、MAC)】_第1张图片
人工智能:模型复杂度【机器学习模型复杂度、深度学习模型复杂度(FLOPs、MAC)】_第2张图片

2、空间复杂度(访存量):

空间复杂度(访存量):严格来讲包括两部分:总参数量 + 各层输出特征图。

访存量:指的是输入单个样本,模型完成一次前向传播过程中所发生的内存交换总量

人工智能:模型复杂度【机器学习模型复杂度、深度学习模型复杂度(FLOPs、MAC)】_第3张图片

3、复杂度对模型的影响

人工智能:模型复杂度【机器学习模型复杂度、深度学习模型复杂度(FLOPs、MAC)】_第4张图片




参考资料:
机器学习(四):关于模型复杂度与模型性能的关系
如何计算神经网络模型的复杂度
深度学习模型复杂度分析
如何理解深度学习模型复杂度?
对于机器学习中数据拟合度和模型复杂度的一些建议
机器学习面试题之——简单解释正则化为什么能减小模型复杂度
模型时间复杂度和空间复杂度
如何计算神经网络模型的复杂度
如何选择模型的复杂度?
模型复杂度
机器学习模型_机器学习模型的时间复杂度
理解深度学习模型复杂度评估
CNN模型复杂度(FLOPs、MAC)、参数量与运行速度
模型的参数量parameters和计算量FLOPs与MAC

你可能感兴趣的:(人工智能,#,深度学习/DL,机器学习/ML,人工智能,深度学习,机器学习,模型复杂度)