3-D Brain Tumor Segmentation ERROR
2 次查看(过去 30 天)
显示 更早的评论
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 个评论
Joss Knight
2019-8-26
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.
采纳的回答
Raunak Gupta
2019-8-29
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 个评论
Raunak Gupta
2019-8-29
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
2023-11-14
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
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Data Workflows 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!