目标检测 YOLOv5 - YOLOv5:v6版本多机多卡训练出现的错误及解决方案
2021年4月份发布的 YOLOv5:v5版本,2021年10月份发布的 YOLOv5:v6版本
发布了更小的Nano模型YOLOv5n和YOLOv5n6
一. 改进的方面
整合了 Roboflow,使用Roboflow来组织、标注、准备、版本化和托管用于训练YOLOv5模型的数据集,Roboflow上有很多公开的数据集。
二. 当采用多机多卡训练时,出现了以下问题
TypeError: barrier() got an unexpected keyword argument ‘device_ids’
代码出错的地方utils/torch_utils.py
def torch_distributed_zero_first(local_rank: int):"""Decorator to make all processes in distributed training wait for each local_master to do something."""if local_rank not in [-1, 0]:dist.barrier(device_ids=[local_rank])yieldif local_rank == 0:
dist.barrier(device_ids=[0])
原因是PyTorch版本,YOLOv5的推荐的Python>=3.6.0,PyTorch>=1.7。
PyTorch>=1.7的函数
torch.distributed.barrier(group=<object object>, async_op=False)
看看新的PyTorch 1.9的函数
torch.distributed.barrier(group=None, async_op=False, device_ids=None)
再看看PyTorch 1.8的函数
torch.distributed.barrier(group=None, async_op=False, device_ids=None)
通过比较发现2021年10月份发布的 YOLOv5:v6版本,使用的PyTorch并不是1.7版本,最简单的方法就是升级下自己PyTorch版本,至少1.8。
也可以按照 YOLOv5的一贯做法,加一个check_requirements()主要是检测 torch>=1.8.0。
第二种方式:
将上述代码替换成:
@contextmanager
def torch_distributed_zero_first(local_rank: int):"""Decorator to make all processes in distributed training wait for each local_master to do something."""if local_rank not in [-1, 0]:torch.distributed.barrier()yieldif local_rank == 0:torch.distributed.barrier()
目标检测 YOLOv5 - YOLOv5:v6版本多机多卡训练出现的错误及解决方案相关推荐
- 深度学习目标检测---使用yolov5训练自己的数据集模型(Windows系统)
目录 0 前言 1.从githab上克隆yolov5代码 1.1 yolov5网络project克隆 1.2 项目代码结构的整体介绍 1.3 深度学习环境的配置和安装yolov5所需要的库 2. ...
- 【目标检测】YOLOv5能识别英雄和小兵?原理解析~
目录 一.简介 二.模型结构 1.整体结构图 2.Backbone(CSPDarknet) 3.SPPF(Spatial Pyramid Pooling - Fast) 4.Neck(FPN+PAN) ...
- 深度学习目标检测:YOLOv5实现车辆检测(含车辆检测数据集+训练代码)
深度学习目标检测:YOLOv5实现车辆检测(含车辆检测数据集+训练代码) 目录 深度学习目标检测:YOLOv5实现车辆检测(含车辆检测数据集+训练代码) 1. 前言 2. 车辆检测数据集说明 (1)车 ...
- 深度学习目标检测:YOLOv5实现红绿灯检测(含红绿灯数据集+训练代码)
深度学习目标检测:YOLOv5实现红绿灯检测(含红绿灯数据集+训练代码) 目录 深度学习目标检测:YOLOv5实现红绿灯检测(含红绿灯数据集+训练代码) 1. 前言 2. 红绿灯检测数据集说明 (1) ...
- 目标检测算法——YOLOv5改进|增加小目标检测层
关注"PandaCVer"公众号 >>>深度学习Tricks,第一时间送达<<< 小目标检测一直以来是CV领域的难点之一,那么,YOLOv5该如 ...
- 一份带有浓重Windows气息的PARL多机多卡训练环境部署教程
一份带有浓重Windows气息的多机多卡PARL训练环境部署教程 深度学习小白挑战Ubuntu18.04多机多卡PARL训练环境部署全纪录 1.踩坑一览 2.安装双系统 2.1 变出个空白分区 2.2 ...
- 多机多卡训练基本原理
多机多卡训练基本原理 在工业实践中,许多较复杂的任务需要使用更强大的模型.强大模型加上海量的训练数据,经常导致模型训练耗时严重.比如在计算机视觉分类任务中,训练一个在ImageNet数据集上精度表现良 ...
- 关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案
关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案 参考文章: (1)关于微信小程序开发环境苹果IOS真机预览报SSL协议错误问题解决方案 (2)https://www.cnblog ...
- 用安卓手机解锁目标检测模型YOLOv5,识别速度不过几十毫秒!
丰色 发自 凹非寺 量子位 报道 | 公众号 QbitAI 现在,目标检测界明星模型YOLO,最新v5版本也可以在手机上玩儿了! 瞧-只需要区区几十毫秒,桌上的东西就全被检测出来了: 这速度似乎不比电 ...
最新文章
- 印象笔记电脑版使用技巧_我的印象笔记使用手册(2020)
- Ajax.net实现loading登陆的效果
- 传送门骑士修改服务器数据,传送门骑士修改经验 | 手游网游页游攻略大全
- 东鹏马桶上水下水之谜
- vs2008生成自定义dll,VS2008发布、生成网站时设置固定的dll文件名
- Android中的音频播放(MediaPlayer和SoundPool)
- openStack Packages yum upgrade
- GPS各种地图坐标系转换(转载)
- python dict setdefault_Python dict setdefault()用法及代码示例
- OpenCV教程(42) xml/yaml文件的读写
- IIC协议简介—学习笔记
- 大二下:概率论与数理统计复习 期末试题B
- android studio创建和安装虚拟机
- matlab计算矩阵平均值再减掉,[MATLAB基础] 矩阵求平均值问题
- 做公文流转的具体思路
- JFlow:真心服务中国IT产业
- nvidia Compute Capability(GPU)
- Deqin - 接小球游戏
- POJ - 2142 扩展欧几里得
- 特殊节日网站全体变成黑灰色