卷积神经网络CNN中FLOPs的概念和计算
1.什么是FLOPs?FLOPs全称:floating point operation per second意思是每秒浮点运算次数,理解为计算速度,是一个用来衡量硬件计算性能的指标。在CNN中用来指浮点运算次数;2.如何计算?在AlexNet中某一次卷积过程中,输入特征图大小:[C_in, H_in, W_in] = 3 * 224 * 224卷积核大小:[C_in, K_H, K_...
1.什么是FLOPs?
FLOPs全称:floating point operation per second
意思是每秒浮点运算次数,理解为计算速度,是一个用来衡量硬件计算性能的指标。
在CNN中用来指浮点运算次数;
2.如何计算?
在AlexNet中某一次卷积过程中,
输入特征图大小:[C_in, H_in, W_in] = 3 * 224 * 224
卷积核大小:[C_in, K_H, K_W] = 3 * 11 * 11
输出特征图大小:[C_out, H_out, W_out] = 96 * 55 * 55
该卷积层的FLOPs量级为多少?
FLOPs:
[(C_in * K_H * K_W) * C_out + C_out] * (H_out * W_out)
即[(3 * 11 * 11) * 96 + 96 ] * (55 * 55) = 105705600
量级为1e8
(
注:可以将上试的C_out提取出来。
num_paras = (C_in * K_H * K_W) * C_out + C_out
= C_out * [(C_in * K_H * K_W) + 1 ]
num_paras也就是该层参数的数目
)
我也是根据别人的博客参考的,每个大佬回答的都有差异,有的考虑了偏置,有的没有考虑偏置什么的,各种博客各种回答,在此仅做参考,详细深入请查找文献。
参考:
https://baike.baidu.com/item/FLOPS/989494?fr=aladdin
https://www.cnblogs.com/zf-blog/p/10875782.html
https://blog.csdn.net/weixin_41770169/article/details/94001345
https://www.zhihu.com/question/65305385
仅用来个人学习和分享,如若侵权,留言立删。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)