Why is there NaN in the weights of Convolutional layer in the deeplab V3+ semantic segmentation network

3 views (last 30 days)
however, I want to use the deeplab to segmentate the resomte sensing images. but it has four channel so I change the first conv layer's size from 3 to 4.
It did works, but the accuracy did not increase. I stoped the training, finding that the weights in the first conv layer became NaN. The loss is not NaN, I feel so confused that why this happens?
I have tried several times, all this problem occured.

Answers (1)

Ganesh Regoti
Ganesh Regoti on 30 Jul 2019
Assuming that you are using resnet18 pretrained network, the model is trained with a layer size of 3 and it expects 3 channeled input.
If the size of convolution layer is changed then the model must be retrained to adjust the weights of the layers in the network.
Deeplab uses SoftMax which could be a reason for the output not having any zeros or Nans.

Categories

Find more on Image Data Workflows in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!