在 Sage Maker 中使用图像分类时出现内存不足错误



当使用内存高达 1TB 的 p2.xlarge 或 p3.2xlarge 尝试在训练作业中使用预定义的 SageMaker 图像分类算法时,我收到以下错误:

ClientError: Out of Memory. Please use a larger instance and/or reduce the values of other parameters (e.g. batch size, number of layers etc.) if applicable

我使用的是 450+ 张图像,我尝试将它们的大小从原来的 2000x3000 像素大小调整为 244x244 像素大小,再到 24x24 像素大小,并不断收到相同的错误。

我尝试调整我的超参数:num_classes、num_layers、num_training_samples、优化器、image_shape、检查点频率、batch_size和纪元。还尝试使用预训练模型。但是同样的错误不断发生。

会将其添加为评论,但我还没有足够的代表。

一些澄清问题,以便我可以有更多的背景:

您究竟是如何实现 1TB RAM 的?

  1. p2.xlarge服务器有 61GB 的 RAM,p3.2xlarge服务器有 61GB 内存 + 16GB 在特斯拉 V100 GPU 上。

您如何将图像存储、调整大小和摄取到 SageMaker 算法中?

  1. 内存错误似乎可疑,因为它在将图像缩小到 24x24 时仍然发生。如果您要将原始图像(分辨率为 2000x3000 的 450 张图像)调整为内存中对象,并且未就地执行转换(即:不创建新图像),则可能预先分配了大量内存,从而导致 SageMaker 训练算法引发 OOM 错误。

最新更新