模型训练 不同批次大小与学习率下的训练损失对比(2)

模型训练不同批次大小与学习率下的训练损失对比(2)

以ConvNeXt 为例

ConvNeXt 中模型之间的关系

flyfish

一、架构尺寸维度

ConvNeXt-T / S / B / L / XL 是同一套架构的不同尺寸变体,只有通道数、每个阶段的block数量不同,核心设计(patchify stem、倒置瓶颈、7×7深度卷积、分层结构等)完全一致,参数量和计算量逐级递增。

模型 定位 对应对标
ConvNeXt-T(Tiny) 轻量版 Swin-T
ConvNeXt-S(Small) 小版 Swin-S
ConvNeXt-B(Base) 基础版 Swin-B
ConvNeXt-L(Large) 大版 Swin-L
ConvNeXt-XL(Extra Large) 加大版

二、训练阶段

论文里有两条训练路线,其中22K预训练→多任务微调是主流、效果更好的路线;1K从头训练是基线对照组。

复制代码
随机初始化权重
    ├─ 路线1(基线):直接在ImageNet-1K从头训练300轮 → 1K从头分类模型
    └─ 路线2(主流):在ImageNet-22K预训练90轮 → 22K通用预训练权重
                                ├─ 分支1:ImageNet-1K分类微调30轮(224px/384px)→ 分类成品模型
                                ├─ 分支2:COCO检测/分割微调 → 检测成品模型
                                └─ 分支3:ADE20K语义分割微调 → 分割成品模型

路线1:主流范式 ------ ImageNet-22K 预训练 → 多任务微调

第1层:通用预训练底座

输入:随机初始化的 ConvNeXt-T/S/B/L/XL

训练数据:ImageNet-22K(21841个类别,约1400万张图片,超大类别、超大规模)

训练:90轮预训练

产出:ImageNet-22K 预训练权重

定位:所有下游任务的通用特征底座,属于半成品,不直接用于具体任务;作用是让模型学到通用的底层视觉知识(边缘、纹理、形状、物体通用规律)。

第2层:各任务平级微调(都基于22K预训练权重)

22K预训练权重是公共底座,在此基础上分别对接不同的任务头,做独立的平级微调;三个任务之间没有继承关系,都直接来自22K预训练:

微调分支 任务 做法 产出
分支1 ImageNet-1K 图像分类 接分类头,在1000类ImageNet-1K上微调30轮;分224×224、384×384两种分辨率 最终图像分类模型
分支2 COCO 目标检测/实例分割 作为骨干网络,接入Mask R-CNN/Cascade Mask R-CNN检测头,在COCO数据集上微调 检测/分割任务模型
分支3 ADE20K 语义分割 作为骨干网络,接入UperNet分割头,在ADE20K数据集上微调 语义分割任务模型

检测、分割等下游任务,直接用22K预训练的通用骨干微调,不是先微调1K分类,再微调检测分割;ImageNet-1K分类只是众多下游任务中的一个,和检测、分割是平级关系。

路线2:基线对照 ------ ImageNet-1K 从头全量训练

输入:随机初始化的 ConvNeXt-T/S/B/L(XL参数量过大,没有做1K从头训练)

训练数据:ImageNet-1K(1000个类别,120万张图片)

训练:直接从零开始训练300轮

定位:作为基线对照组,用来验证ConvNeXt架构本身的效果;精度显著低于22K预训练+1K微调的版本(比如ConvNeXt-B:从头训练83.8% vs 22K预训练+微调85.8%)。

相关推荐
知识分享小能手34 分钟前
深度学习学习教程,从入门到精通,深度生成模型 —— 知识点详解与代码实现(20)
人工智能·深度学习·学习
m4Rk_1 小时前
【论文阅读】Agent 记忆机制(74):CompassMem——从相似度检索走向事件图上的记忆导航
论文阅读·人工智能·学习·开源·github
小李不想当小白1 小时前
DMA直接存储器存取(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·分享
2601_949950633 小时前
练题簿在线练题全流程:从资料导入到模拟考试与错题复盘
学习·考研·小程序·刷题·小程序推荐
别动我齐刘海3 小时前
ROS2 Jazzy + C++ 实战路线——基础学习2
c++·人工智能·vscode·python·学习·机器学习·机器人
水云桐程序员5 小时前
量子力学概论,量子力学概念总结
笔记·科技·学习·量子计算
三克的油7 小时前
java-学习1
java·开发语言·学习
j7~7 小时前
【C++微服务项目开发脚手架】(接口篇一)gflags + gtest + spdlog 接口学习笔记
c++·学习·gtest·项目开发·spdlog·gflags·c++项目微服务开发脚手架
彧azz7 小时前
图的最短路径:Dijkstra与Floyd算法
数据结构·笔记·学习
笨鸟先飞的橘猫8 小时前
系统设计复盘2026-09-18
学习