Меня зовут Саша и я люблю машинное обучение, а также обучение людей. Сейчас курирую образовательные программы в Computer Science центре и руковожу бакалавриатом по анализу данных в СПбГУ. До этого работал аналитиком в Яндексе, а ещё раньше — учёным: занимался математическим моделированием в ИВТ СО РАН.
В этом посте хочу рассказать, что получилось из идеи запуска тренировок по машинному обучению для студентов, выпускников Новосибирского государственного университета и всех желающих.
Мне давно хотелось организовать спецкурс по подготовке к соревнованиям по анализу данных на Kaggle и других платформах. Это казалось отличной идеей:
- Студенты и все желающие применят на практике теоретические знания, получат опыт решения задач на публичных соревнованиях.
- Студенты, которые занимают места в топе на таких соревнованиях, хорошо влияют на привлекательность НГУ для абитуриентов, студентов и выпускников. С тренировками по спортивному программированию происходит точно также.
- Такой спецкурс отлично дополняет и расширяет фундаментальные знания: участники самостоятельно реализуют модели машинного обучения, часто объединяются в команды, которые конкурируют на мировом уровне.
- В других университетах уже проводились такие тренировки, поэтому я надеялся на успех спецкурса и в НГУ.
Tnedija
В Академгородке Новосибирска очень благодатная почва для подобных начинаний: студенты, выпускники и преподаватели Computer Science центра и сильных технических факультетов, например, ФИТ, ММФ, ФФ, мощная поддержка администрации НГУ, активное ODS-сообщество, опытные инженеры и аналитики разных IT-компаний. Примерно тогда же мы узнали о грантовой программе от
Мы нашли аудиторию в НГУ для еженедельных встреч, создали чатик в Телеграме и с 1 октября запустились вместе со студентами и выпускниками CS центра. На первое занятие пришли 19 человек. Шесть из них стали постоянными участниками тренировок. Всего за учебный год на встречу хотя бы раз пришел 31 человек.
L-ewwel riżultati
Мы с ребятами познакомились, обменялись опытом, обсудили соревнования и примерный план на будущее. Довольно быстро поняли, что борьба за места в соревнованиях по анализу данных — это регулярный изнурительный труд, похожий на неоплачиваемую full-time работу, но очень интересную и захватывающую 🙂 Один из участников, Kaggle-master Максим, посоветовал нам сначала продвигаться в конкурсах индивидуально, и только через несколько недель после этого объединяться в команды, учитывая public score. Мы так и сделали! На очных тренировках обсуждали модели, научные статьи и тонкости Python-библиотек, вместе решали проблемы.
Результатами осеннего семестра стали три серебра в двух соревнованиях на Kaggle:
Ещё одним очень важным косвенным результатом спецкурса стал запуск и настройка кластера ВКИ НГУ. Его вычислительные мощности заметно улучшили нашу соревновательную жизнь: 40 CPU, 755Gb RAM, 8 GPU NVIDIA Tesla V100.
До этого мы выживали как могли: считали на личных ноутбуках и десктопах, в Google Colab и в Kaggle-kernels. У одной команды даже был самописный скрипт, который автоматически сохранял модель и перезапускал расчёт, остановившийся по лимиту времени.
В весеннем семестре мы продолжили собираться, обмениваться успешными находками и рассказывать о своих решениях соревнований. К нам стали приходить новые заинтересованные участники. За весенний семестр получилось взять уже одно золото, три серебра и девять бронз в восьми конкурсах на Kaggle:
Что говорят участники тренировок
«Я очень рад, что такая деятельность ведётся у нас в Сибири, так как считаю, что участие в конкурсах — самый быстрый способ освоить ML. Для таких конкурсов железо достаточно дорогое, чтобы купить самостоятельно, а тут можно пробовать идеи бесплатно».
«До появления мл-тренировок я особо не участвовал в конкурсах за исключением учебных и индусских соревнований: не видел в этом смысла, так как работа у меня в области МО была, да и с ним я знаком. Первый семестр ходил как слушатель. А начиная со второго семестра, как только появились вычислительные ресурсы, подумал, почему бы и не поучаствовать. И меня это затянуло. Задачу, данные и метрики за тебя придумали и приготовили, бери да используй всю мощь МО, проверяй state-of-the-art модели и техники. Если бы не тренировки и, не менее важно, вычислительные ресурсы, я бы не скоро начал участвовать».
«Очные ML-тренировки помогли мне найти единомышленников, совместно с которыми удалось углубить свои знания в области машинного обучения и анализа данных. Также это отличный вариант для тех, у кого нет особо свободного времени на самостоятельный разбор и погружение в тему конкурсов, но быть в теме все же хочется».
Ingħaqad magħna
Соревнования на Kaggle и других площадках оттачивают практические умения и быстро конвертируются в интересную работу в области data science. Люди, которые вместе поучаствовали в трудном соревновании, часто становятся коллегами и продолжают успешно решать уже рабочие задачи. Такое случалось и у нас: Михаил Карчевский в паре с другом из команды перешли работать в одну компанию над рекомендательной системой.
Со временем мы планируем расширить эту активность научными публикациями и участием в конференциях по машинному обучению. Присоединяйтесь к нам в качестве участников или экспертов в Новосибирске — пишите
Вот маленькая шпаргалка, которая поможет сделать первые шаги:
- Продумайте удобное место и время регулярных занятий. Оптимально — 1-2 раза в неделю.
- Напишите потенциально заинтересованным участникам о первой встрече. В первую очередь это студенты технических вузов, участники ODS.
- Заведите чатик для обсуждения текущих дел: Telegram, VK, WhatsApp или любой другой удобный большинству мессенджер.
- Ведите общедоступный план занятий, список соревнований и участников, следите за результатами.
- В близких университетах, научных институтах или компаниях найдите свободные вычислительные мощности или гранты на них.
- QLIGĦ!
Sors: www.habr.com