你正在使用GPU进行CNN类模型训练,突然发生了内存溢出的错误,你可以通过哪些方式来进行解决?
Posted Data+Science+Insight
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你正在使用GPU进行CNN类模型训练,突然发生了内存溢出的错误,你可以通过哪些方式来进行解决?相关的知识,希望对你有一定的参考价值。
你正在使用GPU进行CNN类模型训练,突然发生了内存溢出的错误,你可以通过哪些方式来进行解决?
在GPU内存发生溢出(memory overflow)的时候、我们首先想到的肯定是增加GPU的资源,比如我们变成多GPU训练或者升级GPU的类型。
但是,现实情况下,资源往往是有限的。那么我们就得考虑别的方案来进行问题的解决:
1, 减少每个批次的大小(降低batch_size);
2, 在一层或者多层中使用较大的步幅(stride)来降低维度;
3,删除网络中的一层或者多层;
4,使用16位浮点数来代替32位浮点数进行运算;
5,在多个设备上分配CNN模型即多GPU训练;
参考:Hands-on-Machine-Learning-with-Scikit-Learn-Keras-and-TensorFlow
参考:
以上是关于你正在使用GPU进行CNN类模型训练,突然发生了内存溢出的错误,你可以通过哪些方式来进行解决?的主要内容,如果未能解决你的问题,请参考以下文章