timm documentation

MetaFormer(PoolFormer、ConvFormer、CAFormer)

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

MetaFormer(PoolFormer、ConvFormer、CAFormer)

类别: 混合 · 代码: timm/models/metaformer.py · 架构: 18 · 预训练权重: 50(其中 42 个包含 ImageNet-1k 结果)

MetaFormer 模型共享通用的 Transformer 块结构,并改变 token 混合器:PoolFormer / PoolFormerV2 使用池化,ConvFormer 使用可分离卷积,CAFormer 在早期阶段使用卷积,在后期阶段使用注意力机制。

论文

用法

请参阅快速入门了解如何加载预训练权重、进行图像预处理和微调,以及查阅特征提取了解如何将模型用作骨干网络。

>>> import timm
>>> model = timm.create_model('caformer_s18.sail_in1k', pretrained=True)
>>> data_config = timm.data.resolve_model_data_config(model)

模型 API 支持

功能MetaFormer
features_only=True 特征图✓(步长 4、8、16、32)
forward_intermediates()✓
prune_intermediate_layers()✓
任意输入尺寸,无需更改✓
set_input_size()–
dynamic_img_size=True–
set_grad_checkpointing()✓
逐层学习率衰减(group_matcher())✗
reset_classifier()✓

✓ 支持,✓ (square) 仅支持方形尺寸,✗ 不支持,– 无需支持(模型本身已接受任意输入尺寸)。通过在每个功能上运行随机初始化的模型(MetaFormer 使用 poolformerv2_s12,尺寸为 224)进行验证,预期同一类的其他架构表现相同。有关详细信息,请参阅 Model API 页面。

架构

架构参数(M)GMAC输入大小预训练权重
caformer_b3698.7523.222245
caformer_m3656.2013.292245
caformer_s1826.344.132245
caformer_s3639.308.002245
convformer_b3699.8822.692245
convformer_m3657.0512.892245
convformer_s1826.773.962245
convformer_s3640.017.672245
poolformer_m3656.178.802241
poolformer_m4873.4711.592241
poolformer_s1211.921.822241
poolformer_s2421.393.412241
poolformer_s3630.865.002241
poolformerv2_m3656.088.812241
poolformerv2_m4873.3511.592241
poolformerv2_s1211.891.832241
poolformerv2_s2421.343.422241
poolformerv2_s3630.795.012241

GMACs 和参数量对应于每种架构的默认输入大小和分类器,数据来自基准测试结果。

预训练权重

Top-1 是 results-imagenet.csv 中在所列评估规模下的 ImageNet-1k 验证准确率,- 表示该权重没有 ImageNet-1k 结果(例如预训练权重或图文权重)。Classes 是预训练分类器的大小,对于没有分类器的权重则为 none。

权重输入大小Top-1(%)评估大小类许可证Hub
caformer_b36.sail_in1k22485.5022241000apache-2.0timm
caformer_b36.sail_in1k_38438486.4003841000apache-2.0timm
caformer_b36.sail_in22k224--21841apache-2.0timm
caformer_b36.sail_in22k_ft_in1k22487.4502241000apache-2.0timm
caformer_b36.sail_in22k_ft_in1k_38438488.0583841000apache-2.0timm
caformer_m36.sail_in1k22485.2422241000apache-2.0timm
caformer_m36.sail_in1k_38438486.1643841000apache-2.0timm
caformer_m36.sail_in22k224--21841apache-2.0timm
caformer_m36.sail_in22k_ft_in1k22486.6062241000apache-2.0timm
caformer_m36.sail_in22k_ft_in1k_38438487.4703841000apache-2.0timm
caformer_s18.sail_in1k22483.6642241000apache-2.0timm
caformer_s18.sail_in1k_38438485.0363841000apache-2.0timm
caformer_s18.sail_in22k224--21841apache-2.0timm
caformer_s18.sail_in22k_ft_in1k22484.0922241000apache-2.0timm
caformer_s18.sail_in22k_ft_in1k_38438485.4423841000apache-2.0timm
caformer_s36.sail_in1k22484.5282241000apache-2.0timm
caformer_s36.sail_in1k_38438485.7623841000apache-2.0timm
caformer_s36.sail_in22k224--21841apache-2.0timm
caformer_s36.sail_in22k_ft_in1k22485.7802241000apache-2.0timm
caformer_s36.sail_in22k_ft_in1k_38438486.8603841000apache-2.0timm
convformer_b36.sail_in1k22484.8262241000apache-2.0timm
convformer_b36.sail_in1k_38438485.7703841000apache-2.0timm
convformer_b36.sail_in22k224--21841apache-2.0timm
convformer_b36.sail_in22k_ft_in1k22486.9922241000apache-2.0timm
convformer_b36.sail_in22k_ft_in1k_38438487.6063841000apache-2.0timm
convformer_m36.sail_in1k22484.4862241000apache-2.0timm
convformer_m36.sail_in1k_38438485.5803841000apache-2.0timm
convformer_m36.sail_in22k224--21841apache-2.0timm
convformer_m36.sail_in22k_ft_in1k22486.1522241000apache-2.0timm
convformer_m36.sail_in22k_ft_in1k_38438486.8683841000apache-2.0timm
convformer_s18.sail_in1k22482.9682241000apache-2.0timm
convformer_s18.sail_in1k_38438484.3923841000apache-2.0timm
convformer_s18.sail_in22k224--21841apache-2.0timm
convformer_s18.sail_in22k_ft_in1k22483.7682241000apache-2.0timm
convformer_s18.sail_in22k_ft_in1k_38438485.0043841000apache-2.0timm
convformer_s36.sail_in1k22484.0682241000apache-2.0timm
convformer_s36.sail_in1k_38438485.3803841000apache-2.0timm
convformer_s36.sail_in22k224--21841apache-2.0timm
convformer_s36.sail_in22k_ft_in1k22485.4202241000apache-2.0timm
convformer_s36.sail_in22k_ft_in1k_38438486.3743841000apache-2.0timm
poolformer_m36.sail_in1k22482.1042241000apache-2.0timm
poolformer_m48.sail_in1k22482.4622241000apache-2.0timm
poolformer_s12.sail_in1k22477.2382241000apache-2.0timm
poolformer_s24.sail_in1k22480.2942241000apache-2.0timm
poolformer_s36.sail_in1k22481.4282241000apache-2.0timm
poolformerv2_m36.sail_in1k22482.2142241000apache-2.0timm
poolformerv2_m48.sail_in1k22482.6122241000apache-2.0timm
poolformerv2_s12.sail_in1k22478.0082241000apache-2.0timm
poolformerv2_s24.sail_in1k22480.7462241000apache-2.0timm
poolformerv2_s36.sail_in1k22481.5762241000apache-2.0timm
Update on GitHub