1 FLOPS与FLOPs
FLOPS:floating point operations per second的缩写,意指每秒浮点运算次数,理解为计算速度。是一个衡量硬件性能的指标。
FLOPs:注意s小写,是floating point operations的缩写(s表复数),意指浮点运算数,理解为计算量。可以用来衡量算法/模型的复杂度。
2 卷积的FLOPs
输出的红色单元格需要的运算数量:
- 输入的虚线部分和K1进行逐元素相乘
- 需要
次乘法
- 需要
- 上一行乘法的结果相加
- 需要
-1次加法
- 需要
- ——>一个单元格需要的运算量为2
-1
- 一共有
个单元格
- ——>FLOPs为
- ——>FLOPs为
3 全连接层的FLOPs
输出层每一个神经元需要的乘法数量为:Cin 次【每个输入神经元乘以对应的权重】
输出层每一个神经元需要的加法数量为:Cin-1次【上一行Cin个乘法结果相加】
加上bias,所以输出层每一个神经元需要的运算数量为2Cin
一共有Cout个神经元,所以FLOPs为2Cin*Cout