THOP: 估算PyTorch模型的MACs 模块

THOP: PyTorch-OpCounter

How to install

  • Through PyPi

    pip install thop

  • Using GitHub (always latest)

    pip install --upgrade git+https://github.com/Lyken17/pytorch-OpCounter.git

How to use

  • Basic usage

    from torchvision.models import resnet50
    from thop import profile
    model = resnet50()
    input = torch.randn(1, 3, 224, 224)
    macs, params = profile(model, inputs=(input, ))
    
  • Define the rule for 3rd party module.

    class YourModule(nn.Module):
        # your definition
    def count_your_model(model, x, y):
        # your rule here
    
    input = torch.randn(1, 3, 224, 224)
    macs, params = profile(model, inputs=(input, ), 
                            custom_ops={YourModule: count_your_model})
    
  • Improve the output readability

    from thop import clever_format
    macs, params = clever_format([macs, params], "%.3f")
    
## Results on Recent Models
Model | Params(M) |MACs(G)
---|---|---
alexnet | 61.10 | 0.71
vgg11 | 132.86 | 7.75
vgg11_bn | 132.87 | 7.76
vgg13 | 133.05 | 11.46
vgg13_bn | 133.05 | 11.48
vgg16 | 138.36 | 15.62
vgg16_bn | 138.37 | 15.65
vgg19 | 143.67 | 19.79
vgg19_bn | 143.68 | 19.82
densenet121 | 7.98 | 2.79
densenet161 | 28.68 | 7.69
densenet169 | 14.15 | 3.33
densenet201 | 20.01 | 4.28
resnet18 | 11.69 | 1.58
resnet34 | 21.80 | 3.44
resnet50 | 25.56 | 3.53
resnet101 | 44.55 | 7.26
resnet152 | 60.19 | 10.99
squeezenet1_0 | 1.25 | 0.70
squeezenet1_1 | 1.24 | 0.34
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值