Искусственный интеллект Microsoft поможет в отладке кода

Исследователи Microsoft разработали решение искусственного интеллекта (ИИ), которое, по их мнению, может помочь программистам быстрее и точнее производить отладку своих приложений.
Искусственный интеллект Microsoft поможет в отладке кода

Искусственный интеллект Microsoft поможет в отладке кода. Фото: Tara Winstead, Pexels

ИИ, получивший название BugLab, основан на игровой модели «прятки» и работает аналогично тому, как создаются Генеративные состязательные сети (GAN).

Детализируя исследование в блоге, исследователи Милтос Алламанис (главный исследователь) и Марк Брокшмидт (старший главный менеджер по исследованиям) объяснили, как они создали две сети и противопоставили их друг другу, как в игре в прятки.

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

Исследователи объяснили, что эти две модели обучались совместно, без помеченных данных, под самоконтролем, на «миллионах фрагментов кода». 

Несмотря на то, что идея заключалась в создании программы, которая может идентифицировать произвольно сложные ошибки, они все еще «вне досягаемости современных методов искусственного интеллекта», утверждают исследователи. Вместо этого они сосредоточились на часто возникающих ошибках, таких как неправильные сравнения, неправильные логические операторы, неправильное использование переменных и аналогичные ошибки. 

Тестирование проводилось на Python , и после обучения приложение пришло время протестировать его в реальной жизни. 

Из сообщения в блоге компании:

«Чтобы измерить производительность, мы вручную аннотируем небольшой набор данных об ошибках из пакетов в индексе пакетов Python такими ошибками и показываем, что модели, обученные с помощью нашего метода« прятки », на 30% лучше по сравнению с другими альтернативами, например , детекторы обучаются со случайно вставленными ошибками»

Исследователи  назвали результаты «многообещающими», поскольку около четверти (26%) ошибок можно найти и исправить автоматически. Более того, среди обнаруженных ошибок было 19 ранее неизвестных. 

Тем не менее, в работе ИИ пока много ложных срабатываний, что привело исследователей к выводу, о необходимости гораздо большего времени на обучения, прежде чем такую ​​модель можно будет применить на практике.

Startpack подготовил список облачных инструментов для отдела разработки по отслеживанию жизненного цикла программного обеспечения. В него вошли сервисы для управления средами разработчиков, совместной разработки, контроля версий, тестирования и масштабирования разрабатываемого ПО, канбан-доски для отслеживания спринтов при совместной разработке, автоматические решения для отделов тестирования и контроля качества по проведению тестов и выявлению ошибок, а также аналитические системы для оценки работы разработчиков и скорости выхода релизов.

Статьи по теме

Больше интересного

Актуальное

LastPass объявляет об интеграции с Google Workspace
1,6 миллиона сайтов WordPress подверглись шквалу атак за 36-часовой период
Avast приобретает независимую фирму Evernym
Ещё…