Skip to content

PyTorch implementation of U-Net image segmentation for Kaggle Data Science Bowl 2018 competition

License

Notifications You must be signed in to change notification settings

bvezilic/Nuclei-segmentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nuclei-segmentation

Starter PyTorch implementation of U-Net (with skip-connections) image segmentation for Kaggle Data Science Bowl 2018 competition. Link to competition: https://www.kaggle.com/c/data-science-bowl-2018

Insights

In the competition, most of the participants used various U-Net architectures. Here are some of the interesting takeaways from the competition:

Modified train data

Winners of the competition released their solution and while they also used U-Net architecture, the main difference in their approach was that they manually(?) added increased loss to the area in-between nuclei that are nearby or are overlapping.

labelled_loss

Image 1. Example of how the red marked areas represent part of the image of increased loss by some factor.

Overfitting

Another issue that popped up was that it's really easy to overfit on it, even though a simple base U-Net model was used.

Image 2. Comparison of several models prediction (different training epochs) where mask (training label) was wrongly created

Generalization

While examining predicted samples, there was an indication that the models only learns how to differentiate white from black pixels. So I tested that...

Conclusion

Yeah, there are some issues with current models and the training procedure... Probably adding regularization (dropout?) will somewhat alleviate the overfitting issues. As for generalization goes, it's difficult to say... Several things can be tried out: (1) More sophisticated creation of masks (each nucleus is labeled separately so when the masks are merged, overlapping nuclei lose shape), (2) some generalization will be obtained with reducing overfitting, (3) adding loss as the winners of the competition did or (4) data augmentation could help as well.

About

PyTorch implementation of U-Net image segmentation for Kaggle Data Science Bowl 2018 competition

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published