- Pytorch 1.1.0
- segmentation-models ()
- python 3.7
- Установить библитеку albumentations
- Linux
Необходимо скачать данные, предоставляемые компанией Северсталь по ссылке.
Разархивируйте и положите данные в папку ../Input
.
Структура папки ../Input
:
test_images
train_images
sample_submission.csv
train.csv
Создайте ссылки(symlinks) на данные:
cd Kaggle-Steel-Defect-Detection/datasets/steel_data
ln -s ../../../Input/test_images ./
ln -s ../../../Input/train_images ./
ln -s ../../../Input/train.csv ./
ln -s ../../../Input/sample_submission.csv ./
Обучение классифицирующей модели:
python train_classify.py --model_name=<model_name> --batch_size=<batch_size> --lr=<lr> --epoch=<epoch>
Веса модели будут сохранены вот тут: checkpoints/<model_name>
Обучение сегментирующей модели:
python train_segment.py --model_name=<model_name> --batch_size=<batch_size> --lr=<lr> --epoch=<epoch>
Веса модели будут сохранены вот тут: checkpoints/<model_name>
В конце необходимо выбрать области на изображении для получения конченого ответа:
python choose_thre_area.py --model_name=<model_name> --batch_size=<batch_size>
Результаты будут сохранены вот тут: checkpoints/<model_name>
python create_submission.py
Замечание: Объединять модели в ансамбль можно с помощью следующего скрипта:
python utils/cal_thre_area_mean.py