目标检测框架mmdetection如何使用swanlab远程查看训练日志
参考项目:
写在前面
平常做一些涉及物品检测的项目或者课题的时候觉得mmdetection非常好用。其设计的config功能能够让我们快速拉起多个实验,也方便多个人开启实验时使用git管理。有空了可以专门写一期如何将自己的项目改写成config模式的博客(先挖坑)。
mmdetection的框架非常好用,里面不仅带了很多数据集预处理的脚本,还有一些实验日志记录的脚本和框架支持。不过在多个人一起搞项目的时候还是会使用一些在线实验日志记录工具,国外的(可能需要翻墙)比如wandb,comet之类的,国内的推荐SwanLab,这里记录一下如何将mmdetection的训练日志接入SwanLab。
mmdetection接入SwanLab
第一步 安装SwanLab和登陆
在mmdetection的官方环境中安装swanlab
pip install -U swanlab
登陆SwanLab官网https://swanlab.cn/,注册,并且在如下位置找到和复制自己的key。
接下来在命令行中输入
swanlab login
会看到提示输入key
按照提示将key粘贴进去(注意key是不会显示到终端当中的)就可以完成配置,完成效果如下:
第二步 修改config文件
这里我们以官方的faster-rcnn训练config为例子。
仅需要在config文件的最后增加下面的代码:
_base_ = [
'../_base_/models/faster-rcnn_r50_fpn.py',
'../_base_/datasets/coco_detection.py',
'../_base_/schedules/schedule_1x.py', '../_base_/default_runtime.py'
]
# swanlab
custom_imports = dict( # 引入SwanLab作为日志记录器
imports=["swanlab.integration.mmengine"], allow_failed_imports=False
)
vis_backends = [
dict(type="LocalVisBackend"),
dict(
type="SwanlabVisBackend",
init_kwargs={ # swanlab.init 参数
"project": "MMDetection", # 项目名称
"experiment_name": "faster-rcnn", # 实验名称
"description": "faster-rcnn r50 fpn 1x coco", # 实验的描述信息
# "workspace": "Organization Name", # 如果有组织的话,就填写组织名称
},
),
]
visualizer = dict(
type="DetLocalVisualizer", vis_backends=vis_backends, name="visualizer"
)
第三步 开启训练和查看
完成config修改后可以尝试训练一下
python tools/train.py configs/faster_rcnn/faster-rcnn_r50_fpn_1x_coco.py
便可以在https://swanlab.cn/中远程查看自己的训练日志了。
也可以在手机上查看训练过程