/kaggle-rsna-intracranial-hemorrhage

Kaggle RSNA Intracranial Hemorrhage Detection - Top 5% solution (56/1345)

Primary LanguagePython

Top 5% solution (56/1345) based on an initial model developed by appian42

Requirements

Architecture (Single model)

Backbone Image size
se_resnext50_32x4d 512x512

Windowing

For this challenge, windowing is important to focus on the matter, in this case the brain and the blood. There are good kernels explaining how windowing works.

We used three types of windows to focus and assigned them to each of the chennel to construct images on the fly for training.

Channel Matter Window Center Window Width
0 Brain 40 80
1 Blood/Subdural 80 200
2 Soft tissues 40 380

Preparation

Please put ./input directory in the root level and unzip the file downloaded from kaggle there. All other directories such as ./cache, ./data, ./model will be created if needed when ./bin/preprocess.sh is run.

Preprocessing

Please make sure you run the script from parent directory of ./bin.

$ sh ./bin/preprocess.sh

preprocess.sh does the following at once.

Training

$ sh ./bin/train001.sh

train.001.sh uses se_resnext50_32x4d from pretrained-models.pytorch for training. One epoch probably takes 20,000 seconds to train with a single 1080ti.

Predicting

$ sh ./bin/predict001.sh
  • predict001.sh does the predictions and makes a submission file for scoring on Kaggle. Please uncomment the last line if you want to automatically submit it to kaggle through API.

  • Final score is an ensemble average of 10 model predictions based on 3rd and 4th epochs from 5 folds with clip=0.98