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

Методы работы с данными приобретают все большую популярность во всех областях исследований и индустрий, в том числе и в области программной инженерии. Задача группы — объединить последние разработки data science и программной инженерии для создания новых способов написания и улучшения кода.

Текущая область интересов группы:

  • Подходы к обнаружению дефектов объектно-ориентированной архитектуры и автоматическая рекомендация соответствующих рефакторингов для оптимизации структуры кода.
  • Обнаружение клонов в программном коде и разработка инструментов для автоматизированного выделения и переиспользования общего кода.
  • Построение векторных представлений кода для решения задач, таких как поиск плагиата, предсказание имён идентификаторов в коде или суммаризация кода.
  • Анализ динамики изменения стиля того, как люди пишут код.
  • Использование исторических данных для улучшения инструментов взаимодействия разработчиков, например, при помощи систем рекомендации.
  • Поиск аномалий в коде.
  • Автогенерация участков кода по описаниям на естественном языке, по набору используемых API вызовов и т.п.
  • Разработка ассистентов написания кода: например, поиск и автоматическое исправление типовых ошибок, рекомендация функций IDE, анализ контекста разработки и намерений разработчика.
  • Анализ покоммитной истории в репозиториях исходного кода с целью предсказания последующих изменений, мест проявления ошибок и других событий.
  • Методы обнаружения и автокоррекции ошибок в коде.

Текущая область интересов группы:

  • Подходы к обнаружению дефектов объектно-ориентированной архитектуры и автоматическая рекомендация соответствующих рефакторингов для оптимизации структуры кода.
  • Обнаружение клонов в программном коде и разработка инструментов для автоматизированного выделения и переиспользования общего кода.
  • Построение векторных представлений кода для решения задач, таких как поиск плагиата, предсказание имён идентификаторов в коде или суммаризация кода.
  • Анализ динамики изменения стиля того, как люди пишут код.
  • Использование исторических данных для улучшения инструментов взаимодействия разработчиков, например, при помощи систем рекомендации.
  • Поиск аномалий в коде.
  • Автогенерация участков кода по описаниям на естественном языке, по набору используемых API вызовов и т.п.
  • Разработка ассистентов написания кода: например, поиск и автоматическое исправление типовых ошибок, рекомендация функций IDE, анализ контекста разработки и намерений разработчика.
  • Анализ покоммитной истории в репозиториях исходного кода с целью предсказания последующих изменений, мест проявления ошибок и других событий.
  • Методы обнаружения и автокоррекции ошибок в коде.

Семинары

Мы проводим открытые семинары и встречи читательского клуба, на которых мы представляем и обсуждаем интересные результаты, полученные нами и коллегами. Присоединяйтесь к нашей meetup-группе, чтобы быть в курсе предстоящих встреч.

Записи прошедших семинаров смотрите на нашем YouTube-канале.

Материалы

24 октября 2023 г.

Curiosity-Driven Researchers: Between Industry and Academia. Часть 2

Во второй части интервью руководитель исследовательской лаборатории Тимофей Брыксин рассуждает о будущем IDE, LLM-инструментах и меняющейся роли разработчика.

Читать интервью

Состав

Timofey Bryksin
Руководитель лаборатории
Danny Dig
Научный консультант
Максим Шептяков
Менеджер продукта
Ольга Гальченко
Координатор проекта
Егор Богомолов
Старший исследователь
Ярослав Голубев
Старший исследователь
Рауф Курбанов
Старший исследователь
Владислав Танков
Старший исследователь
Михаил Архипов
Исследователь
Елизавета Арцер
Исследователь
Анастасия Бирилло
Исследователь
Александра Елисеева
Исследователь
Михаил Евтихиев
Исследователь
Тимур Галимзянов
Исследователь
Евгений Глухов
Исследователь
Евгений Григоренко
Исследователь
Константин Гротов
Исследователь
Юрий Худяков
Исследователь
Zarina Kurbatova
Исследователь
Денис Литвинов
Исследователь
Анна Потрясаева
Исследователь
Agnia Sergeyuk
Исследователь
Anton Shapkin
Исследователь
Олег Смирнов
Исследователь
Мария Тигина
Исследователь
Сергей Титов
Исследователь
Тимофей Василевский
Исследователь
Илья Власов
Исследователь
Ярослав Жаров
Исследователь
Dariia Karaeva
Разработчик
Vladimir Poliakov
Разработчик