Ended 3 years ago
71 participants
6 submissions

LAMA: LightAutoML Summer School Of Code

Участникам предлагается провести исследование и реализовать новую функциональность для open-source фреймворка LightAutoML в области дистилляции, отбора признаков или реализовать произвольную задачу на свой выбор.

LightAutoML, или LAMA, это фреймворк для автоматического построения моделей, библиотека Python с открытым исходным кодом. Он разработан командой AutoML Sber AI Lab для эффективного и легкого решения различных ML-задач: бинарной / мультиклассовой классификации и регрессии.

Сейчас LightAutoML поддерживает табличные наборы данных с различными типами признаков: числовые, категориальные, даты, тексты, изображения и т. д.

Установка LightAutoML довольно проста:
pip install -U lightautoml 

LightAutoML содержит не только готовые пресеты для автоматического решения задач машинного обучения, но и представляет собой простой в использовании модульный конструктор для создания индивидуального пайплайна машинного обучения, в том числе кастомные модули для:

  • предварительной обработки данных,
  • расширенной генерации признаков,
  • схемы кросс-валидации (включая вложенные),
  • настройки гиперпараметров,
  • различные модели и методы построения композиций,
  • отчеты по обучению и профилированию моделей, чтобы проверить результаты модели и найти идеи, которые не очевидны из исходного набора данных.

В настоящее время LAMA поддерживает наборы данных, где каждая строка представляет собой объект со своими особенностями и целью. Многотабличные наборы данных и последовательности сейчас находятся в стадии разработки. Подробнее в репозитории на GitHub 

Команда подготовила для вас 3 трека-хакатона с интересными задачами и 1 соревнование для лучшего базового изучения фреймворка. Победителям каждого из трех хакатонов мы приготовили памятные призы:
1 место - Грант 80 000* рублей, свитшот и футболка с логотипом LAMA & Sber AI Lab
2 место - Футболка LAMA & Sber AI Lab
3 место - Термос с логотипом Sber
Приз зрительских симпатий: Термокружка  с логотипом Sber
*- вручение грантов победителям будет проводиться осенью, точная дата будет определена позже

Описание хакатонов

Соревнование 0: Изучай LightAutoML и улучшай наш бейзлайн!
Соревнование сделано специально, чтобы вы могли лучше узнать фреймворк перед стартом решения хакатонов. Это открытое in-class Kaggle-соревнование, где необходимо превзойти бейзлайн с LightAutoML, улучшив текущее решение. Успей принять участие до 6 августа и получить отдельные призы от команды разработчиков!

Хакатон 1: Дистилляция. 
Для ряда бизнес-задач требуются не только качественные, но еще и очень быстрые модели, способные работать в высоконагруженных системах. Чтобы добиться этого необходимо пройти два этапа: получить наиболее простую модель (не сильно потеряв при этом в качестве) и оптимизировать ее под инференс. В рамках темы Летней Школы мы предлагаем решить первый этап.

Несмотря на высокую скорость работы LightAutoML, в его основе лежит ансамбль моделей (LightGBM, CatBoost, Linear L2 x KFold) с продвинутой обработкой данных, не говоря уже про utilized сценарий использования. Данный пайплайн (модель учитель) можно дистиллировать к более эффективному (модель ученик): одной модели с простой (и быстрой) обработкой данных. При этом качество при таком подходе будет выше, чем просто обучение модели ученика в исходной постановке.

Результатом задачи может служить как полностью готовый аддон к LightAutoML, который сможет упростить произвольный AutoML, так и исследование по способам дистилляции для задач на структурированных данных.
Пример: дистилляция от AutoGluon

Хакатон 2: Отборщик признаков.
Одним из ключевых этапов построения модели является определение её признакового пространства. В него входит не только сбор данных и генерация признаков, но и отбор наиболее полезных из них. 
Благодаря этому можно добиться: 
1) удешевления сбора и хранения данных, 
2) ускорения времени предсказания, 
3) улучшения качества модели в ряде случаев. 

И здесь находится большой простор для исследования. Как проводить отбор признаков: до или после генерации; на основе важности или жадно; для конкретной модели или независимо от типа модели; последовательно прямым проходом, обратным или, может быть, генетическим алгоритмом? 

На подобные (и многие другие) вопросы Вам предстоит ответить, выбрав этот трек и расширив функциональность LAMA в задаче отбора признаков.

Хакатон 3: Произвольная задача.
LightAutoML является не только AutoML фреймворком, но и позволяет строить пайплайны под произвольную задачу. В рамках свободной темы предлагается развить функциональность LAMA в любом направлении: будь то пресет или аддон под ваши типовые задачи, улучшение функциональности работы с картинками, добавление красивых графиков в отчет, либо чего-то другого, - все ограничивается вашей фантазией!

Успехов!!!


Контакты: Alexander Ryzhkov (telegram, slack: @RyzhkovAlex), а так же задавай вопросы в нашем канале в Telegram 
ODS slack channel #tool_lama

Cookies help us deliver our services. By using our services, you agree to our use of cookies.