Швейцарский запуск DeepCode разрабатывает автоматическую систему проверки кода на основе глубокого обучения, отчеты Venturebeat .
Недавно компания закрыла первый инвестиционный раунд и получила на свое развитие $4 млн.
Технология, предложенная командой DeepCode, основана на семантическом анализе кода в сочетании с обучением нейронных сетей с использованием больших данных.
Самое интересное в этой разработке то, что в качестве базы данных для обучения сети будет использоваться код публичных репозиториев GitHub.
Кликабельно
Разработчики делят весь процесс на несколько этапов.
Первый — это разметка базы данных, то есть парсинг самого GitHub и сортировка данных.
Главным параметром будет язык программирования, на котором написан проект. Далее идет маркировка данных и подготовка разобранного кода для потребления нейросетью.
Ну и последний, третий этап — обучение самого DeepCode. В результате мы получаем продукт, способный анализировать загруженный код не только с точки зрения банального синтаксиса и наличия актуальных ошибок, но и с точки зрения его полезности.
В качестве примера приведен анализ пул-реквестов к мастеру на том же GitHub. DeepCode сможет ответить не только на вопрос «сколько ошибок в коде», но и предоставить информацию о количестве новых функций и потенциальных конфликтах с существующей кодовой базой.
То есть разработка способна проводить как code review, так и QA-аудит кода.
Разработчики утверждают, что в отличие от других популярных анализаторов кода, DeepCode сосредоточится не только на соблюдении синтаксиса и поиске ошибок форматирования, но и сможет выявлять серьезные проблемы.
Примером может служить обнаружение XSS- или SQL-инъекций.
Все это становится доступным именно благодаря исходному источнику данных для обучения системы — благодаря проектам с открытым исходным кодом на GitHub. Именно благодаря открытому исходному коду разработчики могут обучать сеть не только тому, как должен выглядеть правильный код, но и добавлять в процесс обучения анализ данных об изменениях, вносимых по ходу проекта.
То есть DeepCode не учится из статических репозиториев, а анализирует весь код, когда-либо написанный в рамках проекта.
Таким образом, система может выработать для себя общие принципы анализа и изучить логику развития, а также увидеть как сами ошибки, так и способы их исправления в ходе обучения.
DeepCode уже доступен в тестовом режиме и вы можете попробовать его возможности здесь после авторизации через GitHub или Bitbucket. Для тех, кто использует локальные системы хранения кода, команда предлагает возможность интеграции через Docker-контейнер, который доступен по запросу.
Вы можете отправить заявку по этот адрес электронной почты .
С помощью официальной документации вы можете читай здесь .
Теги: #Машинное обучение #github #программирование #нейронные сети #Большие данные #itsumma #DeepCode #анализ кода
-
Хабра-Интервью С Майклом Видениусом (Mysql)
19 Oct, 24 -
Звездные Войны: Отредактировано
19 Oct, 24 -
Сервер Teeworlds
19 Oct, 24 -
Подкаст. Открытые Двери
19 Oct, 24 -
Официальный Релиз Антивируса Касперского 7
19 Oct, 24 -
Одна Крутая Суть: Whiteboardcleaner
19 Oct, 24