Day 3 --- MMClassification工具包

【OpenMMLab实践】01MMSegmentation官方教程实现过程记录(mmcv,mmsegmentation,torch) MMSegmentation官方教程实现过程记录(mmcv,mmsegmentation,torch) 阅读详情

一、MMClassification工具包简介

MMClassification工具包目前集成了包括VGG、ResNet、ConvNext以及Swin-Transformer等多种神经网络模型,同时为了便于使用,提供了包括MNIST、CIFAR以及ImageNet 1K和21K等多种图像分类数据集支持,其他数据集需求可在OpenDataLab中进行获取。
image.png

训练与推理使用

训练

针对训练任务,在通过源码安装好框架后,采用如下命令即可进行训练

# 单机单卡
python tools/train.py  ${CONFIG_FILE} [optional arguments]

# 单机、多机多卡
./tools/dist_train.sh ${CONFIG_FILE} ${GPU_NUM} [optional arguments]

# 使用任务调度器 Slurm 启动任务
[GPUS=${GPUS}] ./tools/slurm_train.sh ${PARTITION} ${JOB_NAME} ${CONFIG_FILE} ${WORK_DIR}

# 加载预训练权重,从 checkpoint 恢复训练
上述命令后增加 --resume-from ${CHECKPOINT_FILE} 参数

推理

使用推理工具时同样需要源码安装,随后通过下述命令进行推理

# 单张图像
python demo/image_demo.py ${IMAGE_FILE} ${CONFIG_FILE} ${CHECKPOINT_FILE}

# 测试集
## 单卡
python tools/test.py ${CONFIG_FILE} ${CHECKPOINT_FILE} [--metrics ${METRICS}] [--out 
${RESULT_FILE}]
## 多卡
./tools/dist_test.sh ${CONFIG_FILE} ${CHECKPOINT_FILE} ${GPU_NUM} [--metrics ${METRICS}] [--out 
${RESULT_FILE}]

推理API简介

在进行推理前,若没有自己的训练权重,需要通过OpenMMLab提供的mim管理工具下载对应配置文件和训练权重

$ mim download mmcls --config mobilenet-v2_8xb32_in1k --dest .

以MobileNet-v2为例,在进行推理时,仅需关注下述代码即可

from mmcls.apis import init_model, inference_model, show_result_pyplot

model = init_model('mobilenet-v2_8xb32_in1k.py',
                   'mobilenet_v2_batch256_imagenet_20200708-3b2dc3af.pth',
                   device='cuda:0')

result = inference_model(model, 'banana.png')
show_result_pyplot(model, 'banana.png', result)
  • init_model():负责调用下载好的config文件、训练权重以及指定支持设备
  • inference_model():推理API接口,负责返回推理结果

image.png

  • show_result_pyplot():将推理结果展示在图像中

image.png

配置文件

在深度学习任务中,通常一个模型想正常训练,需要具备以下几个方面

  • 模型结构:定义模型层数、每层通道数等具体结构
  • 数据集:包括数据集划分策略、数据文件路径以及数据增强策略等
  • 训练策略:决定模型在训练时采用的优化方法、学习率参数、batch_size、epoch以及学习率变化策略等
  • 运行:GPU支持、分布式环境支持等
  • 辅助功能:log打印、定时保存checkpoint以及可视化loss曲线

OpenMMLab将上述内容统一集成在了一个配置文件中,由多个字段仅需定义,用户仅需通过定义和修改该配置文件,即可定义自己的网络结构、数据内容以及训练策略,从而轻松完成整个训练过程。

  • model:定义模型
  • data:定义数据
  • optimizer、lr_config:定义训练策略
  • load_from:定义预训练模型的参数文件
MMDetection 使用示例:从入门到出门 最近对目标识别感兴趣,想做一些有趣目标识别项目自己玩耍,本来选择的是 YOLOV5 的,但无奈自己使用 YOLOV5 环境训练模型时,不管训练多少次 mAP 指标总是为 0,而其它 pytorch 项目却能正常运行,尝试解决无果后发现另一个更好用的目标识别库——MMDetection ,最终实现了自己的需求。本文首先介绍了 MMDetection 库在 Windows 11 下的安装方式,及可能遇到的问题和解决方法;然后说明了其自带的单图片检测、视频检测、摄像头检测工具的使用方法,并在此之上扩展了一个同时包 阅读详情

相关推荐

【OpenMMLab实践】03MMClassification理论(CNN分类模型训练以及PyTorch简介-中)

CNN训练技巧:随机梯度下降为主,各种经验策略辅助损失函数高度不规则,非凸权重初始化:kaiming init,预训练模型优化器改进:动量SGD,自适应梯度算法学习率策略:学习率退火,升温防止过拟合数据增广、早停、DropoutBatch Normalization:稳定数据分布,降低训练难度。

ShiTianlei的博客 2233

(最新)mmdetection测试单张/多张图片并保存

关于mmdetection框架上为了验证训练好的模型,将训练保存的模型用于测试单张图片的方法有很多,但是从mmdetectionv1.0rc1版本及以后的版本中,源代码有了一定的更新,但是官方文档上用于测试单张图片的方法还并未更新。网上相关教程也是老版本的教程,于是在此分享一下最新的方法。 官方文档上测试单张图片方法: 在mmdetectionv1.0rc1及以后的版本中,做了以下变更: 1、show_result()函数被封装进了show_result_pyplot()函数中。 2、在show_r

weixin_41922853的博客 1万+

工业质检新利器:手把手教你用AD-DINOv3实现零样本缺陷检测(附MVTec AD实战)

本文详细介绍了AD-DINOv3框架在工业质检中的应用,通过零样本异常检测技术解决传统方法的标注成本高和泛化能力弱问题。文章包含技术原理解析、MVTec AD数据集实战部署、模型训练流程及工业部署优化技巧,帮助读者快速掌握这一创新技术。

seed的博客 764

【超详细】MMLab分类任务mmclassification:环境配置说明、训练、预测及模型结果可视化展示

【超详细】MMLab分类任务mmclassification:环境配置说明、训练、预测及模型结果可视化展示

阿旭的博客 5410

ComfyUI中一个超好用的变量管理类节点-KJNodes

在AI绘图中,ComfyUI的热度开始慢慢起来一些,但是这个软件在使用的过程中,需要很多连线,仅仅一个最简单的动画生成,就需要连接这么多线条,而且有些线会飞的很远,看起来就很不美观,尤其是一些复杂工作流,连接到最后自己可能已经分不太清楚到底连接好了没有。今天在研究C站的大佬们的工作流的时候,发现一个有意思的工作流,看起来大概是这种感觉:干净整洁。他用到了KJNodes这么个节点来管理变量,git上星标也不算很多,所以我想很多朋友可能还不知道,所以这里简单介绍下用法。

聚梦小课堂 7521

pcb印刷电路缺陷检测----数据集准备

PKU-Market-PCB 印刷电路板 (PCB) 瑕疵数据集是一个公共合成 PCB 数据集,包含 1,386 张图像,具有 6 种缺陷(漏孔、鼠咬、开路、短路、杂散、杂铜),可用于图像检测、分类和配准任务。

qq_30190551的博客 4429

[DAY3]图像分类工具包 MMClassification

[DAY3]图像分类工具包 MMClassification

chenmojia的博客 284

STM32 移植FreeModbus详细过程

modbus是一个非常好的串口协议(当然也能用在网口上),它简洁、规范、强大。可以满足大部分的工业、嵌入式需求。 这里详细说下如何将freemodbus移植到stm32平台。我之前下载的版本是1.6,我会在我的下载链接里面加上1.6的freemodbus压缩包以及我已经移植好的stm32 for freemodbus版本。我上传的移植好的绝对没问题,经过多个板子测试。这里编译器使用的是keil5.28,单片机用的是STM32F103RCT6。 移植到VET6以及ZET6的话只需要改一下选择的芯片就好,改法:

qq_40305944的博客 8万+

【OpenMMLab AI实战营 学习笔记 DAY(三)-- mmclassification 安装配置 及 利用resnet训练flower模型】

本次课程,仍然是由王若晖老师进行讲解,中间的答疑部分由张子豪(B站 同济子豪兄)进行答疑讲解,最后是由北京超级云计算的沈平岗老师进行北京超算平台的使用,以及具体的代码实现。,也可以直接打开哔哩哔哩,搜索OpenMMLab,在其主页可以观看。

LL_RF的博客 640

机器翻译的评价标准:BLEU、ROUGE等指标说明及代码实现

机器翻译领域常用的自动评价指标主要包括BLEU、ROUGE、METEOR和COMET四大类。BLEU基于n-gram精确率和短句惩罚,ROUGE关注召回率,METEOR结合精确率和召回率并考虑同义词,COMET则利用预训练模型计算语义相似度。这些指标各有特点:BLEU适用于机器翻译,ROUGE对长句友好,METEOR更接近人工评分,COMET无需参考译文。代码实现上,sacrebleu、rouge-score等库提供了便捷的计算方式。新兴趋势包括基于BERT等模型的语义评估和大语言模型评估器,但传统指标仍占

数据知道的博客 9418

RK3588嵌入式AI工业部署:YOLOv11 + OpenCV实时推理系统全栈实现

接下来,你可以尝试优化模型(如量化、剪枝)、扩展功能(如多摄像头推理、结果上传到云端),让你的AI应用更加完善。不需要担心技术门槛,我们会一步步带你完成环境搭建、模型转换、部署推理的全流程,最终让你在RK3588上体验AI目标检测的丝滑快感。首先,我们需要把YOLOv11的PyTorch模型(.pt格式)转换成ONNX格式,这是模型部署的第一步。此时,你应该能看到摄像头画面中出现了实时的目标检测框,标注着检测到的物体类别和置信度。文件,这就是RK3588可运行的模型文件。文件,这就是转换后的ONNX模型。

LXY_LOVE36的博客 246

OpenMMLab 计算机视觉 # day3: 基于 MMClassification 的图像分类实践 【实践】

openmmlab 打卡第三天

skysys的研究小屋 345

布尔可满足性问题(SAT)深度研究

布尔可满足性问题(Boolean Satisfiability Problem, SAT)是计算机科学和数理逻辑中的一个核心决策问题。其定义为:对于一个给定的布尔逻辑公式,判断是否存在一组对其变量的真值赋值(即,为每个变量指定真 (True) 或假 (False)),使得该公式的最终计算结果为真。如果存在这样的赋值,则称该布尔公式是可满足的 (satisfiable);否则,称其为不可满足的 (unsatisfiable)。

步子哥的博客 497

OpenMMLab AI 实战营 Day 3

mmlab 训练营 Day 3

钢之乐学的博客 180

Opencv项目实战:09 物体尺寸测量

《Opencv项目实战:09 物体尺寸测量》本项目主要是运用了之前扫描文档的思想,以A4纸为背景,检测其中区域的物体长和宽。我的摄像头无法固定,所以是手持的,且由于我在寝室里面是真的没有找到合适的测量物体以及背景色(全是米色或原木色的)。所以效果有所欠缺,但经过ps修改的图片,检测的效果还是很不错的。

m0_62919535的博客 1万+

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

OpenMMlab AI实战营 打卡笔记DAY3

OpenMMlab AI实战营 打卡笔记DAY3

weixin_49644231的博客 223

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

训练营打卡 - day 3

训练营笔记 - day 3

weixin_55391694的博客 168

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

【OpenMMLab实战营打卡 - 第 3 课】MMClassification代码实战

对早期的网络,有全连接层的神经网络,都要求指定的尺寸才能输入到全连接层中。而后续的那些没有全连接层的神经网络,可以兼容任意尺寸的图像。用anaconda创建python环境,module avail可以看到里面所有安装好的程序。北京超级云计算和国家重要信息化基础平台;使用的模型,训练的数据,训练的策略等等。SSH linux平台的控制台。Run文件夹里有300G的容量。训练数据是否固定尺寸?

m0_47062524的博客 295

OpenMMLab AI 实战营day3

OpenMMLab AI 实战营day3

Hzz的地球调查组 208

OpenMMLab 实战营Day3

MMClassification介绍

qq_54733030的博客 189

OpenMMLab AI 实战营 Day 3 笔记

OpenMMLab AI 实战营 Day 3 笔记 MMClassification基本操作

Ecron的博客 284

【OpenMMLab通用视觉框架 AI训练营 学习笔记 DAY(二)图像分类与基础视觉模型】

知道了视觉任务的难点是,图像的内容是像素整体呈现出的结果,和个别像素的值没有直接关联,难以遵循具体的规则设计算法。我们对其猜想:虽然深层网络有潜力达到更高的精度,但常规的优化算法难以找到这个更优的模型即,让新增加的卷积层拟合一个近似恒等映射,恰好可以让浅层网络变好一点。后面介绍了上面是注意力机制–Attention Mechanism,简单来说,就是卷积核并不是一直不变的,而是根据你输入的图片进行调整,从而抓取更重要的信息,这刚开始是运用于语言学方面的。后续课程讲到的都是一些降低模型参数两和计算量的方法。

LL_RF的博客 374

【OpenMMLab AI实战营Day2笔记】通用视觉框架OpenMMLab图像分类与基础视觉模型

OpenMMLab AI实战营第二期课程笔记,通用视觉框架OpenMMLab图像分类与基础视觉模型。

m0_62104692的博客 421

通用视觉框架OpenMMLab

[DAY1]计算机视觉基础与OpenMMLab入门

chenmojia的博客 215

安装mmdetection进行测试不出图片和报错记录

mmdetection安装测试出现warning和结果不出图

qq_43124451的博客 2427

mmdetection测试单张/多张图片并保存(继大佬分享改错)

mmdetection测试单张/多张图片并保存(继大佬分享改错)

weixin_44733311的博客 1962
上一篇: Day 2 --- OpenMMLab系列之图像分类算法基础
下一篇: Day 4 --- OpenMMLab系列之目标检测基础(一)
Aaaaaki
博客等级 码龄9年 884粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Aaaaaki

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值