3-D Brain Tumor Segmentation ERROR
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Roberto
am 24 Aug. 2019
Kommentiert: Shubham Baisthakur
am 14 Nov. 2023
Hi all,
I'm getting the following error running the 3-D Brain Tumor Segmentation example
Error using trainNetwork (line 165)
Incorrect loss type returned by 'forwardLoss' in the output layer. Expected to be 'single', but instead was 'gpuArray'.
The output layer is dicePixelClassification3dLayer. It seems like there's some kind of error in the definition of that custom layer. Converting to single the outputs of the layer methods didn't help, same error.
If it's helpful I'm using r2019a on windows 10 on a i9 9900k + 1080ti.
Any Help?
Thanks
6 Kommentare
Joss Knight
am 26 Aug. 2019
The type problem and the low memory warning go together. If you're getting the low memory warning, you have a real problem that needs addressing, otherwise training performance will be seriously affected. The fix for the type error will allow training to continue, but you'll still need to deal with the low memory issue.
Akzeptierte Antwort
Raunak Gupta
am 29 Aug. 2019
Hi,
The issue exposed here is related to low GPU memory. That being said, the following error should not be thrown. I have heard that this issue is known, and the concerned parties may be investigating further.
'Conversion to single from gpuArray is not possible'
A possible Workaround:
The attached patch will fix the error mentioned above, in the sense that the above error message will not be thrown if the training process errors out due to low GPU memory. Follow the steps below to apply the patch.
1) Save the attached zip file to your $MATLABROOT folder. The $MATLABROOT folder can be determined by running the ‘matlabroot’ command.
2) Using MATLAB, navigate to your $MATLABROOT folder by executing the command:
cd(matlabroot) in the MATLAB Command Window.
3) Execute the following command to unzip the file:
unzip('crop2dLayerPatch_18a_04_03_2018.zip')
You might need to start MATLAB as an administrator for this step.
4) Exit MATLAB and restart.
5) Execute the following command:
rehash toolboxcache
The GPU was running out of memory because the mini batch size is large and use up a lot of GPU memory. This value can be lowered by setting the "MiniBatchSize" parameter in the options that is passed to the "trainNetwork" function. I suggest you to start with 2 and if the problem doesn’t occur then you can increase the size in powers of 2.
The above should remove the error that is coming in trainNetwork.
5 Kommentare
Raunak Gupta
am 29 Aug. 2019
Hi,
The size of 3D Volumes are very large that is why the memory requirement is generally high. For using larger MinBatchSize you have to increase the size of GPU memory proportionally.
Hope this helps.
Shubham Baisthakur
am 14 Nov. 2023
Hello there,
Just wondering if this problem has been fixed? I am getting the same error with my custom layer defined for the sequence-to-sequence LSTM regression. I am not getting any "GPU low on memory warning". I am working on Matlab R2022b.
Thanks
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Image Data Workflows 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!