Ученые Кембриджского университета и эксперты Майкрософта при помощи машинного обучения изобрели программу, предназначенную для создания других программ. Этот софт получил название DeepCoder. Глубокий Кодер справляется со своей задачей при помощи заимствования чужого кода.
Сегодня существует немало методов программирования как низкого, так и высокого уровней. Для эффективной работы специалистам требуется знать несколько машинных языков. Что делает программирование недосягаемым для людей, не изучавших эти языки. Как уверяют разработчики, DeepCoder в будущем даст возможность программировать даже людям, не обладающим специальными знаниями. Для создания программы им достаточно будет описать словами желаемый результат. Программе для выполнения поставленной задачи требуются только входные и выходные данные. Анализируя их, DeepCoder способен самостоятельно искать в других программах фрагменты кодов и составить из них свою собственную программу.
Подобный принцип применили ранее для более узкой задачи ученые Массачусетского университета. В январе прошлого года они презентовали программу Prophet, способную в автономном режиме находить и исправлять неточности в коде других программ. В своей работе Prophet пользуется данными о результативных патчах и использует их исходный код из открытых источников. Prophet анализирует исходный код программного обеспечения, состоящий из десятков тысяч строк и создает новые способные к самообучению алгоритмы.