pytorch计算模型的参数量及FLOPs

pytorch计算模型的参数量及FLOPs,第1张

方法一:使用thop包的profile方法
import torch
from thop import profile
from torchvision import models
model = models.resnet50(pretrained=False)
img = torch.zeros((1, 3, image_height, image_width))
flops, params = profile(model, inputs=(img,), verbose=False)

resnet50的输出结果

thop result  Params: 25.56M, Gflops: 4111514624.00
方法二:使用torchsummaryX的summary方法
import torch
from torchsummaryX import summary
from torchvision import models
model = models.resnet50(pretrained=False)
img = torch.zeros((1, 3, stride, stride), device=next(model.parameters()).device)
summary(model,img)

使用summary会输出三项:

  1. 每一层的参数的维度及数据尺寸,
  2. 每层的参数量及计算量
  3. 模型总的参数量及计算量



    使用两种方式计算的参数量和计算量有一点区别

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/917644.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存