Replies: 4 comments
-
How many epochs you need depends very much on the situation and the learning rate. Inspect your loss curves to see whether more epochs would do more good. If the training loss looks like it could still decrease with more epochs, then more training could help. But also keep watching the validation loss curve; if validation loss increases then you are beginning to overfit and will not gain generalizable performance with more training (and might even lose perforamance).
Maybe it's not helpful to treat "covid symptoms" as a separate segmentation class. A voxel in the left lung that shows covid symptoms is still a "left lung" voxel, and it's weird to penalize the model for the high probability it assigns to "left lung" for that voxel. One idea: You could split things up so that the lung segmentation is separate from finding covid symptoms. For example the output channels could be treated like this: One channel is the class probability (or log-probability) for being lung rather than background, and another channel is class probability for being part of a covid symptom region rather than not being part of a covid symptom region. (Notice these two channels defined this way would not be expected to sum to 1.) Then you could have two separate dice losses, one for each of the two problems: lung segmentation and covid symptom localization. This assumes your data is such that "covid symptom" always occurs within the lungs, so that taking the union of the covid symptom and the lung labels provides you with a complete lung label. |
Beta Was this translation helpful? Give feedback.
-
Thanks for the suggestion. I'm new to medical imaging. I train the model much longer, ~2000 epochs. The mean dice score achive ~0.73. I think the above coid-19 dataset is quite similar with this example, I tried to follow this one too but very disapointing results. https://github.com/Project-MONAI/tutorials/blob/main/3d_segmentation/swin_unetr_btcv_segmentation_3d.ipynb |
Beta Was this translation helpful? Give feedback.
-
Hi @dongyang0122 , Could you please help share some best practices for the training? Thanks in advance. |
Beta Was this translation helpful? Give feedback.
-
hi @Suzan009, could you please share your expectation of the average (validation) Dice score? As @ebrahimebrahim suggested, it would be helpful if you can share the training curves (e.g., training loss, validation Dice score). And I noticed two places in your scripts that might affect the performance.
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
I'm using Covid-19 CT segmentaiton data set,
and I am following this set up https://github.com/Project-MONAI/tutorials/blob/main/3d_segmentation/spleen_segmentation_3d.ipynb with some necessary changes.
The data contains 4 labels, ie. background, left lungs, right lungs and covid symtoms - data set links. Now, even I trained the model with 500 / 600 epochs, I couldn't get better results, dice mean score only around 0.60. Below is the code. Could you please suggest what things should I consider? Do I need to train much longer with more epochs (1000 / 2000). Or, is there (below code) config I set wrongly. Should I consider it multi-class or multi-label? What changes in code I need to get good score? Thank you.
Beta Was this translation helpful? Give feedback.
All reactions