【MMDetection 详解】

MMDetection 详解

1.train

  • configure文件表示整个模型结构,是mmdetection里面最重要的部分。就是使用一个configure文件来管理所有的内容,是因为整个ML的参数太多了,所以统一在config文件夹中进行设置。

  • 具体要写多少层,训练策略,选取的优化器,数据的处理等,这些所有的参数你都不能每次都去源码里面去改,那就把这些所有的事情都写到一个config文件里面。然后让一键构建,这就是config文件的作用。

  • config文件是mmdetection最重要的部分,其实不仅仅是参数的设定,它还包括了模型的构建,模型整个搭起来就是在一个config文件里面的。

  • mmdection的config文件就是一个py文件,yaml文件也是config文件的一种类型。

  • 比如你打开一个py文件,如上图所示,你也不知道是什么意思,其实这个文件特别长,但是你看到的就是这一句话。为什么只有这一句话呢?这是因为它索引了base,它索引了一个前面的配置文件。它只对这个配置文件的这一些字段做了修改。

  • 点这个配置文件,你会发现它索引了另外一个配置文件,另外一个配置文件可能又会索引到另外一个配置文件,这样的索引,可能要7-8次。

  • 对于新手来说,往往难以找到字段,所以说的第一个重要的事情就是print_config()把所有的参数都打印出来。

1.1 print_config()

  • 在mmdetection里面给了一个tools工具将config文件打印出来。

可以将config文件的所有内容,打印到一个py脚本当中。这是第一个重要的点,尤其是对于刚学的人来说,你那些字段是什么,甚至不知道有那些字段。

一定要把config文件中的信息打印出来去研究,这是第一件事情。

1.2 训练模型

  • 你想模型只需要这一句话,,连后面的--work-dir $WORKDIR 都不需要。

  • 只需要 ,你想train什么都可以,所以config就是包含了所有。训练就只需要包含这一句话就好了。所以config是极其重要的重点。

  • mmdetection集成了非常多的算法,举个例子,比如打开fastercnn这个算法,

faster_rcnn里面又包含各种结构,比如backbone不一样,训练策略的不一样,数据集的不一样等。

  • 比如说这个配置文件,这个命名是有严格规范的,

    1.faster_rcnn--- 对应方法。

    2.r101-------backbone。

    3.fpn------Feature pyramid network(特征金字塔网络),提高目标检测的准确率,尤其是小目标的检测

       4.mstrain---多尺度的训练。

       5.3x---longsgadule 更长时间的训练 1x 就是12个epoch3x就是36个epoch

       6.coco---是指在coco数据集上进行训练。

每一个文件夹集成了一个方法,每个方法又有不同的结构训练方式。

在_base_文件夹下包含三个部分1.models,2. schedules和3.datasets:

  •  configure文件的组成是字典结构,一定是一个一个的字典。
  • configure文件写这么多,主要是为了将数据传到这个地方,文件中的有些字段并不是字典,而是一个值。

 像上面的train_pipeline,test_pipeline等,它只是一个值,它是作为一个value传到后面的字典里面

上面写这么多,只是为了把value传在这个地方,

要知道某些字段并不是configure文件的构成,它是一些值,为了传到字典里面的。

像下面这个model,它有backbone,首先是model的类型是SOLOv2backbone 是由ResNet101搭建,neck,mask_head就把复杂的模型搭建完成了。

1.2.1 Model

type=‘Resnet’既然登记为这个类,一定有这个类的源码。

 在这个文件夹,backbones里面可以找到对应的源码,后面的字典只是将参数传递给源码里。或者在config文件里面不知道代码是干什么的,可以快速的找到源码,了解其用途。

 

 

 

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

无敌三角猫

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

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

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

打赏作者

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

抵扣说明:

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

余额充值