After performing dismally in the Kaggle RSNA Intracranial Haemorrhage Competition thanks to a pig-headed strategy relying on brute force (via an expensive cloud instance) and too little thinking I resolved to see what the winners had done right. This series posts will cover what I learned looking at the code shared by the 2nd placed team, who’s solution I found both approachable and innovative, hope you enjoy.
2nd Place Solution from team NoBrainer
In the next few posts I’ll dive into the 2nd place solution by team NoBrainer (Darragh Hanley [@darraghdog] & Dmitry Larko [@dmitrylarko]) and highlight what I learned from digging into their code. I chose this as it was one of the top solutions that I felt didn’t overly rely on (too) large ensembles and also both a convolutional model and sequence to sequence model as part of the solution, something I had not studied in depth in relation to computer vision and was something I thought was pretty cool.
In the next post I will dive into their code, but first check out Darragh and Dmitry’s work here for yourself:
Super Useful Kernels
In addition there was some really excellent kernels shared for this competition.
Jeremy Howard’s: fastai2 kernels series
These 5 kernels were invaluable for explaining both the basics and nuances of dealing with DICOM files, cleaning the data, visualisation, what to watch out for, understanding how best to normalize the data and training and submitting a model. It was all done with the v2 version of fastai which was under heavy development at the time of the comp which provided a great intro into the fastai2 api. Loads and loads of learnings here.
Marco Vasquez E's: Basic EDA + Visualisation
Great intro kernel around intracranial haemorrhages and dataset exploration and visualisation
Allunia's: RSNA IH Detection - EDA
More great exploration of the dataset and embedded youtube videos for explaining intracranial haemorrhages and windowing
David Tang’s: See like a Radiologist with Systematic Windowing
A really nice kernel written by a doctor giving more explanations of haemorrhages and medical imaging
In my next post I’ll cover loading and processing the DICOM files