mmdetection的离线安装, 你造么?

本文介绍了如何离线安装mmdetection,包括创建环境、下载相关库和安装步骤,适用于py37+cuda9.0+torch1.1+torchvision0.3.0的环境,详细步骤从查看环境要求到安装mmdetection及其依赖,帮助用户快速搭建目标检测平台。
摘要由CSDN通过智能技术生成

        世界上一切事物的存在,都是因为它有必然的价值,在人工智能之花遍地盛开之际,各大科技公司都在疯狂的攻城掠地,纷纷害怕错过这次盛宴。说到人工智能不得不说到在计算机视觉领域居高领下的深度卷积网络CNN, 自从2012年在ImageNet一举成名后,就一发不可收拾,迅速的渗透到其它视觉任务当中如检测、跟踪,分割。

      最近几年可谓是目标检测的爆发之年,各大state of art算法不断被推出,目前各个公司都开始打造,推广和开源自己的锤子。并将这些检测算法集成在自家造的锤子上,商汤造了mmdetection这个锤子,facebook造了detectron,旷世造了Brain++,图森科技造了SimpleDet。但是这么多锤子,哪款锤子适合我呢???选择恐惧症又犯了。。。

                                                                

   

mmdetection是一个基于PyTorch的开源目标检测框架,支持多种经典模型和数据集。下面是mmdetection进行断点续训的一般步骤: 1. 在训练过程中,设置合适的`checkpoint_config`参数,以便定期保存模型参数和优化器状态。其中包括: - `interval`:保存checkpoint的间隔epoch数; - `save_optimizer`:是否同时保存优化器状态; - `type`:checkpoint保存的格式,如`epoch`、`iteration`等; - `max_to_keep`:保存的最大checkpoint数目。 例如,在训练Faster R-CNN模型时,可以设置如下的checkpoint_config: ```python checkpoint_config = dict(interval=1, save_optimizer=True, type='epoch', max_to_keep=5) ``` 2. 当训练过程中断时,需要手动加载之前保存的checkpoint。可以使用`mmdet.core.checkpoint.load_checkpoint()`函数加载checkpoint,然后将返回的checkpoint字典中的参数和优化器状态加载到当前模型中。 例如,假设我们之前保存了一个名为`epoch_10.pth`的checkpoint,可以使用以下代码加载checkpoint: ```python from mmdet.core import checkpoint checkpoint_file = 'epoch_10.pth' checkpoint_dict = checkpoint.load_checkpoint(model, checkpoint_file, map_location='cpu') optimizer.load_state_dict(checkpoint_dict['optimizer']) start_epoch = checkpoint_dict['epoch'] + 1 ``` 其中,`model`是当前的模型,`optimizer`是当前的优化器,`map_location`是指定保存checkpoint时使用的设备,如`'cpu'`或`'cuda:0'`等。 3. 基于加载的checkpoint,从上次训练结束的epoch开始,继续训练模型。需要注意的是,由于在加载checkpoint时已经将当前模型的参数和优化器状态设置为上次训练结束的状态,因此可以直接调用训练函数进行训练,无需重新初始化模型和优化器。 例如,在使用`train_detector()`函数进行训练时,可以设置`start_epoch`参数为上次训练结束的epoch,然后继续训练模型: ```python from mmdet.apis import train_detector # continue training from last epoch epochs = 10 train_detector(model, dataset, cfg, distributed=False, validate=True, start_epoch=start_epoch, epochs=epochs) ``` 需要注意的是,由于mmdetection支持分布式训练,因此在进行断点续训时需要根据当前的训练方式(单机多卡、多机多卡等)和之前保存checkpoint时的设置进行相应的调整。同时,在分布式训练中,需要保证所有节点使用相同的checkpoint进行训练,以避免模型不同步的问题。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值