Постановка задачи: на основании данных о продаже коммерческой недвижимости необходимо построить модель, прогнозирующую изменение цен.
- модель AutoWoE
- woe-скоры определяют вероятность принадлежности объекта к одной из 10 ценовых категорий (один из самых фажных факторов) 🔥
- аггрегаты по ценам объектов в радиусе 10 км от исследуемого
- geohash-фактор, построенный на широте и долготе
обучение K-means модели и добавление кластера как фактора
- кластеризация на широте и долготе
- кластеризация на osm-факторах
-
датасет 1 Среднемесячная начисленная зарплата наемных работников в организациях, у ИП и физических лиц. Информация о среднемесячной начисленной заработной плате наемных работников в организациях, у индивидуальных предпринимателей и физических лиц (среднемесячном доходе от трудовой деятельности). Квартальная оценка среднемесячной начисленной заработной платы наемных работников в организациях, у индивидуальных предпринимателей и физических лиц.
-
датасет 2 Оперативная информация. Оценка численности постоянного населения на 1 января 2021 г. и в среднем за 2020 г.
-
датасет 3 Просроченная задолженность по заработной плате работникам организаций, не относящихся к субъектам малого предпринимательства, по субъектам Российской Федерации c 2019 года.
-
датасет 4 лист t1_2. ЕСТЕСТВЕННОЕ ДВИЖЕНИЕ НАСЕЛЕНИЯ В РАЗРЕЗЕ СУБЪЕКТОВ РОССИЙСКОЙ ФЕДЕРАЦИИ за июль 2021 года.
- catboost на 5-фолдах
- на размеченных в ручную объектах (определено экспериментальным путем, в тестовой выборке представлены объекты только ручной разметки)
- на логарифмированный таргет (подобрано экспериментальным путем, ошибка в таком случае лучше минимизируется)
- на отобранных факторах (список факторов сокращен таким образом, чтобы модель на сокращенном списке факторов давала качество не хуже, чем на полном списке факторов)
- на подобранных гиперпараметрах (с помощью алгоритма optuna)
- кастомный лосс для кастомной метрики хакатона
- LightAutoML 🦙
- дополнительные источники данных и некоторые логические и гео-факторы
- добавление в обучающую выборку объектов не ручной разметки с нулевой ошибкой после обучения модели
отдельная номинация за публикацию решения до окончания соревнования
- генерация гео-факторов
- предобработка факторов этаж и улица
- обучение модели только на размеченных в ручную объектах
- скор на лидерборде 1.7563 → 1.4662 (с помощью небольших изменений полученного решения можно получить скор 1.4387 → 1.2662)
- requirements.txt - стандартный requirements для pip
pip install -r requirements.txt
-
additional_data - дополнительные данные с сайта Росстата
-
data - сгенерированные WOE-скоры
-
submit - содержит итоговый сабмит и сабмит для публичного решения
-
woe_features.ipynb - генератор WOE-скоров. Необходимо выполнить до запуска основного ноутбука
jupyter nbconvert --to notebook --execute woe_features.ipynb
- final_solution.ipynb - итоговый ноутбук с обучением основной модели и получением предсказания
jupyter nbconvert --to notebook --execute final_solution.ipynb
- public_solution.ipynb - ноутбук с публичным решением
jupyter nbconvert --to notebook --execute public_solution.ipynb
© Aleksey Podchezertsev, Mariia Samodelkina, 2021. Licensed under the MIT License. See LICENSE file for more details.