在pycharm中配置GPU训练环境(Anaconda)(yolov5)

目录

[1. 具体的配置过程:](#1. 具体的配置过程:)

[2. 在指定位置(路径)创建虚拟环境:](#2. 在指定位置(路径)创建虚拟环境:)

[3. conda常用命令:](#3. conda常用命令:)

[4: 在跑模型时候遇到的一些问题:](#4: 在跑模型时候遇到的一些问题:)

[4.1: conda添加python解释器找不到对应的python.exe文件](#4.1: conda添加python解释器找不到对应的python.exe文件)

[4.2: 报错"OSError: [WinError 1455] 页面文件太小,无法完成操作。"](#4.2: 报错“OSError: [WinError 1455] 页面文件太小,无法完成操作。”)

[4.3: 报错"CUDA out of memory. Tried to allocate 14.00 MiB](#4.3: 报错“CUDA out of memory. Tried to allocate 14.00 MiB)

[5: CUDA11.1版本出现NAN的问题原因及解决措施:](#5: CUDA11.1版本出现NAN的问题原因及解决措施:)

[6: 虚拟环境中的cuda和系统中cuda的区别:](#6: 虚拟环境中的cuda和系统中cuda的区别:)

[7: 对于动漫角色,训练效果不是很好 :](#7: 对于动漫角色,训练效果不是很好 :)


1. 具体的配置过程:

手把手教你Anaconda安装虚拟环境配置yolov5

2. 在指定位置(路径)创建虚拟环境:

1:使用命令查看当前拥有的虚拟环境

bash 复制代码
conda info --envs


2:在指定目录下创建新的虚拟环境,输入命令:

bash 复制代码
conda create --prefix=C:/ProgramData/Anaconda3/envs/pytorch python=3.8

其中C:/ProgramData/Anaconda3/envs 是创建的目录所在位置;/pytorch是所创建的环境的名称 python=3.8是创建的python的版本。

可以看到,验证确实创建在我们想要的位置

OK啦,创建成功:

3. conda常用命令:

常用命令大全

  • 删除虚拟环境的代码如下(yolo5表示env名字)

    conda env remove -n yolo5

  • 激活虚拟环境

cpp 复制代码
conda activate F:\Anaconda\envs\yolo5

4: 在跑模型时候遇到的一些问题:

4.1: conda添加python解释器找不到对应的python.exe文件

网上有很多解决方法,我参考了这个:(也是用GPU训练的,如果解释器是anaconda虚拟环境中的python,那效果应该是一样的)

  • 直接在Virtualenv Enviroment中找conda的虚拟环境里的python.exe就可以

  • 直接在System Environment中找conda的虚拟环境就可以

4.2: 报错"OSError: [WinError 1455] 页面文件太小,无法完成操作。"

这个好像和给cuda虚拟环境所在盘分配的虚拟内存有关:

具体可以参考下边这个博客:

页面文件太小,无法完成操作。

4.3: 报错"CUDA out of memory. Tried to allocate 14.00 MiB

这个应该是训练的模型所设置的batch-size太大了,GPU的显存满足不了

把batch-size调小一些,如设置常用的256 128 64 32 16等,我是把yolov5中的16改为了8,然后问题就迎刃而解了。

最后附上使用GPU训练yolov5模型成功的截图:

(之前用CPU跑同样规模的数据集跑了2个小时,用了GPU只需要16分钟,不得不说真香)

显卡配置:(有钱一定换块好的)

5: CUDA11.1版本出现NAN的问题原因及解决措施:

我在完成上述步骤后,出现了一些错误,具体表现为如下形式:

该问题出现的原因在于CUDA版本较高(11.1),最好采用10.2的CUDA版本 ,只需要在虚拟环境中安装10.2的cuda即可,不需要在系统中重新安装。

解决方法可以参考下述博客:

YOLOv5s GTX 1660 Ti训练时出现,box,obj,cla全是nan的问题P、R、mAP都是0,Pytorch和cuda、cudnn版本不对

GTX 16XX系显卡 yolov5训练结果出现NAN的问题

yolov5 训练自己的数据集后,检测不到目标的解决办法

此外,也可能是如下问题导致的:

服务器上训练好的yolov5数据集在自己电脑上什么都检测不出来(已解决)

6: 虚拟环境中的cuda和系统中cuda的区别:

https://blog.csdn.net/qq_42744739/article/details/118640226

7: 对于动漫角色,训练效果不是很好 :

原本想训练一个自动识别视频中动漫角色(九柱)的模型,但是拿 恋柱------甘露寺蜜璃和水柱------富冈义勇做了小实验(每个选取了各40张图片,其中3张作为验证集),在batch_size=8的情况下epoch=200,最后只能实现识别这两个人物不会出太大问题,但是你喂给它一张猫或狗或者其他柱可能会识别错误(可能是因为数据集太小的缘故,同时动漫人物本身识别也较为困难)

大家如果有开源的鬼灭之刃数据集,可以考虑分享给bz一下,嘿嘿;有问题欢迎在评论区留言!

相关推荐
数据小爬虫@2 小时前
深入解析:使用 Python 爬虫获取苏宁商品详情
开发语言·爬虫·python
健胃消食片片片片2 小时前
Python爬虫技术:高效数据收集与深度挖掘
开发语言·爬虫·python
ℳ₯㎕ddzོꦿ࿐5 小时前
解决Python 在 Flask 开发模式下定时任务启动两次的问题
开发语言·python·flask
CodeClimb5 小时前
【华为OD-E卷 - 第k个排列 100分(python、java、c++、js、c)】
java·javascript·c++·python·华为od
一水鉴天5 小时前
为AI聊天工具添加一个知识系统 之63 详细设计 之4:AI操作系统 之2 智能合约
开发语言·人工智能·python
Channing Lewis5 小时前
什么是 Flask 的蓝图(Blueprint)
后端·python·flask
B站计算机毕业设计超人5 小时前
计算机毕业设计hadoop+spark股票基金推荐系统 股票基金预测系统 股票基金可视化系统 股票基金数据分析 股票基金大数据 股票基金爬虫
大数据·hadoop·python·spark·课程设计·数据可视化·推荐算法
觅远6 小时前
python+playwright自动化测试(四):元素操作(键盘鼠标事件)、文件上传
python·自动化
ghostwritten7 小时前
Python FastAPI 实战应用指南
开发语言·python·fastapi
CM莫问7 小时前
python实战(十五)——中文手写体数字图像CNN分类
人工智能·python·深度学习·算法·cnn·图像分类·手写体识别