计算神经网络参数量Params、计算量FLOPs(亲测有效的3种方法)
创始人
2024-05-30 00:18:26

1.stat(cpu统计)

pip install torchstat

from torchstat import statstat(model, (3, 32, 32)) #统计模型的参数量和FLOPs,(3,32,32)是输入图像的size

结果:

 问题:当网络中有自定义参数时,就很有可能漏掉那部分参数对应的统计量;stat好像不支持双输入。

2.summary网络结构对应参数(cuda上面统计)

pip install torchsummary

from torchsummary import summarysummary(model,input_size=(3,32,32))

问题:当网络中有自定义参数时,就很有可能漏掉那部分参数。
结果:

3.统计flops和参数量

pip install thop

from thop import profiledummy_input = torch.randn(1, 3, 32, 32)#.to(device)flops, params = profile(model, (dummy_input,))print('FLOPs: ', flops, 'params: ', params)print('FLOPs: %.2f M, params: %.2f M' % (flops / 1000000.0, params / 1000000.0))

问题:当网络中有自定义参数时,flops和params就很有可能漏掉那部分参数。


参考链接:

6种方法计算神经网络参数量Params、计算量FLOPs、Macs简单代码_python transformer计算量flops代码_工科女博的博客-CSDN博客

网络模型的参数量和FLOPs的计算 Pytorch_网络flop_清纯世纪的博客-CSDN博客

https://zhuanlan.zhihu.com/p/541165764

相关内容

热门资讯

6月24日港股通红利低波ETF... 6月24日,港股通红利低波ETF华宝(159220)涨0.00%,成交额2308.42万元。当日份额...
田村:需将利率上调至2%左右的... 日本央行政策委员会成员田村表示,需将利率提升至2%左右的中性水平。译文内容由第三方软件翻译。声明:市...
6月24日科创医药ETF华夏(... 6月24日,科创医药ETF华夏(588130)涨1.17%,成交额2439.04万元。当日份额增加6...
6月24日科创50ETF富国(... 6月24日,科创50ETF富国(588940)涨3.99%,成交额8658.76万元。当日份额减少9...
清华新林院的“红色客厅”   周惠斌  清华新林院8号,是著名建筑学家梁思成、林徽因夫妇在1946年至1954年间居住的地方,...