计算神经网络参数量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

相关内容

热门资讯

建信中证红利潜力指数A净值上涨... 建信中证红利潜力指数证券投资基金(简称:建信中证红利潜力指数A,代码007671)公布5月27日最新...
民生加银持续成长混合A净值下跌... 民生加银持续成长混合型证券投资基金(简称:民生加银持续成长混合A,代码007731)公布5月27日最...
景顺长城沪港深红利成长低波指数... 景顺长城中证沪港深红利成长低波动指数型证券投资基金(简称:景顺长城沪港深红利成长低波指数C类,代码0...
富国中证国企一带一路ETF联接... 富国中证国企一带一路交易型开放式指数证券投资基金联接基金(简称:富国中证国企一带一路ETF联接A,代...
博时央创ETF联接A净值下跌1... 博时中证央企创新驱动交易型开放式指数证券投资基金联接基金(简称:博时央创ETF联接A,代码00779...