конкурсы по машинному обучению

Конкурсы по машинному обучению

Подведены итоги чемпионата ML Boot Camp 8 / SNA Hackathon. Поздравляем победителей!

Сегодня, 7 февраля, мы рады открыть новый сезон чемпионатов 2019 года. И начнём с уже восьмого соревнования по машинному обучению и анализу данных, проводимого на специализированной платформе ML Boot Camp (наш аналог Kaggle) — SNA Hackathon, или ML Boot Camp 8 (как вам удобнее).

Мы рады сообщить, что Telecom Data Cup завершен, и мы готовы поздравить победителей!

Подробности внутри.

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

Подробности внутри.

Чемпионат идет уже неделю, и мы, внимательно посмотрев на обсуждения и решения сообщества, приняли решение добавить данных в исходный датасет.

Подробности внутри.

Начали! Сегодня на нашей платформе стартовал чемпионат Telecom Data Cup совместно с компанией «МегаФон». Задача участников чемпионата — проанализировать массив данных и с помощью известных им методов машинного обучения предсказать, насколько абоненты удовлетворены качеством связи телеком-оператора.

Уже 9 ноября на нашей платформе стартует новое соревнование. На этот раз мы запускаем чемпионат под тайтлом Telecom Data Cup совместно с компанией «МегаФон».

25 июня, стартует ML Boot Camp VI с задачей «Прогноз отклика аудитории на интернет-опрос»

В этот раз мы предлагаем вам погрузиться в темную пучину маркетинга: в рамках очередного соревнования ML Boot Camp вы сможете спрогнозировать поведение пользователей в одном из масштабных маркетинговых исследований.

Неделю назад завершился пятый конкурс, который мы проводили совместно с Insilico Medicine и Министерством Здравоохранения республики Казахстан.

Результаты под катом

Итак, как и было обещано, мы разыграли три бесплатные путевки на конференцию «Технологии больших данных».

Повезло следующим нашим участникам: Сергею Смирнову, Ярославу Черкашину и Роману Куцеву. В ближайшее время ребята получат письмо с дальнейшими инструкциями.

Все остальные всё ещё имеют возможность получить скидку 20%, пройдя по этой ссылке и используя промокод «mlbootcamp»

С 15 июня по 15 июля пройдет чемпионат ML Boot Camp V, имеющий название AgeHack. В этот раз соревнование организовано компанией Mail.Ru Group совместно с Insilico Medicine в сотрудничестве с Республиканским центром электронного здравоохранения при Министерстве здравоохранения Республики Казахстан. Чемпионат посвящен поиску решения для борьбы со старением.

Завершён чемпионат ML Boot Camp IV с задачей c секретом. Итоговые финальные результаты.

21 апреля стартует Machine Learning Boot Camp IV — уже четвёртое состязание по машинному обучению и анализу данных от Mail.Ru Group!

Соревнование проходит онлайн в течение одного месяца, и необходимо решить всего лишь одну задачу. Приглашаем вас принять в нём участие!

Лучшие участники будут приглашены в Mail.Ru Group для собеседования на позиции, связанные с анализом данных!

Завершился этап «По мотивам онлайн-игр» ML Boot Camp III.

Чемпионат MLBootCamp III стартовал и будет проходить с 15 февраля по 15 марта. Machine Learning Boot Camp III — третье состязание по машинному обучению и анализу данных от Mail.Ru Group. Лучшие из лучших будут приглашены в Mail.Ru Group для собеседования на позиции, связанные с анализом данных.

Друзья, футболки, к сожалению, всё ещё в печати. Но заявленные призы для ТОП10 мы уже готовы выдавать. Каждый из победителей получит письмо, в котором мы договоримся о способе пересылки. Естественно, финалисты при желании смогут забрать призы в нашем офисе на Ленинградском проспекте.

Друзья! Валидация решений нами завершена, итоговый список финалистов вы можете увидеть под катом

Первый Открытый Контест по машинному обучению завершился, все решения были пересчитаны по 60% финальной эталонной выборки. С чем мы вас (и нас) и поздравляем!

Итак, с начала открытого контеста прошло около двух недель, за это время в чемпионате успели поучаствовать чуть больше 250 человек, которые прислали нам порядка 5 тысяч решений. Всё идёт отлично, мы рады, и надеемся, что и вы рады тоже 🙂

Принимая во внимание количество участников, мы решили ввести дополнительные призы! Итак:

Дерзайте! Времени еще более чем достаточно, чтобы вырваться и в ТОП50, и в ТОП10 😉

На платформе MLBootcamp открылся новый контест по машинному обучению. Участникам предлагается решить одну комплексную задачу, в течение месяца и загрузить свое решение на сайт. Обладатели лучших результатов смогут завоевать всеобщее признание и полезные призы (три iPod shuffle и семь жестких дисков на 500Gb уже ждут своих новых владельцев), а также получат возможность присоединиться к команде Mail.ru. Эксперты могут улучшать свой алгоритм на протяжении всего контеста, обновляя решение и наблюдая за прогрессом в режиме online (количество попыток ограничено пятью в день). Для новичков в области ML доступна обширная обучающая статья, которая позволит решить задачу даже тем, кто обладает лишь базовыми знаниями.

Друзья, что же означают все эти нолики и единицы на самом деле?

Наверное, кому-то, кто пробовал решить эту задачу, появление нулей и единиц в предоставленных данных могло показаться просто случайным. Мы должны признаться: почти так оно и есть! Нам было интересно, с какой точностью методами машинного обучения можно научиться определять источник случайных последовательностей и смогут ли участники конкурса, проанализировав данные, провести рациональный отбор признаков.

Друзья, вот и подошел к концу первый студенческий контест по Machine Learning!

Хотим поблагодарить за участие!

До 20 января 00:00 мы вышлем письма с просьбой отправить решения для проверки. После чего объявим результаты контеста.

Разбор задачи и ее содержательную постановку мы опишем в статье. Ссылка на статью будет опубликована на этом сайте.

Будем рады обратной связи с идеями улучшения платформы, спасибо! Мы скоро вернемся:)

Друзья, сегодня мы запускаем первый студенческий контест по Machine Learning!

Источник

📊 Соревнования по Data Science и Machine Learning: сравнительно простой путь в профессию

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Профессия Data Scientist подразумевает коллективную работу над проектами. Для этого необходимы навыки коммуникации и решения реальных задач. Один из лучших способов их развить – участие в соревнованиях. Оно позволяет не только обновить портфолио и попробовать себя в различных областях науки о данных, но и научиться эффективно взаимодействовать с другими специалистами. Предлагаем вниманию читателей подборку актуальных соревнований по Data Science и Machine Learning, на которые стоит обратить внимание.

Data Science

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

HuBMAP – Hacking the Kidney

Research Code Competition

Соревнование начинается с картирования человеческой почки, а основной задачей участников будет обнаружение функциональные единицы ткани (FTU). Целью является внедрение успешного и надежного детектора FTU клубочков. У вас также будет возможность представить результаты коллегии судей для дополнительного рассмотрения. Мероприятие интересно желающим попробовать себя в исследовании анатомии клеток и тканей для разработки методов лечения.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Hungry Geese

Playground Simulation Competition

Соревнование по созданию игровой площадки с элементами многопользовательской симуляции. Вашей задачей станет разработка агента искусственного интеллекта, которому предстоит играть против других. Мероприятие подойдет всем заинтересованным в построении игровых моделей с использованием обучения с подкреплением, Q-обучения и нейронных сетей.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Hash Code 2021 – Traffic Signaling

Playground Simulation Competition

Соревнование от Google, во время которого вам предстоит оптимизировать расписание светофоров с учетом плана города и автомобильных маршрутов. Цель – свести к минимуму среднее время в пробке, чтобы помочь как можно большему количеству автомобилей добраться до места назначения в заданный срок.

Coleridge Initiative – Show US the Data

Featured Code Competition

Во время состязания вам предстоит использовать методы обработки естественного языка (NLP) для автоматизации обнаружения ссылок в научных публикациях. Основная задача – анализ текста публикаций и определение использованных авторами наборов данных. Разработки участников позволят государственным учреждениям и исследователям быстро находить необходимую им информацию и будут применяться при создании систем показателей использования общедоступных данных.

Differential Privacy Temporal Map Challenge: Sprint 3 (Prescreened Arena)

Задача участников конкурса – разработать алгоритмы, которые смогут сохранить практичность данных, гарантируя защиту личной конфиденциальности. Предложенные решения проблемы будут оцениваться на основе их способности удовлетворять критериям дифференциальной конфиденциальности и точности выходных данных.

HackerEarth DevOps Challenge

Соревнование для участников с опытом от одного года, работающих с Python, Django, Linux, Jenkins, Docker, Git и Web Server. Вашей задачей будет разработка модульных тестовых примеров для исходного кода приложения. Практическое соревнования для тех, кто хочет улучшить свои навыки работы с Github, Django и Jenkins.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

ADoBo — Automatic Detection of Borrowings

Соревнование для специалистов в области лингвистики и методов обработки естественного языка (NLP). О сновная задача – обнаружение прямых неадаптированных лексических заимствований в испанской прессе. Победители должны создать системы, способные с высокой точностью аннотировать тестовый набор статей.

Machine Learning

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Indoor Location & Navigation

Research Prediction Competition

Партнер конкурса – Microsoft Research, а задача участников – на основе показаний датчиков предсказывать положение смартфонов в режиме реального времени. Данные предоставлены компаниями по разработке технологий позиционирования в помещениях. В случае успеха вы сможете внести вклад в создание более точных методов позиционирования.

Predict The Price Of Books

Тренировочное соревнование для новичков, во время которого вам предстоит исследовать большую базу книг. Задача участников – использовать набор данных для построения модели машинного обучения и прогнозирования цены издания.

Predict The News Category Hackathon

В этом хакатоне энтузиастам предстоит использовать методы обработки естественного языка (NLP) для автоматизации категоризации новостей и построения моделей прогнозирования их жанров.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

ELECTRICAL SUBSTATIONS EXTRACTION FROm IMAGES

Участники будут разрабатывать программное обеспечение для обнаружения электрических подстанций с помощью спутниковых данных высокого разрешения.

Shopee – Price Match Guarantee

Featured Code Competition

Здесь вы сможете применить навыки машинного обучения для построения модели, предсказывающей, какие товары являются одними и теми же продуктами. Вклад в разработку системы будет способствовать более точной классификации продуктов и выявлению спама.

Airborne Object Tracking Challenge

Задача конкурса связана с обнаружением и отслеживанием воздушных объектов для предотвращения их столкновений.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

The Music Demixing Challenge

От Sony Group Corporation

Соревнование позволит исследователям и энтузиастам машинного обучения проверить свои навыки, создав способную выполнять разделение источников звука систему. Она должна разделять входной аудиосигнал на отдельные части – по одному треку для каждого инструмента.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Если вы только начинаете путь в профессии или хотите научиться решать реальные задачи из смежных областей науки о данных, соревнования – хороший способ это сделать. Обратите внимание на курс по спортивному Data Science образовательной онлайн-платформы GeekBrains. Он включает обучение с элементами соревнования в Kaggle и работу с преподавателем, который разбирает на примерах каждый урок.

Источник

Kaggle для начинающего дата-сайентиста: соревноваться нельзя учиться

Мало нам питона и матана — есть ещё, оказывается, и какой-то Каггл. Разбираемся, что это и зачем нужно

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Kaggle — популярная платформа для соревнований по Data Science от Google. Пользователи (люди и организации) могут публиковать на ней свои наборы данных, создавать и исследовать модели машинного обучения, соревноваться друг с другом.

Типичная схема Kaggle-соревнования: организатор конкурса (как правило, крупная компания) публикует свои данные и описание проблемы, сроки, критерии правильного решения и приз, который получит победитель. А участники пробуют применить к данным разные методы, модели и алгоритмы, чтобы решить проблему.

Автор лучшего решения получает приз. Остальные участники — баллы в зависимости от места в таблице с результатами. Из этих баллов складывается общий рейтинг на платформе. Денег за рейтинг никто не даст, зато в резюме он может смотреться красиво. Оценка работ прозрачна: платформа автоматически проверяет решения по критериям, выставленным компанией-организатором.

Формат участия в соревновании зависит от условий, которые задаёт автор проблемы. Обычно разрешают участвовать и сольно, и командой — у каждого способа есть свои преимущества.

В Kaggle всё очень непросто:

Кажется, шансов у новичка — ноль. Так зачем же соревноваться тому, кто только начал изучать науку о данных?

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

К тому же очищенные, подготовленные и хорошо документированные Kaggle-датасеты не имеют ничего общего с задачами и данными, над которыми ежедневно работают дата-сайентисты.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

С некоторых пор утверждает, что он data scientist. В предыдущих сезонах выдавал себя за математика, звукорежиссёра, радиоведущего, переводчика, писателя. Кандидат наук, но не точных. Бесстрашно пишет о Data Science и программировании на Python.

Чем полезен Kaggle

Хотя вам вряд ли достанется приз, а задачи сильно отличаются от «промышленного» Data Science, соревнования — это отличный инструмент обучения. Многие вообще считают Kaggle лучшим способом изучить науку о данных.

Чтобы обучение проходило эффективно, нужно понимать особенности платформы:

На Kaggle вы исследуете продвинутые алгоритмы, фреймворки, библиотеки и прокачаете soft skills — упорство, настойчивость и умение работать в команде. Наконец, попробуете решить важные для всего человечества проблемы. Сплошные плюсы.

OK, Kaggle! Как начать?

Выберите язык программирования. Самые популярные языки в Data Science и Kaggle-сообществе — Python и R. Если вы начинаете с нуля, то выберите Python, это универсальный язык, он поможет в решении самых разных задач. Для начала можно прочитать нашу статью про Python-минимум для дата-сайентиста.

Изучите основы Data Analysis. А конкретно — так называемый исследовательский (разведочный) анализ данных. Пригодятся навыки загружать и визуализировать данные, свободно в них ориентироваться. Все необходимые инструменты есть в Python-библиотеках Pandas и Seaborn. А потренироваться в преобразовании данных из таблицы Excel в формат датафреймов Pandas можно с помощью нашей статьи.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Попробуйте обучить свою первую модель на несложном датасете. Например, модель Random Forest из библиотеки scikit-learn — у нас есть об этом хорошая статья. Так вы познакомитесь с основными инструментами машинного обучения, привыкнете делить датасет на обучающую и тестовую части, узнаете про кросс-валидацию и метрики работы модели.

Поучаствуйте в соревнованиях начального уровня. На Kaggle их можно найти в категории Getting Started. В таких соревнованиях нет призового фонда и ограничений по датам, но по структуре они аналогичны Kaggle-соревнованиям с призами. А ещё по ним написано множество подробных руководств — это бесценно для начинающего дата-сайентиста.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Не бойтесь трудностей и стремитесь к знаниям. Пора приступать к настоящим соревнованиям — они потребуют существенно больше времени и усилий. Поэтому выбирайте с умом: в выполнении задания должны быть задействованы интересные и нужные вам методы и технологии.

Призы — это здорово, но гораздо ценнее и надёжнее те знания и навыки, которые двинут вперёд вашу карьеру дата-сайентиста.

Сверяйтесь со своими планами. Современный Data Science практически необъятен, поэтому выбирайте состязания, релевантные вашим устремлениям. Например, если вы планируете стать специалистом по компьютерному зрению, то соревнования по обработке естественного языка скорее отвлекут вас, чем принесут пользу.

Kaggle и «настоящий» Data Science

Посмотрим, чем соревнования отличаются от ежедневных задач дата-сайентиста.

Соревнования KaggleРеальный Data Science
ЗадачиВсегда трудныеМогут быть лёгкими
РешенияДолжны быть новымиМогут быть известными
ЭффективностьТолько относительнаяМожет быть абсолютной
ДанныеПодготовленныеПридётся наводить порядок и чистить

Задачи. Компании выкладывают на Kaggle самые сложные и запутанные проблемы, которые не решить за один день. В реальном Data Science они могут быть простыми, да и бизнес диктует требование выбирать более лёгкие задачи с быстрым результатом.

Решения. На Kaggle решения должны быть новыми: для победы, как правило, проводят дополнительное исследование, серьёзно улучшают алгоритм, разрабатывают продвинутую модель.

На практике в Data Science для большинства задач (исследовательский анализ, очистка данных, A/B-тестирование, классические алгоритмы) уже есть проверенные решения и фреймворки. Каждый раз выдумывать что-то сложное и новое не требуется.

Эффективность. В Kaggle достаточно опередить только своих соперников. В жизни приходится побеждать всех — включая самого себя и своё предыдущее решение.

В Kaggle главное — выполнить формальные требования и обойти всех по заданному критерию. А в реальном Data Science важнее себестоимость и бизнес-результат.

Данные. Датасеты на соревнованиях Kaggle очищены и готовы для работы: удобный формат, ясное описание, логичная структура. Именно на подготовку уходит до 80% рабочего времени обычного дата-сайентиста.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Советы опытных кагглеров

Вот семь советов для тех, кто хочет получить максимум пользы от соревнований на Kaggle:

Совет 1: достигайте целей постепенно.

В каждый момент времени следующая цель должна быть одновременно и достаточно трудной, и достижимой. Например:

Такая стратегия позволит измерить свой прогресс и сохранить высокую мотивацию.

Совет 2: исследуйте самые популярные решения.

Одна из важных фишек Kaggle — участники могут публиковать краткое описание своего решения, так называемое kernel («ядро»). Изучение чужих решений может натолкнуть на новые идеи.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

Совет 3: спрашивайте участников на форумах.

Не бойтесь задавать «глупые» вопросы. В конце концов, ничего страшного не случится. Максимум, что вам грозит, — тишина в ответ. Но, скорее всего, вы получите советы и поддержку опытных дата-сайентистов.

Совет 4: работайте сольно — так эффективнее прокачивать ключевые навыки.

В начале пути лучше работать одному — это поможет внимательнее относиться к ключевым задачам, включая исследовательский анализ, очистку данных, разработку признаков и обучение модели.

Совет 5: работайте в команде, чтобы расширить свои возможности.

Работа в команде — отличный способ учиться у опытных дата-сайентистов. Найти «сообщников» можно в чатах, комьюнити и пабликах, посвящённых Data Science, среди одногруппников по курсам или прямо на форумах Kaggle. Нетворкинг — это сила.

А когда вы отточите общие навыки машинного обучения, будет важно поучиться у экспертов в конкретной отрасли — это увеличит вашу ценность.

Совет 6: помните, что Kaggle — это только этап.

Вы не обязаны провести всю жизнь, соревнуясь с другими кагглерами. И если вы вдруг поймёте, что Kaggle вам «не зашёл», — не проблема. Для многих платформа стала всего лишь первой ступенью перед запуском собственного проекта или трудоустройством.

Совет 7: не переживайте из-за низкого рейтинга.

Порой новички слишком сильно беспокоятся из-за рейтинга в своём профиле. Боязнь конкуренции — серьёзная проблема не только для Kaggle, она часто мешает и в обычной жизни. А если вам всё-таки стыдно показывать низкий рейтинг на платформе — заведите тайный учебный аккаунт kisulya666 и тренируйтесь в нём. Со временем можно переключиться на основной аккаунт gromoverzhec777 и начать охоту за трофеями и рейтингом.

Заключение

Обучение на практике — один из лучших методов освоить любую отрасль знаний. А Kaggle — это в первую очередь прекрасная возможность попрактиковаться в решении задач, и лишь во вторую — денежные призы.

На нашем курсе «Профессия Data Scientist» вы найдёте не только команду для участия в Kaggle-соревнованиях, но и поддержку опытных наставников, и помощь в трудоустройстве.

Источник

Быстрее, выше, точнее

Как соревнования по Data Science помогают эволюции в мире машинного обучения

Недавно мы писали о машинном обучении для анализа различных видов спорта, но до сих пор так и не рассказали об «обратной» комбинации — соревнованиях по анализу данных, а ведь есть и такие. Сегодня мы восполняем пробел — на наши вопросы о необычной роли соревнований в эволюции алгоритмов машинного обучения отвечает Александр Гущин, руководитель команды по анализу неструктурированных данных в Яндекс.Такси и «спортивного» направления образовательного проекта Data Mining in Action, а в прошлом — топ-5 в рейтинге Kaggle, крупнейшей мировой площадки для соревнований по анализу данных.

Говоря о большом и сложном мире машинного обучения, мы обычно имеем в виду две его части: индустриальный анализ данных, который развивают крупные компании, и академический анализ данных, занятый разработкой новых методов. Но, оказывается, есть еще отдельный «островок» — соревновательный анализ данных. Где проходят границы между ними?

На верхнем уровне их, действительно, можно разделить на три части. Каждую часть определяют те цели, которые она перед собой ставит. Например, цель анализа данных в индустрии — решить какую-то конкретную проблему: научиться отображать правильное время прибытия машины в приложении, если речь идет о сервисе такси, или научиться по снимку легких диагностировать рак или туберкулез, если речь идет о здравоохранении.

Цели академических исследований в области машинного обучения такие же, как и в других областях науки: разрабатывать новые и улучшать существующие подходы к уже известным задачам, придумывать и ставить новые задачи. То есть развивать машинное обучение как область в целом, а не заниматься разработкой конечных продуктов.

В соревновательном анализе данных все немного иначе. Поскольку там есть две стороны — те, кто организует соревнование и те, кто в нем участвует, то имеется и два набора целей. Основная цель организаторов — получить наилучшее возможное решение определенной задачи, а участники стремятся попробовать новую интересную задачу, в процессе ее решения научиться чему-то новому — самостоятельно или у других, почувствовать спортивный азарт, посоревноваться за приз — деньги или славу победителя.

Это — «на верхнем уровне», а если говорить конкретнее?

Как обычно решается задача в индустрии? Сначала она возникает в неформальной формулировке, например: «Мы, социальная сеть Х, хотим показывать людям более релевантные посты в ленте». Затем задача формулируется в терминах необходимого качества. Например: «Среди N постов, которые будут показаны в ленте пользователя, как можно больше должны быть ему интересны». Помимо желания максимизировать качество, к алгоритму обычно предъявляются еще какие-то требования, скажем: «Поиск этих N постов не должен происходить дольше, чем M миллисекунд».

На этом этапе возникает задача машинного обучения: необходимо обучить алгоритм, умеющий ранжировать посты с достаточным качеством и удовлетворяющий таким требованиям. После этого собираются имеющиеся данные, они обрабатываются, происходит выбор и обучение модели. Наконец, когда модель готова, происходит ее внедрение в сервис — в нашем случае, ее начинает использовать приложение социальной сети.

В соревнованиях по анализу данных отражена центральная часть этого процесса — предобработка данных и обучение модели. К началу соревнования задача уже поставлена организатором, выбрана метрика качества, а данные собраны. Кстати, тут возникает важный для соревнования момент: поскольку обычно метрика качества — это некоторая математическая функция, известная участникам, то победителями станут те, кто сможет эту функцию максимизировать. То есть победители будут выбраны объективно, поскольку очки, которые получат участники, не будут зависеть от субъективного мнения жюри.

А сами организаторы при этом преследуют сразу три цели. Первая — это те самые классные и нетривиальные решения, которые можно будет использовать для практических задач. Вторая — реклама самой компании-организатора, причем как среди специалистов, так и среди широкой аудитории, ведь «машинное обучение», «big data» — это сейчас довольно популярные buzzword-ы. Ну, и третья цель — поиск и найм специалистов. В ходе соревнований можно показать часть внутренних задач, и если кто-то из участников успешно их решает, то его можно рассматривать как потенциально хорошего специалиста в данной области. Ну и наоборот, успешное решение каких-то задач помогает специалисту заинтересоваться связанной с ними областью.

А какие площадки для соревнований можно считать ключевыми?

Главной площадкой на сегодня является Kaggle, просто потому, что там проводится наибольшее число конкурсов, причем с самыми большими призами. Есть DrivenData, TopCoder, crowdAI, есть индийская платформа CrowdANALYTIX и еще много других.

Для участников эти платформы отличаются друг от друга как качеством организации соревнований, так и тем, как на них устроено взаимодействие. Обычно участники могут обсуждать задачи на тематических форумах таких сайтов, а иногда даже решать конкурсные задачи прямо на платформе и тут же делиться своими решениями с другими участниками, как сделано на Kaggle.

В России тоже есть несколько интересных платформ. Есть Boosters — наверное, лучший среди специализированных российских сайтов, на котором за последние несколько лет прошло около десятка соревнований (это достаточно много для России). Есть TrainMyData. Некоторые компании проводят соревнования на своих собственных платформах, например Яндекс на contest.yandex.ru, Сбербанк на sdjs.ru.

конкурсы по машинному обучению. Смотреть фото конкурсы по машинному обучению. Смотреть картинку конкурсы по машинному обучению. Картинка про конкурсы по машинному обучению. Фото конкурсы по машинному обучению

На соревнованиях редко придумывают новые методы — все же у них другая цель. Но когда это происходит, методы становятся широко известны, ведь они доказывают свою эффективность высоким местом в соревновательном рейтинге. Кроме того, в процессе решения задач часто придумываются небольшие улучшения и, что важнее, происходит отбор и сравнение существующих методов друг с другом. В некотором смысле, соревнования — это платформы для «эволюционного отбора» алгоритмов машинного обучения: побеждают решения с наилучшим качеством.

Например, знаменитый AlexNet, который вдохнул в нейросети новую жизнь, стал известен после того, как с большим отрывом победил в соревновании Imagenet в 2012 году. Модель FFM (Field-aware Factorization Machines) была придумана во время решения KDD Cup 2012. Благодаря соревнованиям стали известны реализация градиентного бустинга XGBoost, счетчики для категориальных признаков и, конечно же, ансамбли различных моделей.

В подавляющем большинстве на Kaggle и других площадках даются задачи на точность, а не какие-то другие критерии (скорость, интерпретируемость модели). Их итоговые решения — жуткие «франкенсамбли» (по определению Михаила Биленко, руководителя управления машинного интеллекта в Яндексе), которые никогда не пойдут в продакшн. Они соответствуют ожиданиям организаторов?

Все зависит от того, на какой результат рассчитывают организаторы и как они проводят соревнование. Конечно, максимально здорово было бы получить решение задачи, готовое для использования «как есть» и внедрения в сервис. Однако по целому ряду причин добиться этого с помощью соревнования практически невозможно, и часть из них мы уже обсудили. Есть еще пара распространенных «подводных камней» — например, сложность выгрузки «чувствительных» данных с информацией о пользователях и ограничения на те метрики, которые будут оценивать качество моделей участников.

Бывают и вовсе курьезные случаи, когда организаторы допускают ошибки в подготовке соревнований. Иногда оказывается, что в данных есть «утечка» (leak), например какой-то признак «из будущего», в котором уже кроется требуемый ответ. Скажем, организаторы хотят научиться прогнозировать стоимость акций, но по ошибке убирают из данных акции обанкротившихся компаний. Очевидно, что обученные на таких выборках модели не будут применимы в реальной жизни, потому что они не умеют прогнозировать возможное банкротство компаний в обозримом будущем. Этот пример — классическая иллюстрация «ошибки выжившего», но, конечно, встречаются и более изощренные.

Справедливости ради стоит заметить, что такое регулярно случается и при решении индустриальных задач в компаниях — при обучении используются данные, которые не будут доступны при «боевом» запуске алгоритма. В индустрии такие сбои устраняются просто: нашел ошибку — исправил и работаешь дальше. Но соревнование есть соревнование: участники в погоне за выигрышем заточат свои модели именно под этот признак, и полученное решение будет обладать феноменальной точностью на выданном наборе данных, но «в бою» окажется бесполезным.

Чаще всего соревнования оказываются полезны для таких организаторов, которые уже имеют некоторое решение своей задачи и ставят себе цель улучшить его. Тогда они ожидают от участников, что те “выжмут всё” из имеющихся данных: пересмотрят все данные, попробуют все способы генерации признаков, обучат все модели машинного обучения, которые только существуют. Самые лучшие «франкенсамбли» из самых удачных подходов дадут лучшие результаты и займут первые места. Организаторы получат эти решения, достанут из них самые классные идеи, а затем улучшат свой собственный продукт.

Организаторы вообще стремятся к тому, чтобы полученные решения были более подходящими для дальнейшего использования?

Да, конечно. Если организатор хочет, чтобы решения были применимы в продакшне, он может наложить на участников ряд технических ограничений, о которых мы уже упоминали: скорость работы, размер требуемой для работы памяти или интерпретируемость модели (то есть возможность понять, «почему» модель предсказала именно это значение).

Обычно соревнования устроены так: участники решают соревнование на своем компьютере и просто отправляют на Kaggle или другую платформу файл с ответом. И если организатор видит только этот файл, он не понимает, сколько времени и ресурсов ушло на поиск ответа. Но если задать условие, чтобы участники присылали не ответ, а само решение, то есть код, то можно запустить этот код «у себя» на виртуальной машине с определенными ограничениями, например по времени и объему памяти. Сейчас есть тренд устраивать соревнования именно в таком формате.

Теперь давайте от организаторов перейдем к участникам. Кто приходит соревноваться на Kaggle? Аналитики из крупных компаний, ученые, студенты? Или, может быть, есть отдельная профессия — «кагглер»?

В соревнованиях участвуют совершенно разные люди из разных стран мира и с разным бэкграундом. Неважно, сколько тебе лет или кто ты — студент из Бразилии или профессор из России, аналитик из Китая или разработчик из США, важно лишь, насколько хорошо ты решаешь поставленную задачу. Пожалуй, единственным требованием является университетская математическая подготовка — для того, чтобы лучше понимать модели и методы машинного обучения. И даже в этом единственном правиле есть исключения — иногда даже школьники выступают на Kaggle достаточно успешно.

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

Часто соревнования становятся замечательным стартом для работы в индустрии или академической науке. Здесь можно понять, какие задачи вам наиболее интересны, порешать их своими руками, сравнить свои решения с решениями других людей и чему-то у них научиться. Соревнования — также и замечательный инструмент для тех, которые уже работает в анализе данных, но желает расширить свой кругозор.

Если «профессиональных кагглеров» не бывает и все участники соревнований занимаются чем-то еще, то помогают ли им знания из какой-то специфичной области? Биологии, физики, экономики?

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

Другой пример: несколько лет назад проходило соревнование Microsoft Malware Challenge. Участники получили байт-коды вирусов, и надо было классифицировать их по типам, например Malware, Trojan или что-нибудь еще. И это как раз та задача, когда начальные данные требуют хорошей предобработки, поэтому специфические знания в области компьютерных вирусов — большой плюс. Конечно, можно просто «скормить» байт-код определенной модели, например градиентному бустингу, но, скорее всего, это окажется не очень эффективно.

Если вернуться к сравнению соревнований по анализу данных с профессиональным спортом, то получается, что прямой аналогии между ними нет. Например, в футболе какая-нибудь английская премьер-лига — это вершина твоей карьеры. А в случае с анализом данных наоборот: соревнования — это некий промежуточный этап, который тебе много чего дает, но чтобы реализовать полученное, надо отнести его куда-то еще. Это так?

Соревнования, безусловно, это вершина твоей спортивной карьеры, но не карьеры в анализе данных в целом. Навыки, полученные на соревновании, могут пригодиться и в индустрии, и в академическом анализе данных. Конечно, самый важный из них — умение добиваться значимых результатов. Пожалуй, все известные мне победители соревнований добились успеха и в других областях анализа данных, ведь умение много работать и побеждать — универсально.

Вопрос к вам как к руководителю спортивного направления в Data Mining In Action: зачем была создана эта дисциплина? Вы хотите вырастить поколение суперкагглеров, или это способ привести людей в анализ данных другим, менее традиционным путем?

В первую очередь, конечно, мы хотели научить людей анализу данных с помощью соревнований. Сегодня ведь можно приступить к изучению анализа данных разными путями: можно начать с соревнований, можно — с индустрии, например по курсам на Coursera, можно со стороны академии, выполняя научную работу в университете или изучая deep learning самостоятельно, чтобы потом поступить в аспирантуру. Кому-то интересно посмотреть, как выглядит решение задач в бизнесе, кого-то привлекают современные исследования в машинном обучении, а кому-то нужен соревновательный дух. В конце концов, не все могут сесть за учебники, составить себе план программы и строго его придерживаться. Должно что-то цеплять.

Есть у нас и другая цель — поделиться интересным и местами исключительным опытом, приобретенным в процессе участия в огромном количестве различных соревнований. Каждые полгода мы делаем это на DMIA, а недавно еще и записали курс на Coursera, структурирующий и обобщающий этот опыт. Кстати, как раз сейчас у нас идет новый набор.

Похоже, соревнования по анализу данных в чем-то похожи на турнир по шахматам, ведь они тоже лишены главного спортивного элемента — зрелищности. Даже если посадить сто кагглеров на заполненном стадионе, трибуны все равно не будут кричать: «Давай! Вы только посмотрите, как он обучает свой XGBoost! Вот это да!»

Аналогия с шахматами очень правильная: и зрелищность, и динамика, и накал — все это в анализе данных есть, но они видны лишь тем, кто в теме, знает правила игры и то, какая партия сейчас разыгрывается. Конечно, соревнования по анализу данных могут длиться месяцами, но основной накал борьбы наступает в конце — в последние дни и часы. И все это, как в любом спорте, может быть невероятно интересно. А чтобы лучше это почувствовать, надо поучаствовать самому.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *