Введение
Эта статья про мой первый продуктовый хакатон, про магистратуру университета ИТМО и, конечно, про искусственный интеллект.
Я хочу сразу представить свою команду "Пост-ИИрония":
Никита Лазутин (https://github.com/lazutinN)
Валерий Золкин (https://github.com/Klaasibub)
Антон Бугаец (https://github.com/antonbugaets)
Дмитрий Несмеянов (https://github.com/smeyanoff) (это я)
Всем привет!
Меня зовут Дмитрий, но я буду писать от лица своей команды и с их помощью. В статье я поделюсь опытом, как нам удалось всего за 5 дней собрать команду, придумать идею проекта, создать с нуля работающий прототип продукта, который решает реальную проблему на данных, и параллельно с этим посетить 12 встреч с ML-экспертами из ведущих AI компаний. Надеюсь, мой опыт поможет тебе подготовиться к твоему первому хакатону!
Немного контекста
В этом году мы с моими сокомандниками поступили в в AI Talent Hub, крупнейшую магистерскую программу "Инженерия машинного обучения" (более 100 бюджетных мест) в университете ИТМО (Санкт-Петербург). Программа эта отходит от классических магистерских программ нацеленных на подготовку инженеров машинного обучения – ориентирована на создание продукта в удаленной команде с клевыми менторами, которые “собаку съели” в области разработки ML продукта.
Магистратура проходит в удаленном формате. Но перед стартом обучения организаторы решили устроить очную встречу студентов, наставников и менторов. Идея была простая – познакомиться с будущими одногруппниками, зарядиться энергией и понять, наконец, во что мы вписались…
Первые дни
Первая неделя буткемпа была посвящена знакомству, играм и созданию команд. Со мной на программе обучается еще примерно сто человек. Многие из них (включая меня) уже работают. Кто-то взял отпуска, кто-то оформил удаленную работу, у кого-то не получилось поехать. Но большей части ребят, все таки, удалось вырваться.
В первые дни были разные организационные моменты: приди туда, послушай то, разберись, как через мобильное приложение ИТМО создать QR-код, чтобы пройти в кампус.
Я помню, как познакомился с командой. На самом деле, это не я их нашел, а они меня; выходил с какой-то вводной лекции, ко мне подошел Антон, спросил, не хочу ли я пойти к ним в команду. Я был не против. Более того, позже выяснилось, что мы из одного города, а с одним (привет, Никит), даже учились в одной школе. В общем, вопрос с командой был как-то быстро закрыт, общий язык был найден, а я был в шоке от университетских кампусов. Таких комфортных пространств в моем Самарском университете им. Королева просто не было. А коворкинги для студентов – это просто что-то с чем-то…
Командообразование
Следующие несколько дней первой недели были посвящены тимбилдингу. Не могу сказать, что мне чем-то запомнились эти дни, кроме, наверное, задания, где нужно было сделать мост из бумаги и прокатить по нему шарик. Вот это был полет инженерной мысли… дааа.
Первая неделя закончилась крутой "посиделкой" в питерском лофте и общением в онлайн формате с одним из основателей сообщества ods.ai Алексеем Натёкиным.
Кстати, у нас в команде, как у крутых рок-групп, был свой байопик! Один из нас решил выбрать другое направление и поменять команду. Но все к лучшему, в тот вечер мы познакомились с нашим новым крутым членом команды, Валерой a.k.a Валерон!
Продуктовый хакатон
Расписание на следующую неделю было примерно таким: с утра пару кейс лекций от менторов и ведущих AI специалистов из крупных компаний, обед, а после консультации с менторами жесткий хакатонинг до самого вечера. В субботу была защита проектов. Было здорово, что защита была организована как какая-то продажа своей бизнес-идеи инвесторам из отрасли. Это правда научило нас задумываться об AI-продукте не как об эфемерной технологии в вакууме, а как о реальной бизнес задаче, инструменте, который решает нужды бизнеса (иначе финансирование ты не получишь). Лично меня такая постановка вопроса сперва поставила в тупик. Хочу сказать, что никакого опыта не было ни у меня, ни у кого-то из коллег. Это были наши первые (но не последние) шаги в отрасль, где мы станем крутыми спецами и будем решать крутые задачки!
Как придумать идею проекта
Как я уже говорил, мы с командой были совсем не хакатонщики, но еще меньше мы были стартаперы. В хакатоне было 4 направления, нужно было выбрать один из них:
AI-Powered Video Analytics (тут CV, все понятно)
Data Driven BioTech (тут биологи, ДНК и РНК, ничего не понятно)
Generative.SPb (тут генеративный ИИ, мало что понятно)
Open Data Tools (тут фичи для обработки данных, все понятно)
У меня есть опыт в анализе данных, у Антона в бэкенде. В первом приближении, самой простой идеей было выбрать четвертое направление, сделать простой сервис, который позволял бы анализировать данные (корреляции, метрики), как-то преобразовывать данные, может быть даже строить простые модели. В общем, простор для фантазии в рамках одной недели. Но приход Валеры все изменил. С легкой подачи типа: “А может в видеоаналитику? Прикрутим к трекер людей и эмоций и посмотрим, довольные ли тут вообще студенты.” - мы не устояли. С видеоаналитикой никто из нас, кроме Валеры, не работал. Нам было жутко интересно. На этом и остановились.
Первые проблемы
На самом деле, нашей проблемой была не техническая часть…
У Валеры хороший опыт в видео-аналитике. Мы развернули кластер с Elasticsearch и Kibana, для realtime визуализации, было круто… Нет. Наша проблема была в идее. Оказалось, что связать пару моделей несложно, сложно связать проект с реальным миром. Так наш корабль напоролся на рифы: “А зачем это бизнесу?” и “А в чем ваша уникальность?”.
Находим решение. Учимся на ошибках
Через пару дней хакатона, когда с технической стороны уже всё минимально работало, мы решили провести продуктовое исследование и интервью с потенциальным бизнесом (как оказалось, это нужно было сделать в первую очередь).
Итак, обойдя несколько сетей кофеен и пекарней, мы сошлись к одной User Story, которая звучит примерно так: Я, как владелец крупной сети, хочу быстро реагировать на недовольство покупателей.
Как уже говорил выше, для визуализации использовали Kibana, который позволяет очень просто создавать дашборды. Киллер фичей проекта был “Индекс счастья” (который, после осознания, для чего вообще нужен продукт стал индексом “несчастья”). Каждая “горка” на графике в левом верхнем углу означает всплеск негативных эмоций.
Мы засняли видео в коворкинге университета и гоняли его по кругу, чтобы получить эту статистику. Интересно, чего это все такие грустные, ведь там такой коворкинг…
На самом деле, мы не тестировали качество моделей, так как не укладывались в график. Кроме того, ни в одном супермаркете камера не будет стоять так удачно. Статистика вообще не объективная, так как мы гоняли одно видео по кругу. И вообще, с точки зрения разработки ML продуктов, это было максимально неправильно! Но, выглядит красиво, а большего нам и не нужно было. Уверен, мы смогли бы сделать реально полезный продукт, если бы сразу учли момент с проработкой идеи.
Очень хочется сказать, что мы оказались в числе лучших, но я не зря взял слово “победили” в названии в кавычки. Мы не заняли призового места, но мы втянулись в командную работу и здорово провели время в тусовке DataScience. Это было очень круто! На хакатоне лично я впервые почувствовал, насколько большое DS сообщество в России.
В нашем треке было много интересных проектов! Так например, ребята из команды Cyber Moidodyr вместе с лабораторией робототехники ИТМО собрали робота с ИИ, который сортировал и убирал мусор (на нем был пылесос). А например, в треке по Generative.SPb победила команда "Инженерия винного обучения", которая дала возможность любому желающему поработать с нейросетью и сгенерировать уникальную надпись с названием города на обложку открытки. Они еще прикрутили логику в телеграмм бота!
Заключение
Хочется сказать, что эти пару недель в Петербурге оказались не только очень полезными для меня, но еще и очень веселыми. Я встретил очень много хороших интересных увлеченных ИИ людей. Наш проект вы можете посмотреть репозитории.
Хочу сказать отдельное спасибо организаторам и своей команде.