Исследовательская группа

Методы машинного обучения в области программной инженерии

Предсказание тегов задач спортивного программирования

December 2

Спортивное программирование — популярный вид деятельности, сочетающий образовательные цели с тренировкой навыков практического программирования, пусть и в весьма специфичном ключе. Как показывает практика, участие в подобного рода активностях не только повышает мотивацию учеников к изучению программирования, но и помогает проходить технические интервью при приёме на работу в IT компании. Одной из самых популярных платформ для тренировок и подготовки к олимпиадам является CodeForces. Для упрощения поиска задач на интересующую пользователя тематику на этом сайте была придумана система тегов (Динамическое программирование, Математика, Строки и т.д.). Однако расставляются такие теги вручную пользователями, модераторами и авторами задач. Это чревато неконсистентностью разметки и прочими ошибками, связанными с человеческим фактором. Например, нужно ли ставить тег Графы в задачах про деревья? В разных случаях такие неоднозначности разрешались по разному. Решить подобные проблемы могла бы автоматическая система расстановки тегов.

Мы проанализировали предыдущие попытки решения подобной задачи и пришли к выводу, что все они имеют важный изъян — они однобоки. Часть решений использует для предсказания тегов текст условий задач, часть пытается анализировать присланные решения. Но никто раньше не пробовал объединить эти подходы. Для получения комбинированного решения мы объединили в ансамбль популярную модель для анализа исходного кода (GGNN) и state-of-the-art модель для анализа текста на естественном языке (BERT). Оказалось, что полученный ансамбль не только лучше этих моделей по отдельности, но и заметно превосходит все ранее предлагавшиеся подходы. В данном докладе будет рассказано подробнее об архитектуре решения, о сложностях обучения подобных моделей, о результатах наших экспериментов и о возможных причинах успеха комбинированных подходов.

Докладчик: Артём Лобанов.

Язык доклада: русский.

Дата и время: 2-е декабря, 18:30-20:00.

Видео с семинаров доступно по ссылке: http://bit.ly/MLJBSeminars

Для получения рассылки о семинаре (с паролем от Zoom) - пишите Алексею Шпильману на alexey@shpilman.com.