《YOLOv5:从入门到实战》报错解决 专栏答疑

前言:Hello大家好,我是小哥谈。YOLOv5:从入门到实战》专栏上线后,部分同学在学习过程中提出了一些问题,笔者相信这些问题其他同学也有可能遇到。为了让大家可以更好地学习本专栏内容,笔者特意推出了该篇专栏答疑,针对同学们在学习过程中所提出的问题进行汇总记录,并不断实时更新,希望能够帮助到大家!🌈 

本专栏涵盖了丰富的YOLOv5算法从入门到实战系列教程,专为学习YOLOv5的同学而设计,堪称全网最详细的教程!该专栏从YOLOv5基础知识入门到项目应用实战都提供了详细的手把手教程,欢迎大家订阅并一并探索!

       目录

🚀1.报错解决

🚀2.专栏答疑

🚀1.报错解决

💥💥报错1

报错内容:

报错内容如下图所示:

解决方案:

train.py文件中,大概324行左右,修改下列代码:

# Backward
scaler.scale(loss).backward()

在原代码的基础上添加一行代码:

# Backward
torch.use_deterministic_algorithms(False) # 添加代码
scaler.scale(loss).backward()

💥💥报错2

报错内容:

FileNotFoundError: [Errno 2] No such file or directory: 'yolov5s.pt'

报错内容如下图所示:

解决方案:

该报错容易发生在新入门的学生中,报错原因是没有准备预训练权重文件。

预训练权重:一般为了缩短网络的训练时间,并达到更好的精度,我们一般加载预训练权重进行网络的训练。而YOLOv5的5.0版本给我们提供了几个预训练权重,我们可以对应我们不同的需求选择不同的版本的预训练权重。通过如下的图可以获得权重的名字和大小信息,可以预料的到,预训练权重越大,训练出来的精度就会相对来说越高,但是其检测的速度就会越慢。预训练权重可以通过下列网址进入然后进行下载,本次训练自己的数据集用的预训练权重为yolov5s.pt

说明:♨️♨️♨️

预训练权重网址:Release v5.0 - YOLOv5-P6 1280 models, AWS, Supervise.ly and YouTube integrations · ultralytics/yolov5 · GitHub

💥💥报错3

报错内容:

export GIT_PYTHON_REFRESH=quiet

报错内容如下图所示:

解决方案:

train.py文件开头,添加下列代码:

os.environ["GIT_PYTHON_REFRESH"] = "quiet"

具体如图所示:

💥💥报错4

报错内容:

OSError: [WinError 1455] 页面文件太小,无法完成操作。 Error loading "C:\Users\Lenovo\your_path\pytorch\lib\site-packages\torch\lib\cudnn_cnn_infer64_8.dll" or one of its dependencies.

报错内容如下图所示:

解决方案:

train.py文件中找到parse_opt函数,调小‘--workers’中的default的值来解决。


🚀2.专栏答疑

💥💥问题1

问题内容:

可以把backbone替换成MobileNetv3以后,再更换成BiFPN的结构吗?

笔者回复:

可以的,我看论文有这么做的,您可以试一下效果。

💥💥问题2

问题内容:

添加了注意力机制后,为什么反而降点了呢?

笔者回复:

添加注意力不起作用无外乎两个原因,一是代码错误,二是注意力不适合。代码错误就不说了,而注意力不适合,需要明白:

注意力本身就是一种特征,通过附加到源特征上,实现一种类似特征增强的效果,因此从原理上讲,添加注意力,即使结果不变好,也不见得变差,但实际却经常遇到结果变差的情况。换一种说法,注意力是一组权重,权重附加到特征上,有增强的也有不增强的,当大量权重附加都达到增强效果,而只有少量特征造成负面影响,注意力就整体上增强了。这也是我们常说的注意力强化有用特征而弱化无用特征的作用,但其实鬼知道它强化的是什么特征,它也不可能强化的都是有用特征。注意力不起作用或者起反作用还与添加位置或者数据集等有关系。

所以,总结就是,对于YOLOv5算法,没有绝对涨点的改进操作,添加注意力机制也是如此,所以添加是否有用,需要多加尝试!


说明:♨️♨️♨️

本篇内容笔者会根据情况实时更新,大家有任何问题欢迎指出!


http://www.niftyadmin.cn/n/5057933.html

相关文章

如何使用python编译器来编写代码,不使用anaconda和pycharm

winR 输入cmd 直接输入pip list即可查看已经安装的包有哪些 惊奇地发现我已经安装过这些包 absl-py 1.3.0 astunparse 1.6.3 cachetools 4.2.4 certifi 2022.9.24 charset-normalizer 2.1.1 gast 0.3.3 google-auth 1.35.0 google-auth-oauthlib 0.4.6 google-pasta 0.2.0 grp…

R语言实现随机生存森林(3)

常见问题解答 1、计算C指数 1-Error rate&#xff0c;或者 rsf.err <- get.cindex(yvar$Survival_months,yvar$OS,predictedrf.grow$predicted) 2、模型中predicted和predicted.oob区别 predicted和predicted.oob是两个不同的属性&#xff0c;它们分别表示模型的预测结果…

Windows中实现将bat或exe文件作为服务_且实现命令行安装、配置、启动、删除服务

一、背景描述 在Windows环境下进行日常的项目开发过程中&#xff0c;有时候需要将bat文件或exe文件程序注册为Windows的服务实现开机自己运行&#xff08;没有用户登陆&#xff0c;服务在开机后也可以照常运行&#xff09;、且对于那些没有用户交互界面的exe程序来说只要在后台…

【Linux指令集】---git命令的基本使用

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Linux专栏】&#x1f388; 本专栏旨在分享学习Linux的一点学习心得&#xff0c;欢迎大家在评论区讨论&#x1f48c; 演示环境&#xff1…

C- 一个程序引发的问题

C程序如下&#xff1a; #include <stdio.h> #include <string.h> #include <stdlib.h>struct student_t {char *id;char *name;char *score; };typedef struct student_t *Student_t;void print_stu_info(Student_t stu) {printf("%s %s %s\n",…

APP渗透测试

APP反抓包突破 抓包失败分析 工具证书未配置 app不使用HTTP/S协议 反模拟器 1.使用真机进行抓包 2.用模拟器模拟真机 3.逆向删除反模拟器代码打包重新测试 反证书 SSL证书绑定分为单向校验和双向校验&#xff0c;单向校验就是客户端校验服务端的证书&#xff0c;双向…

[WUSTCTF 2020]朴实无华:PHP 下的 intval 绕过技巧

文章目录 参考环境intval()主角登场截断而非四舍五入进制转化字符串解析规则十进制字符串其他进制 科学计数法e/E 表示法 intval() 在 PHP 不同版本中的表现差异PHP7.2.5 版本及以上PHP7.2.5 版本以下 [WUSTCTF 2020]朴实无华可能性分析绕过 参考 项目描述搜索引擎Bing、Googl…

linux 监控CPU利用率

监控CPU利用率 使用vmstat来分析CPU使用信息 #!/bin/bashDATE$(date %F" "%H:%M)IP$(ifconfig eth0 |awk -F [ :] /inet addr/{print $4}) # 只支持CentOS6MAIL"examplemail.com"if ! which vmstat &>/dev/null; then echo "vmstat comman…