引言:
对于智能故障诊断任务而言,受限于现场工业设备设施的算力,模型在轻量化上具有典型需求。因此,在保证模型精准性的同时尽量降低模型的复杂度是必要的,本博客对模型的复杂度概念进行了剖析,并在pytorch框架下对相关热门轻量级模型的复杂度评估进行了分析。
深度学习模型的复杂度指标计算
1. 模型的时间复杂度和空间复杂度
总体上,模型复杂度通常是指前向过程的计算量(反映模型所需要的计算时间)和参数个数(反映模型所需要的计算机内存空间)等等指标,在类型上可划分为时间复杂度和空间复杂度。
1.1 时间复杂度
-
单个模型单次运行复杂度:可使用浮点运算数 FLOPs计算复杂度
-
并行性能评估:另外并行性也会影响模型运行速度,可使用最大顺序操作数 Minimum number of sequential operations 和吞吐量 Throughput (image/s) 以及推理时间 Inference time (bacth/ms) 衡量