opennmmlab实战营二期-mmpretrain代码课课(五)
代码课写代码最重要(相关代码见:点我),笔记的话就简单进行总结,大致如下:
-
一、安装mmpretrain
-
二、调用mmpretrain的模型进行推理
- 图像分类
- 图像描述
-
三、在新分类数据集进行resnet18微调训练
-
1、准备猫狗数据集
-
2、介绍配置文件(resnet18_8×32_link.py)
- 模型配置(resnet18.py)
- 数据集配置(imagenet_bs32.py)
- 运行配置(default_runtime.py)
-
3、编写配置文件(resnet18_finetune.py)
- 复制模型、数据集、运行配置文件的内容至resnet18_finetune.py
- 修改配置文件
- 模型:
- 加
init_cfg=dict(type="Pretrained",checkpoint='https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.pth')
(来自https://download.openmmlab.com/mmclassification/v0/resnet/resnet18_8xb32_in1k_20210831-fbbb1da6.pth) - 修改num_classes=2
- 加
- 数据集:
- 修改数据集类型:
dataset_type='CustomDataset'
- 修改数据集路径:
data_root=''
- 修改数据集类型:
- 运行:epoch
- 模型:
-
4、启动训练
-
mim mmpretrain resnet18_finetune.py --work-dir=./exp
-
-
5、测试集评估
-
mim mmpretrain resnet18_finuetune.py --checkpoint exp/epoch.pth
-
-
6、使用其他工具分析结果
-
mim run mmpretrain analyze_results resnet18_finetune.py result.pkl --out-dir analyze
-
-
7、混淆矩阵
-
mim run mmpretrain confuse_matrix resnet18_finetune.py result.pkl --show --include-values
-
-
8、预测图片
-
from mmpretrain import ImageClassficationInference inf=ImageClassficationInference('resnet18_finetune.py',pretrainen='epoch.pth') inf('image.jpg',show=True)
-
-