You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

YOLOv7训练10540张图像数据集时内存不足问题求助

解决YOLOv7 CPU训练内存不足问题

核心原因

你的报错是因为CPU训练时设置的batch-size过大,加上数据加载workers的额外内存开销,导致CPU内存不足以容纳当前批次的图像数据。

具体解决步骤

  • 大幅降低batch-size:CPU内存容量和带宽远不如GPU,你当前设置的--batch-size 160完全超出CPU承载能力。先尝试将batch-size降到8-16区间,若仍报错可继续降到4甚至2,示例命令:
    !python train.py --img 640 --batch-size 8 --epochs 1 --data "data\custom.yaml" --cfg "cfg\training\yolov7-custom.yaml" --weights yolov7.pt --name yolov7-custom --device cpu --workers 2 --hyp "data\hyp.scratch.custom.yaml"
    
  • 减少workers数量:--workers 5会同时开启多个数据加载进程,进一步占用内存。Windows系统建议设为0,其他系统可降到1-2。
  • 缩小输入图像尺寸:将--img 640改为416或320,减少单张图像的内存占用,代价是模型精度会有轻微下降。
  • 释放系统内存:关闭后台无关程序,给训练进程腾出更多可用内存。

长期最优方案

如果有可用GPU,优先改用GPU训练(修改参数--device 0),GPU的显存架构更适配大批次深度学习训练,能从根本上解决这类内存瓶颈问题。


内容的提问来源于stack exchange,提问作者Liferafter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 05:50:25