JCruan519 / EGE-UNet

(MICCAI23) This is the official code repository for "EGE-UNet: an Efficient Group Enhanced UNet for skin lesion segmentation".
Apache License 2.0
232 stars 22 forks source link

Other datasets cannot gradient descent #2

Open FengheTan9 opened 1 year ago

FengheTan9 commented 1 year ago

Hello, we use the BUSI dataset similar to single-object segmentation where the gradient cannot descent.

JCruan519 commented 1 year ago

Hello, the main focus of our model is to design an extremely small model for skin lesion segmentation, as indicated by the title of the paper. Therefore, we did not train or test the model on other datasets. Furthermore, in future work, we may improve and expand the modules proposed in EGE-UNet to adapt them to other broader medical image datasets.

zhaoyueyi commented 1 year ago

Hi, I also found this issue while using my own dataset, and I found all my conv-layer's weight became NaN after one loss backward. Then with torch.autograd.detect_anomaly() said groupConvBackward output NaN. After some useless debugging from my guesses, I found the dataset isic* used in the paper is kinda special. All its samples include positive area, which means there are always two classes in each mask. So I tentatively deleted all full-positive & full-negative samples of my dataset, then it works! But it's truly an issue that we will meet full-positive or full-negative sample in practical usage, I don't know if it can solve this situaltion. Thanks :)

zhaoyueyi commented 1 year ago

I filtered my dataset again after, and I found that conclusion above is not quite correct. It's dirty data leading to this issue. My dataset include some edge clips from each complete samples on a black canvas with angles, and these clips are full-zero matrix. I took back to my dataset the rest of those samples I deleted before, after deleting full-zero input samples, and it also works.