Ученые из США разработали алгоритм преобразования обычных слов в программный код

Незнакомый с программированием человек сможет заменить серьезного программиста

16 июля 2013 в 13:48, просмотров: 2049

Сотрудники лаборатории Computer Science and Artificial Intelligence Массачусетского технологического института (MIT) продемонстрировали, что для ряда специфических задач вполне возможно написать компьютерные программы, используя обычный язык вместо специализированных языков программирования.

Ученые из США разработали алгоритм преобразования обычных слов в программный код

Полученные в MIT результаты могут помочь людям, незнакомым с программированием, более эффективно манипулировать стандартными типами файлов, такими как документы текстового процессора или редактора электронных таблиц.

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

В работе, представленной в июне на ежегодной Североамериканской конференции Ассоциации компьютерной лингвистики, показано, как на примерах, найденных в Веб, обучить компьютерную систему преобразовывать описания на естественном языке в, так называемые, регулярные выражения.

Хотя, как правило, они плохо согласуются с естественным языком, ученые установили, что каждому регулярному выражению можно найти (пусть и не такой компактный) эквивалент, удачно переносимый на обычный язык. Более того, применив математическую конструкцию, известную как теория графов, можно представить все эквивалентные версии регулярного выражения сразу.

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

В другом докладе, подготовленном для августовской конференции Ассоциации, описывается автоматическое обучение системы обращению с данными, записанными в различных форматах, пишет "Компьютерное обозрение". Разработанная в MIT система способна написать код входного синтаксического анализатора (парсер) на основе спецификаций на естественном языке.

В тестах ей удалось создать работающие парсеры примерно для 80% спецификаций. В остальных случаях, с затруднениями, как правило, удавалось разобраться, изменив одно или два слова в спецификации.



Партнеры