Deepcode — Система Анализа Кода, Основанная На Глубоком Обучении

Швейцарский запуск DeepCode разрабатывает автоматическую систему проверки кода на основе глубокого обучения, отчеты Venturebeat .

Недавно компания закрыла первый инвестиционный раунд и получила на свое развитие $4 млн.

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

Самое интересное в этой разработке то, что в качестве базы данных для обучения сети будет использоваться код публичных репозиториев GitHub.

DeepCode — система анализа кода, основанная на глубоком обучении

Кликабельно Разработчики делят весь процесс на несколько этапов.

Первый — это разметка базы данных, то есть парсинг самого GitHub и сортировка данных.

Главным параметром будет язык программирования, на котором написан проект. Далее идет маркировка данных и подготовка разобранного кода для потребления нейросетью.

Ну и последний, третий этап — обучение самого DeepCode. В результате мы получаем продукт, способный анализировать загруженный код не только с точки зрения банального синтаксиса и наличия актуальных ошибок, но и с точки зрения его полезности.

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

То есть разработка способна проводить как code review, так и QA-аудит кода.

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

Примером может служить обнаружение XSS- или SQL-инъекций.

Все это становится доступным именно благодаря исходному источнику данных для обучения системы — благодаря проектам с открытым исходным кодом на GitHub. Именно благодаря открытому исходному коду разработчики могут обучать сеть не только тому, как должен выглядеть правильный код, но и добавлять в процесс обучения анализ данных об изменениях, вносимых по ходу проекта.

То есть DeepCode не учится из статических репозиториев, а анализирует весь код, когда-либо написанный в рамках проекта.

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

DeepCode уже доступен в тестовом режиме и вы можете попробовать его возможности здесь после авторизации через GitHub или Bitbucket. Для тех, кто использует локальные системы хранения кода, команда предлагает возможность интеграции через Docker-контейнер, который доступен по запросу.

Вы можете отправить заявку по этот адрес электронной почты .

С помощью официальной документации вы можете читай здесь .

Теги: #Машинное обучение #github #программирование #нейронные сети #Большие данные #itsumma #DeepCode #анализ кода

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.