首页 > 解决方案 > “分页文件太小,无法完成此操作”尝试训练 YOLOv5 对象检测模型时出错

问题描述

我有大约 50000 张图像和注释文件用于训练 YOLOv5 对象检测模型。我已经在另一台计算机上只使用 CPU 训练了一个模型,但它需要的时间太长,所以我需要 GPU 训练。我的问题是,当我尝试使用 GPU 进行训练时,我不断收到此错误:

OSError: [WinError 1455] The paging file is too small for this operation to complete

这是我正在执行的命令:

train.py --img 640 --batch 4 --epochs 100 --data myyaml.yaml --weights yolov5l.pt

CUDA 和 PyTorch 已成功安装并可用。以下命令安装没有错误:

pip3 install torch==1.10.0+cu113 torchvision==0.11.1+cu113 torchaudio===0.10.0+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html

我在网上发现其他人有类似的问题,并通过num_workers = 8num_workers = 1. 当我尝试这个时,训练开始并且似乎超过了the paging file is too small出现错误的点,但几个小时后崩溃了。根据这段视频( https://www.youtube.com/watch?v=Oh6dga-Oy10 ),我还增加了 GPU 上可用的虚拟内存,但也没有用。我认为这是内存问题,因为有时它会崩溃,我会从计算机收到内存不足的警告。

任何帮助将非常感激。

标签: pythongpuobject-detectionyolov5

解决方案


所以我设法解决了我的具体问题,并认为在这里发布答案可能对其他人有所帮助。基本上,我认为我没有足够的内存。我之前使用的是 8 GB,我已经升级到 32 GB,它工作正常。

正如我在上面的问题中所写,我认为这是一个内存问题,我让它在另一台仅使用 CPU 的计算机上工作。我还注意到,当训练开始时,RAM 的使用量会激增。这家伙还解释了在大型数据集上训练深度学习模型时 RAM 的重要性: https ://timdettmers.com/2018/12/16/deep-learning-hardware-guide/

希望这可以帮助其他有同样问题的人。


推荐阅读