本文主要是介绍入手3060显卡真香,却不知如何配置YOLOv5环境?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
!!此文若有版权上的冲突,望及时联系本人,本人会在受到消息的第一时间进行修改。!!
!!!注:请整篇文章读完再进行操作!!!
(文采有限、排版不佳,望各位读者多多包涵)
最近刚入手联想的r9000p/RTX3060系列笔记本,作为学生党使用真香~
但随之而来的问题就是由于硬件导致一些软件环境搭建十分繁琐,本人在学习机器视觉时需要借助YOLOv5来进行预训练,AI圈都知道深度学习跑起来需要NVIDIA显卡,但是3060显卡却不知如何正确匹配对应版本的pytorch,匹配之后YOLOv5依然无法正常运行到想要的结果。就以上问题,本人在此发表一篇博客,希望对各位读者起到一定帮助,同时作为以后自己搭建的参考。
1、进行YOLOv5训练的第一步就是配置一个虚拟环境(默认读者已经安装了Anaconda和pycharm),这边我们点击下方红勾,输入代码
conda create -n yolo python=3.8.5
创建一个名为yolo,python版本为3.8.5的虚拟环境(如果名字不同请记住自己的环境名)
2、虚拟环境创建成功后,输入exit()退出虚拟环境,打开你从网上下载、用yolov5实现的小demo,这边我也可以给各位推荐一个我看过的up主的视频链接(视频内含其口罩demo下载)
手把手教你使用YOLOV5训练自己的目标检测模型_哔哩哔哩_bilibili
在你的demo下载完成后找到下载的文件夹,输入cmd,如下图:
选中输入cmd之后开启终端模式,如下图所示
在此路径下激活刚刚你创建的虚拟环境,输入代码为:
activate yolo
红框为你的虚拟环境名,表示此demo已经在虚拟环境下运行。
3、在正式的YOLOv5环境准备前,还需要一个关键步骤就是修改镜像源,修改代码如下:
conda config --remove-key channels
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
pip config set global.index-url https://mirrors.ustc.edu.cn/pypi/web/simple
直接将其复制到虚拟环境的终端内
到此准备完毕,开始YOLOv5的环境准备。
4、因为其他旧版本的都可搜到,本人在这就直接讲3060(其余3050系列显卡应该都一样)系列该如何搭配,避免读者们踩坑。
本人先使用的是pytorch 1.8.0版本的,正版链接:Previous PyTorch Versions | PyTorch,输入代码
修改完镜像源之后下载会很快,
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.3 -c pytorch
下载完成后如图,
再检查cuda是否符合要求,
python
import torch
print(torch.__version__)
print(torch.cuda.is_available())
看见false之后人是懵的,当时也不知道问题在哪,搜了之后才知道是安装的pytorch版本和显卡不匹配。
打开NVIDIA控制面板,查看驱动版本为466.92,对照CUDA 的配置表,发现之前的版本确实不匹配,只能删除整个虚拟环境进行重新下载,当然也可以不删除虚拟环境,利用pip uninstall torch 进行pytorch的卸载,但考虑到可能有残留文件造成干扰,本人选择删除虚拟环境。
看到此小伙伴们可能觉得有点坑,是的!你的想法没错,我当时搭建环境时安装了5次,从CPU跑--换GPU,cuda不匹配,删除修改,反反复复。
再查组件信息,发现个细节,NVIDIA已经告诉了应该使用什么版本的CUDA,前去官网PyTorch
复制蓝色(加入后面的 -c pytorch变成外网下载,速度很慢),下载完成后重复检测GPU是否合格,出现true,长舒口气~
附下载版本:(亲测有效)
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.3
5、接着就是下载一些其他必备的工具,如
pip install pycocotools-windows -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install -r requirements.txt
pip install pyqt5
输入dir ,确保你在当前文件目录下。全部安装好之后就开启你的训练,你以为到此结束?NO
6、输入 python detect.py --source data/images/bus.jpg --weights pretrained/yolov5s.pt
进行训练,发现报错!!!蓝色线为报错提示。
修改,进入红色线的文件路径,磁盘不同、虚拟环境名字不同,路径中间也会有差异一定
E:\StudyTools\Anaconda\conda\envs\yolo\Lib\site-packages\torch\nn\modules
打开此upsampling.py文件,将代码注释并增添一行,之后就可正常运行,出现结果。
再次执行代码,结果储存在第三条红线文件夹路径内,成功!!!撒花
之后就是修改为你的数据集进行代码上的各种修改,我也正在摸索,就不在此多谈了。
在此感谢b站up主肆十二-
22/4/16补充:如果跑val.py(验证集)时出现此类问题
是pytorch版本1.11与YOLOv5版本不兼容,需要降低pytorch版本(可能版主下载的YOLOv5demo模型不是最新版,导致pytorch不兼容)
22/10/20补充:
报错1
"OSError: [WinError 1455] 页面文件太小,无法完成操作" 的解决方案:将文件所在磁盘虚拟内存设置一下,具体如下:
注意:步骤6中有的小伙伴没有E盘(新买的、没加固态的笔记本只有CD两个盘)就选D盘同样操作!!
报错2:一串码,开头是An http error.....后面是')))',如下图
解决:
用此代码先生成condarc文件,因为Windows 用户无法直接创建名为 .condarc
的文件。
conda config --set show_channel_urls yes
接着找到condarc文件,双击打开,将镜像源中下面三行 https改成http
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
似乎不论清华源、阿里源、中科大源都可以,
注意!!!只改三行!!!
channels:- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorchcustom_channels:conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
之后重新下载pytorch就解决了。
这篇关于入手3060显卡真香,却不知如何配置YOLOv5环境?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!