入手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的虚拟环境(如果名字不同请记住自己的环境名)

入手3060显卡真香,却不知如何配置YOLOv5环境?_第1张图片

 2、虚拟环境创建成功后,输入exit()退出虚拟环境,打开你从网上下载、用yolov5实现的小demo,这边我也可以给各位推荐一个我看过的up主的视频链接(视频内含其口罩demo下载)

手把手教你使用YOLOV5训练自己的目标检测模型_哔哩哔哩_bilibili

在你的demo下载完成后找到下载的文件夹,输入cmd,如下图:

入手3060显卡真香,却不知如何配置YOLOv5环境?_第2张图片

入手3060显卡真香,却不知如何配置YOLOv5环境?_第3张图片

选中输入cmd之后开启终端模式,如下图所示

入手3060显卡真香,却不知如何配置YOLOv5环境?_第4张图片

 在此路径下激活刚刚你创建的虚拟环境,输入代码为:

 activate yolo

红框为你的虚拟环境名,表示此demo已经在虚拟环境下运行。

入手3060显卡真香,却不知如何配置YOLOv5环境?_第5张图片

 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


直接将其复制到虚拟环境的终端内

入手3060显卡真香,却不知如何配置YOLOv5环境?_第6张图片

 到此准备完毕,开始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

入手3060显卡真香,却不知如何配置YOLOv5环境?_第7张图片

下载完成后如图,

入手3060显卡真香,却不知如何配置YOLOv5环境?_第8张图片

 再检查cuda是否符合要求, 

python

import torch

print(torch.__version__)

print(torch.cuda.is_available())

入手3060显卡真香,却不知如何配置YOLOv5环境?_第9张图片

看见false之后人是懵的,当时也不知道问题在哪,搜了之后才知道是安装的pytorch版本和显卡不匹配。

入手3060显卡真香,却不知如何配置YOLOv5环境?_第10张图片

 打开NVIDIA控制面板,查看驱动版本为466.92,对照CUDA 的配置表,发现之前的版本确实不匹配,只能删除整个虚拟环境进行重新下载,当然也可以不删除虚拟环境,利用pip uninstall torch 进行pytorch的卸载,但考虑到可能有残留文件造成干扰,本人选择删除虚拟环境。

看到此小伙伴们可能觉得有点坑,是的!你的想法没错,我当时搭建环境时安装了5次,从CPU跑--换GPU,cuda不匹配,删除修改,反反复复。

入手3060显卡真香,却不知如何配置YOLOv5环境?_第11张图片

入手3060显卡真香,却不知如何配置YOLOv5环境?_第12张图片

 再查组件信息,发现个细节,NVIDIA已经告诉了应该使用什么版本的CUDA,前去官网PyTorch

 入手3060显卡真香,却不知如何配置YOLOv5环境?_第13张图片

 复制蓝色(加入后面的 -c pytorch变成外网下载,速度很慢),下载完成后重复检测GPU是否合格,出现true,长舒口气~

入手3060显卡真香,却不知如何配置YOLOv5环境?_第14张图片

 附下载版本:(亲测有效)

conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.3

 入手3060显卡真香,却不知如何配置YOLOv5环境?_第15张图片

5、接着就是下载一些其他必备的工具,如

pip install pycocotools-windows -i https://pypi.tuna.tsinghua.edu.cn/simple

pip install -r requirements.txt

pip install pyqt5

入手3060显卡真香,却不知如何配置YOLOv5环境?_第16张图片

 输入dir ,确保你在当前文件目录下。全部安装好之后就开启你的训练,你以为到此结束?NO

6、输入 python detect.py --source data/images/bus.jpg --weights pretrained/yolov5s.pt

进行训练,发现报错!!!蓝色线为报错提示。

入手3060显卡真香,却不知如何配置YOLOv5环境?_第17张图片

 修改,进入红色线的文件路径,磁盘不同、虚拟环境名字不同,路径中间也会有差异一定

E:\StudyTools\Anaconda\conda\envs\yolo\Lib\site-packages\torch\nn\modules

入手3060显卡真香,却不知如何配置YOLOv5环境?_第18张图片

打开此upsampling.py文件,将代码注释并增添一行,之后就可正常运行,出现结果。

入手3060显卡真香,却不知如何配置YOLOv5环境?_第19张图片

再次执行代码,结果储存在第三条红线文件夹路径内,成功!!!撒花

入手3060显卡真香,却不知如何配置YOLOv5环境?_第20张图片

 之后就是修改为你的数据集进行代码上的各种修改,我也正在摸索,就不在此多谈了。

在此感谢b站up主肆十二-

22/4/16补充:如果跑val.py(验证集)时出现此类问题

入手3060显卡真香,却不知如何配置YOLOv5环境?_第21张图片

 是pytorch版本1.11与YOLOv5版本不兼容,需要降低pytorch版本(可能版主下载的YOLOv5demo模型不是最新版,导致pytorch不兼容)

22/10/20补充:

报错1

"OSError: [WinError 1455] 页面文件太小,无法完成操作" 的解决方案:将文件所在磁盘虚拟内存设置一下,具体如下:

注意:步骤6中有的小伙伴没有E盘(新买的、没加固态的笔记本只有CD两个盘)就选D盘同样操作!!

入手3060显卡真香,却不知如何配置YOLOv5环境?_第22张图片

 报错2:一串码,开头是An http error.....后面是')))',如下图入手3060显卡真香,却不知如何配置YOLOv5环境?_第23张图片

 解决:

用此代码先生成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/pytorch

custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

 之后重新下载pytorch就解决了。

你可能感兴趣的:(python,virtualenv)