Yolov8模型训练报错:torch.cuda.OutOfMemoryError

news/2024/7/11 1:20:14 标签: YOLO, 人工智能, python, 深度学习, pycharm

最近在使用自己的数据训练Yolov8模型的时候遇到了很多错误,下面将逐一解答。

问题报错

在训练过程中红字报错:torch.cuda.OutOfMemoryError: CUDA out of memory.

后面还会跟着一大段报错:

Tried to allocate XXX MiB (GPU 0; XXX GiB total capacity; XXX GiB already allocated; 0 bytes free; XXX GiB reserved in total by PyTorch)

If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.

See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

报错信息如下图:

报错信息

原因分析

其实这是因为训练时读取的图像数据太大,超出了GPU的显存。

可以看到我这台电脑是GTX2060,显存6G,读取的图像信息已经到了5.17G,无法再进行模型训练。

解决方案

在遇到此类问题时,我们可以调整两个部分的代码。

首先,yolov8的模型训练代码如下:

python">from core.ultralytics import YOLO
model = YOLO("runs/detect/train_2048_91_200/weights/last.pt")  # 读取断点模型训练

# # Train the model
results = model.train(data="./ultralytics/cfg/datasets/my_img.yaml", epochs=1, imgsz=2048, batch=5, save_period=-1)

1、调整imgsz

此处,我们可以修改:model.train()方法中的,imgsz这个参数。

可以看到博主这边使用的是2024分辨率进行训练,主要原因还是因为项目的图像较大,为5120*5120图像,同时需要做小目标识别。因此设置的比较大。

但是大家可以根据自己的实际情况来调整这个参数的大小,如果本身需要检测的目标比较大,那大家可以尝试将此参数调小一些。

2、调整batch

一般来说显存超了,大多时候会选择调整batch这个参数,虽然调整后会一定程度影响模型的泛化能力,容易导致过拟合,但在现有条件下两害相权取其轻,只能调小这个参数了。

调整batch后

博主这边选择不调整imgsz,原因上面已经说了。

batch调整至4之后,再次训练。

情况如下:

成功训练截图

完美跑通!


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

相关文章

以技术创新引领行业发展,飞凌嵌入式获双项省级荣誉

近日,飞凌嵌入式荣获「2023年河北省专精特新示范企业」以及「第五批省级制造业单项冠军企业」两项殊荣。这两项荣誉的获得,是对飞凌嵌入式在专业技术领域与创新能力的高度认可,荣誉的背后,凝聚着飞凌嵌入式无数次的研发探索与对创…

Python练手算法

Python练手算法 实例02实例03实例04实例05实例06实例07实例08实例09实例10实例11实例12实例13实例14实例15实例16实例17实例18实例19实例20实例21实例22实例23实例24实例25实例26实例27实例28实例29实例30实例31实例32实例33实例34实例35实例36实例37实例38实例39实例40实例41…

you-get - 使用代码下载视频

文章目录 关于 you-get代码调用报错处理 源码简单分析 关于 you-get github : https://github.com/soimort/you-get you-get 是一个有名的开源视频下载工具包,这里不赘述。 代码调用 you-get 提供了命令行的方式下载视频,这里介绍使用 Python 调用源代…

电脑恢复出厂设置在哪里?我来告诉你

在电脑使用中,有时候出现了一些问题,比如系统崩溃、性能下降、病毒感染或者想要将电脑彻底清空以出售或赠予他人。这时,恢复出厂设置成为一个有效的解决方案。可是恢复出厂设置在哪里呢?本文将介绍三种不同的方法来恢复电脑出厂设…

【Python爬虫】网页抓取实例之淘宝商品信息抓取

之前我们已经说过网页抓取的相关内容 上次我们是以亚马逊某网页的产品为例 抓取价格、品牌、型号、样式等 该网页上价格、品牌、型号、样式等 都只有一个 如果网页上的目标内容 根据不同规格有多个 又该怎么提取呢? ▼如下图所示 当机身颜色、套餐、存储容量…

金蝶云星空下游单据的操作控制上游单据的状态转换开发方案

文章目录 金蝶云星空下游单据的操作控制上游单据的状态转换开发方案说明方案设计开发实现售后单增加变更状态反写规则反写状态:在保存配置了反写状态保存后删除,反写规则不生效,需要在删除操作配置插件根据关联关系进行反写生效操作&#xff…

随机链表的复制

题目描述 给你一个长度为n的链表,每个节点包含一个额外增加的随机指针random,该指针可以指向链表中的任何节点或空节点。构造这个链表的深拷贝。 深拷贝应该正好由n个全新节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的nex…

商越科技:渗透测试保障平台安全,推动线上采购高效运转

商越科技是数字化采购解决方案提供商,在同赛道企业中始终保持前列。商越科技通过自主研发的智能采购中台、SaaS应用及运营服务等为企业搭建专属的互联网采购平台,帮助企业实现采购数字化以及智能化转型,提高工作效率、降低采购成本。 打造数字…