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

Использование моделирования тем в задачах разработки программного обеспечения

ФИО студента: Богомолов Егор Олегович

Руководитель: Брыксин Тимофей Александрович

Кампус/факультет: Санкт-Петербургская школа физико-математических и компьютерных наук

Программа: Программирование и анализ данных (Магистратура)

Год защиты: 2021

Применение на практике моделей машинного для решения задач в сфере разработки программного обеспечения требует высокой точности получаемых предсказаний. Но, согласно существующим работам, даже высокая точность не всегда гарантирует практической пользы. Решить эту проблему можно при помощи использования интерпретируемых моделей. Одним из способов получения информации из больших объемов текстовых данных в интерпретируемой форме является тематическое моделирование. В предыдущих работах по применению тематического моделирования в программной инженерии использовались подходы, не адаптированные для работы с кодом. В рамках этой работы был разработан алгоритм для тематического моделирования произвольного исходного кода Code2Topic, учитывающий специфику работы с кодом. Code2Topic позволяет представить произвольный фрагмент кода в виде распределения тем, которое затем можно использовать в качестве факторов в практических задачах. На основе предложенного алгоритма был разработан Sosed, инструмент для поиска похожих проектов среди множества 9 миллионов проектов с исходным кодом. Sosed использует представление проектов в виде распределения тем и ищет похожие распределения при помощи косинусной близости или KL-дивергенции. По результатам оценки релевантности предсказаний, Sosed превосходит аналоги, достигая средней релевантности 4,2 из 5 для top-5 предсказаний. Также в данной работе был предложен алгоритм Dev2Topic, адаптирующий Code2Topic для представления экспертизы разработчиков в виде распределения тем в коде, который они писали. Полученные распределения тем были использованы для улучшения результатов в задаче рекомендации разработчиков для исправления ошибок. Для датасета из 9700 сообщений об ошибках, собранных в системе YouTrack, точность была улучшена с 68% до 75%. Предсказания, полученные при помощи предложенных подходов, являются интерпретируемыми в обеих задачах, поскольку основываются на темах, извлеченных из исходного кода.

Выпускные квалификационные работы (ВКР) в НИУ ВШЭ выполняют все студенты в соответствии с университетским Положением и Правилами, определенными каждой образовательной программой.

Аннотации всех ВКР в обязательном порядке публикуются в свободном доступе на корпоративном портале НИУ ВШЭ.

Полный текст ВКР размещается в свободном доступе на портале НИУ ВШЭ только при наличии согласия студента – автора (правообладателя) работы либо, в случае выполнения работы коллективом студентов, при наличии согласия всех соавторов (правообладателей) работы. ВКР после размещения на портале НИУ ВШЭ приобретает статус электронной публикации.

ВКР являются объектами авторских прав, на их использование распространяются ограничения, предусмотренные законодательством Российской Федерации об интеллектуальной собственности.

В случае использования ВКР, в том числе путем цитирования, указание имени автора и источника заимствования обязательно.

Реестр дипломов НИУ ВШЭ