trainNetwork 関数で学習させると、メモリ不足のエラーが出るのはなぜですか?
9 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
MathWorks Support Team
am 27 Aug. 2019
Bearbeitet: MathWorks Support Team
am 23 Apr. 2024
trainNetwork 関数を用いて CNN(深層ニューラルネットワーク)による学習をさせると、以下のエラーが発生します。
ERROR: エラー: nnet.internal.cnngpu.convolveForward2D
デバイスのメモリが足りません。GPU で利用可能なメモリの詳細を表示するには、'gpuDevice()' を使用します。問題が解決しない場合は、'gpuDevice(1)' を呼び出して GPU をリセットしてくださ
い。
ERROR: エラー: nnet.internal.cnn.layer.FullyConnected/forward (line 73)
Z = nnet.internal.cnngpu.convolveForward2D(...
エラー: nnet.internal.cnn.SeriesNetwork/forwardPropagation (line 133)
[layerOutputs{currentLayer}, memory{currentLayer}] = this.Layers{currentLayer}.forward( layerOutputs{currentLayer-1} );
エラー: nnet.internal.cnn.SeriesNetwork/gradients (line 73)
[layerOutputs, memory] = this.forwardPropagation(data);
エラー: nnet.internal.cnn.Trainer/train (line 58)
[gradients, miniBatchLoss, miniBatchAccuracy] = net.gradients(X, Y);
エラー: trainNetwork (line 92)
trainedNet = trainer.train(trainedNet, dispatcher);
エラー: samp (line 26)
net = trainNetwork(XTrain,TTrain,layers,opts);
Akzeptierte Antwort
MathWorks Support Team
am 23 Apr. 2024
Bearbeitet: MathWorks Support Team
am 23 Apr. 2024
GPU のメモリサイズが小さいことが予想されます。
trainNetwork 利用時にGPU のメモリを増やす代わりに、MiniBatchSizeオプションの値を調整することをご検討ください。
この値を小さくするとメモリの消費を小さくすることができます (性能も変わります)。
GPU のメモリを増やす以外の方法として、trainNetworkの関数を呼び出す際、'MiniBatchSize' オプションの値を調整することをご検討ください。
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Parallel and Cloud finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!