踩了几天的坑,自带的依赖默认安装的是CPU版本的torch和orchvision,训练时候不要太慢,搭建好环境我4060的显卡比i9-13900hx训练快20倍。
这里我们选择得是:cuda 12.1 + torch-2.3.0 + torchvision-0.18.0
!!!这里一定要注意,安装的版本必须都是带GPU的版本,torchvision也是!!!
一、安装Anaconda3
我用的版本是Anaconda3-2023.09,其实哪个版本都差不多我们只需要用到里面的conda,安装好Anaconda3后需要设置系统环境变量Path:
D:\Dev\anaconda3
D:\Dev\anaconda3\Scripts
D:\Dev\anaconda3\Library\mingw-w64\bin
D:\Dev\anaconda3\Library\bin
这里D:\Dev\anaconda3 为我的Anaconda3安装路径,设置好环境变量切记控制台输出 python–version 看看是不是输出Anaconda对应版本,如果出现出现问题检查环境变量,输入 where python:
这里看到有俩个路径,我们得在Path环境变量里面把Anaconda3路径移动到C:\Users\Administrator\AppData\Local\Microsoft\WindowsApps上面
接下来命令行或者Anaconda3得GUI窗口建conda环境,命令行下输入:
conda create -n yolo5_py38 python=3.8 #//创建名为yolo5_py38,python版本3.8的虚拟环境
二、安装cuda
https://zhuanlan.zhihu.com/p/672526561
我们这里下载 cuda 12.1 :https://developer.nvidia.com/cuda-12-1-0-download-archive,选择系统下载安装即可,安装好了检查环境变量有没有更新上去(这个一般不会出现意外)。
三、安装torch和torchvision
以防出错可以跟着我配置环境走,python版本可以选3.8和3.11都行,但是torch和torchvision必须选择相对于的版本,本文以python 3.8为例:
默认源下载太慢,我们去阿里源手动下载:https://mirrors.aliyun.com/pytorch-wheels/cu121/
下载时选择 torch-2.3.0+cu121-cp38-cp38-win_amd64.whl + torchvision-0.18.0+cu121-cp38-cp38-win_amd64.whl ,千万不要下载错了。
四、配置环境
1.先去github下载好yolov5,下载解压后用VS Code打开文件夹,在 requirements.txt 里
torch>=1.8.0
torchvision>=0.9.0
ultralytics>=8.0.232
这三个依赖删了或者注释了,前俩个默认是CPU版本,ultralytics在安装时会把CPU版的torch和torchvision自动安装(都是坑!)
我们切到train.py,在VS Code里 右下角选择解释器,里面选择我们之前搭建好的conda的python 3.8环境yolo5_py38,选择好之后重新打开VS Code,输入python --version 看看是不是输出正确的python版本。
接下来在终端窗口输入:
pip install requirements.txt
pip install (下载路径)\torch-2.3.0+cu121-cp38-cp38-win_amd64.whl
pip install (下载路径)\torchvision-0.18.0+cu121-cp38-cp38-win_amd64.whl
全部安装好后记得 pip list 查看安装的依赖库,如果显示:
torch和torchvision版本后带CU121即是安装成功,我们再在train.py:
parser.add_argument("--device", default="2", help="cuda device, i.e. 0 or 0,1,2,3 or cpu")
里修改,我是笔记本,有2快CPU,default 填2,即可愉快的用GPU进行训练啦!
训练开始时出现GPU名即代表成功:
如果训练过程中出现错误一般都是torch和torchvision安装的版本对应不上,或者一个是CPU版一个是GPU版,要仔细检查环境!!
如果训练过程中出现错误一般都是torch和torchvision安装的版本对应不上,或者一个是CPU版一个是GPU版,要跟着我配置走,
torch-2.3.0 + torchvision-0.18.0如果GPU不支持cuda 12.1还可以安装cuda 11.8版本,任意搭配一一对应即可!