• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Московский институт электроники
и математики им. А.Н. Тихонова

«Приятно привносить что-то новое в развитие науки здесь и сейчас»

Команда Durka Science студентов второго курса заняла третье место на хакатоне FinNet challenge по машинному обучению. При этом решение ребят оказалось наиболее стабильным среди всех представленных.

Самоизоляция перестроила режим жизни каждого, но у всех по-своему. Так, студенты группы БИВ-183 образовательной программы «Информатика и вычислительная техника» Алексей Зайков, Феодосий Котов и Вячеслав Якубов в период карантина решили с пользой потратить свободное время, которого у них стало больше, и принять участие в хакатоне FinNet challenge, организованном совместно университетом ИТМО и коммерческим банком «Точка».

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

Регламент соревнования, проведенного полностью в онлайн-формате, предполагал один месяц на построение модели. Судя по достигнутому результату, ребята время зря не теряли. Их решение заняло третье место в хакатоне и на основании дополнительного теста было признано наиболее стабильным.

Стратегия наших студентов была основана на комбинации нескольких подходов. Рассказывает один из членов команды Алексей Зайков: «Первый подход - рекомендательная система. Можно заметить, что задача похожа на задачу рекомендаций. Поэтому мы пробовали реализовать различные классические решения этой задачи. В итоге, мы использовали алгоритм SVD. Он приближает матрицу взаимодействий между пользователями перемножением трех других матриц. При этом новые матрицы также обладают свойством, благодаря которому можно получить вероятности взаимодействия для тех клиентов, между которыми ранее взаимодействия не было. Второй подход - графовые эмбеддинги. Мы хотели получить вектор, описывающий вершины графа (клиентов), для того, чтоб его можно было использовать в стандартных моделях машинного обучения. Для этого мы использовали алгоритм Node2Vec. В нём каждый клиент описывается множеством партнеров, с которыми он совершает сделки. В итоге обе модели показывали хорошую эффективность, поэтому мы решили смешать результаты их работы и получили наилучшее решение».

О высоком качестве решения говорит тот факт, что ниже 3-го места разрыв в очках сильно увеличивается. Более того, во время дополнительного тестирования на приватном лидерборде (проверка модели на новой выборке данных) качество модели наших ребят возросло, когда у остальных решений наблюдалось небольшое падение результатов. Другими словами, модель команды Durka Science оказалась наиболее стабильной среди всех представленных, что делает ее перспективной для реального использования. Уже после хакатона организаторы сообщили студентам, что планируют использовать их код, идеи и подходы для построения итоговой коммерческой модели банка.

область поиска возможных транзакций между юрлицами
область поиска возможных транзакций между юрлицами

Построение модели заняло немало времени, практически весь май ребята работали по 10-12 часов в день. На вопрос о мотивации Алексей ответил так: «Мотивирует как сама задача, тот факт, что с помощью своих знаний ты можешь принести прибыль бизнесу, так и желание попасть в штат в крупную компанию и постоянно развиваться и становиться ценнее на рынке. С каждой новой задачей ты всё четче понимаешь, что при желании и достаточном количестве времени можно решить практические любую по сложности задачу. Приходит уверенность и, конечно же, появляются новые знания и навыки на пути».

Мы не могли не поинтересоваться у Алексея о возможных сложностях с сессией из-за потраченного времени, на что был дан лаконичный ответ: «Более того, всё отлично! Всё сдали вовремя и довольны результатами!»

По итогу хакатона ребята планируют провести летнюю стажировку в Национальном Центре Когнитивных Разработок Университета ИТМО.

Хакатон FinNet challenge уже не первый в соревновательной биографии ребят: команда сформировалась на Changellenge Hack&Change, который состоялся в декабре 2019 года. Тогда же появилось и название – из сочетания направленности соревнования и внутреннего состояния команды в тот момент. С одной стороны, хакатон был связан с data science, с другой, по словам Алексея, «когда мало спишь или делаешь то, в чем слабо понимаешь, то выходит durka». Самоощущение команды за прошедшее время сильно изменилось в лучшую сторону, но название решили оставить.

 Несмотря на то, что машинное обучение и науки о данных не являются основным направлением образовательной программы «Информатика и вычислительная техника», ребята планируют и далее совершенствовать себя в этой области. «Больше всего нравится то, что данная наука и ее подходы находятся в активной фазе развития. Приятно читать статью или исследование, которое было опубликовано только на прошлой неделе, пользоваться наработками и привносить что-то новое в развитие этой науки здесь и сейчас», - анализирует свою увлеченность темой машинного обучения Алексей.

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

Тем более что готовая проектная команда уже есть. Алексей: «Приступая к новой задаче, мы начинаем читать статьи, проводим своё небольшое исследование на тему того, какие на данный момент существуют методы и подходы к решению такого рода задач. Позже мы созваниваемся, обсуждаем то, что удалось найти, и распределяем подходы между собой. Каждый реализует свою часть, позже мы объединяем построенные модели и дорабатываем их. В итоге у нас получается достаточно комплексный подход. Например, я силён в классической статистике, теории вероятности, бизнесовой и продуктовой части. У Феодосия и Славы есть практический опыт в нейронных сетях и в построении сложных алгоритмов».

Мы поздравляем ребят с замечательным результатом и желаем им новых побед на хакатонах и такого же интенсивного развития своих компетенций в будущем!