☰
从图像分类到Embeddings:tf_mixnet_l.in1k的3种官方用法详解
2026/10/21 1:31:10 网站建设 项目流程

【免费下载链接】tf_mixnet_l.in1k

项目地址:https://ai.gitcode.com/hf_mirrors/timm/tf_mixnet_l.in1k
点击查看免费下载

tf_mixnet_l.in1k 是 timm(PyTorch Image Models)提供的一款 MixNet 图像分类模型,在 ImageNet-1k 上完成预训练,仅 7.3M 参数、0.6 GMACs,轻量高效。本文面向新手,用一篇文章讲清楚它的3 种官方用法:图像分类、特征图提取、图像 Embeddings,并解读 config.json 中的关键配置,帮你快速选对用法。

先认识 tf_mixnet_l.in1k 是什么?🔎

MixNet 源自 Google 的 MixConv 论文(Mixed Depthwise Convolutional Kernels),通过混合不同尺寸的深度可分离卷积核,在精度和计算量之间取得了很好的平衡。

这个仓库是tf_mixnet_l.in1k的模型卡片与权重镜像:模型由论文作者用 TensorFlow 训练,再移植为 PyTorch 版本(即 timm 生态)。核心信息如下:

项目说明
模型类型图像分类 / 特征骨干(backbone)
参数量7.3M(约 28MB 权重)
计算量0.6 GMACs,非常适合端侧与低算力场景
输入尺寸224 × 224
训练数据集ImageNet-1k(1000 类)
分类特征维度1536
许可证apache-2.0

📁仓库文件结构一览:

文件作用
README.md模型卡片,包含 3 种官方用法的完整示例代码
config.json模型架构与预训练预处理配置(mean/std、裁剪比例等)
model.safetensorssafetensors 格式权重(Git LFS 指针,实际约 28MB)
pytorch_model.binPyTorch 二进制格式权重(Git LFS 指针,实际约 28MB)

💡 两个权重文件内容等价,只是存储格式不同;新项目中建议优先使用加载更安全的 safetensors 格式。

用法一:图像分类(Image Classification)🏷️

这是最直观的用法:给模型一张图,输出 ImageNet 1000 个类别的概率分布。

官方流程只有 4 步,核心思路是「加载模型 → 取官方预处理 → 前向 → 取 Top-K」:

model = timm.create_model('tf_mixnet_l.in1k', pretrained=True) model = model.eval() data_config = timm.data.resolve_model_data_config(model) transforms = timm.data.create_transform(**data_config, is_training=False) output = model(transforms(img).unsqueeze(0)) top5_prob, top5_idx = torch.topk(output.softmax(dim=1) * 100, k=5)

几个新手容易踩的坑:

  • 预处理要跟着模型走:resolve_model_data_config会自动应用模型专属的归一化与 resize 参数(对应 config.json 中的mean/std/crop_pct),不要用「自认为标准」的参数替代;
  • 输出形状是(batch, 1000):softmax 后即可解释为各类别概率,k=5表示取 Top-5 预测;
  • 完整可运行示例见 README.md 的 Image Classification 小节。

用法二:特征图提取(Feature Map Extraction)🗺️

如果你做目标检测、分割等下游任务,往往不需要分类头,而是想要中间的特征图。timm 只需用一个参数features_only=True切换模式:

model = timm.create_model('tf_mixnet_l.in1k', pretrained=True, features_only=True) model = model.eval() data_config = timm.data.resolve_model_data_config(model) transforms = timm.data.create_transform(**data_config, is_training=False) output = model(transforms(img).unsqueeze(0)) for o in output: print(o.shape)

对一张 224×224 的输入,它返回5 个不同分辨率的特征图列表:

特征图形状示例语义
第 1 层(1, 32, 112, 112)分辨率最高、信息最细
第 2 层(1, 40, 56, 56)浅层语义
第 3 层(1, 56, 28, 28)中层语义
第 4 层(1, 160, 14, 14)深层语义
第 5 层(1, 264, 7, 7)最抽象、通道数最多

这些多尺度特征图可以直接接分割头、检测头,作为轻量级 backbone 复用,官方示例见 README.md 的 Feature Map Extraction 小节。

用法三:图像 Embeddings(向量表示)🧬

第三种用法是把一张图「压缩」成一个 1536 维向量,用于图像检索、相似度计算、聚类或作为微调起点。官方给出了两种等价写法:

写法 A:创建模型时去掉分类头

model = timm.create_model( 'tf_mixnet_l.in1k', pretrained=True, num_classes=0, # 移除分类器 nn.Linear ) output = model(transforms(img).unsqueeze(0)) # (1, 1536)

写法 B:保留默认模型,手动分两段调用

output = model.forward_features(transforms(img).unsqueeze(0)) # (1, 1536, 7, 7) output = model.forward_head(output, pre_logits=True) # (1, 1536)

要点提示:

  • num_classes=0只是「删掉最后的线性层」,前向结果与写法 B 完全一致;
  • forward_features输出的是未池化的7×7 特征图,forward_head(pre_logits=True)再完成池化 + 归一化,得到最终 Embedding;
  • 得到的 1536 维向量可以直接算余弦相似度,实现「以图搜图」;完整示例见 README.md 的 Image Embeddings 小节。

config.json 关键配置解读 ⚙️

config.json 定义了模型架构tf_mixnet_l与预训练配置pretrained_cfg,几个字段值得注意:

字段值含义
num_classes1000ImageNet-1k 类别数
num_features1536Embedding / 分类前特征维度
input_size[3, 224, 224]输入为 224×224 三通道图像
mean/std0.485/0.456/0.406 等与 ImageNet 一致的 RGB 归一化参数
crop_pct/crop_mode0.875 / center推理时中心裁剪 87.5% 比例
interpolationbicubic缩放采用双三次插值
pool_size[7, 7]特征图池化到 7×7 后全局池化
first_conv/classifierconv_stem / classifier用于微调时定位首层卷积与分类头

这些参数正是timm.data.resolve_model_data_config会自动读取并应用的来源——这也是官方反复强调「用 timm 工具链生成 transforms」的原因。

3 种用法怎么选?🧭

你的需求选哪个关键参数
判断图片属于哪类(Top-K 分类)图像分类默认加载,输出 1000 维 logits
做分割 / 检测,需要多尺度特征特征图提取features_only=True
图像检索 / 相似度 / 微调特征图像 Embeddingsnum_classes=0或forward_head(pre_logits=True)

一句话总结:分类看 logits、下游任务要特征图、检索聚类取 1536 维向量,三种模式共享同一份预训练权重,切换成本几乎为零。模型基于 apache-2.0 协议发布,可放心用于学习与商业场景;引用时请参考 README.md 中的 MixConv 与 timm 两条 BibTeX。

【免费下载链接】tf_mixnet_l.in1k

项目地址:https://ai.gitcode.com/hf_mirrors/timm/tf_mixnet_l.in1k
点击查看免费下载

相关推荐

上一篇:WPF DynamicLayout 示例:从零实现一个带 Click 事件处理器的按钮(WPF-Samples 实战解析)
下一篇:gulp-postcss完整教程:一站式解决CSS后处理难题

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询