EfficientNet V1和V2

资料:

在mmcv中使用EfficientNet V1的config:

复制代码
 1     backbone=dict(
 2         type='mmdet.EfficientNet',
 3         arch='b0',
 4         drop_path_rate=0.2,
 5         out_indices=(3, 4, 5),
 6         frozen_stages=0,
 7         norm_cfg=dict(
 8             type='SyncBN', requires_grad=True, eps=1e-3, momentum=0.01),
 9         norm_eval=False,
10         init_cfg=dict(
11             type='Pretrained', 
12             checkpoint='ckpts/efficientnet-b0_3rdparty-ra-noisystudent_in1k_20221103-75cd08d3.pth',
13             prefix='backbone',
14         ),
15     ),
复制代码

 

EfficientNet V2的使用方法:(参考mmlab之调用mmpretrain预训练模型_mmpretrain 下游-CSDN博客

  1. 安装mmpretrain: pip install mmpretrain
  2. 在custom_imports中添加'mmpretrain.models': custom_imports = dict(imports=['mmpretrain.models'], allow_failed_imports=False)
  3. config中关于Backbone和neck的设置如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
backbone=dict(
    # _delete_=True, # 将 _base_ 中关于 backbone 的字段删除
    type='mmpretrain.EfficientNetV2',
    arch='small',
    drop_path_rate=0.2,
    out_indices=(3, 4, 5),
    frozen_stages=0,
    norm_cfg=dict(
        type='SyncBN', requires_grad=True, eps=1e-3, momentum=0.01),
    norm_eval=False,
    init_cfg=dict(
        type='Pretrained',
        checkpoint='ckpts/efficientnet-b4_3rdparty-ra-noisystudent_in1k_20221103-16ba8a2d.pth',
        prefix='backbone',
    ),
),
neck=dict(
    type="FPN_CustomOut",
    in_channels=[64, 128, 160],
    out_channels=channels,
    start_level=0,
    add_extra_convs="on_output",
    num_outs=1,
    relu_before_extra_convs=True,
),

 

EfficientNet-B0的结构:

 

 

posted @   Picassooo  阅读(85)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2022-10-11 点到直线的距离
2020-10-11 【论文笔记】2020ICML SimCLR
点击右上角即可分享
微信分享提示