Соревнование алгоритмов классификации лесных пожаров по данным о температурных аномалиях со спутников.
https://wildfire.sberbank.ai/competition
https://github.com/sberbank-ai/mchs-wildfire
Catboost, только тренировочные данные (Public LB 0,9060).
Catboost, тренировочные данные и данные о погоде (Public LB 0,9183).
Catboost, тренировочные данные, данные о погоде и географические данные из OpenStreetMap (Public LB 0,9202).
Тренировочный датасет скачиваем вручную с сайта https://wildfire.sberbank.ai/competition.
В архиве будет два файла - wildfires_train.csv
и wildfires_check.csv
, распаковываем их в папку data
.
Дополнительно можно использовать наборы открытых данных.
Скрипт download_ncep.sh
в папке data
скачает исторические данные о погоде с сайта NCEP Reanalysis 2.
В файле russia.osm.gpkg.gz сохранена часть карты OSM в формате GeoPandas. Этот файл распространяется под лицензией ODbL, как производный от OSM.
Он сформирован скриптом preprocess_osm.py
из дампа карты России с сайта GeoFabric (~2,5 Gb).
Чтобы пересоздать его:
- скачайте дамп карты России в формате PBF с сайта GeoFabric (~2,5 Gb)
- поместите его в папку
data
- запустите скрипт
preprocess_osm_in_docker.sh
(работает долго, 1-2 часа)
train_in_jupyter.ipynb
- тренировка в блокноте.
train.py
- то же самое в формате скрипта.
train_in_docker.sh
- запускает train.py
в docker-контейнере.
predict.py
- скрипт для предикта.
test_predict.sh
- проверка работы predict.py
на контрольных данных в контейнере.
pack_submission.sh
- упаковывает нужные файлы в submission.zip
для загрузки на сайт.
Решение запускается в контейнере. Организаторы предлагают использовать образ sberbank/python
.
В этом образе установлена версия tensorflow
, собранная с использованием команд современных процессоров Intel.
При локальном тестировании на менее современных процессорах возникает ошибка:
The TensorFlow library was compiled to use AVX2 instructions, but these aren't available on your machine.
Ошибка возникает даже без использования tensorflow
- при запуске python
, pip
, conda
, т.е. удалить
или переустановить его цивилизованными способами невозможно.
Поэтому скрипты в этом репозитории используют образ efimov/wildfire
, который собирается из этого Dockerfile.
Он основан на образе kaggle/python
со следующими изменениями:
- пакет
tensorflow
заменён на стандартный изconda
- добавлены/обновлены некоторые пакеты.