Введение

Методология обработки естественного языка Грамматика ограничений (CG) - это методологическая парадигма для обработки естественного языка (NLP). Лингвист пишет, контекстные правила компилируются в грамматику, которая присваивает грамматические теги ("читывания") для слов или других знаков в тексте. Типичные теги адресуют лемматизацию (лексему или базовую форму), инфлексию, деривацию, синтаксическую функцию, зависимость, валентность, роли случая, семантический тип и т. Д. Каждое правило либо добавляет, удаляет, выбирает или заменяет тег или набор грамматических тегов в контексте данного предложения. Контекстные условия могут быть связаны с любым тегом или набором тегов любого слова в любом месте предложения, либо локально (определенные расстояния), либо глобально (неопределенные расстояния). Контекстные условия в одном и том же правиле могут быть связаны, т.е. обусловлены друг другом, отрицаются или блокируются вмешивающимися словами или тегами. Типичные КГ состоят из тысяч правил, которые применяются постепенно, охватывая все более продвинутые уровни анализа. В каждом уровне безопасные правила используются до эвристических правил, и ни одному правилу не разрешается удалять последнее считывание данного типа, обеспечивая таким образом высокую степень надежности. Концепция CG была запущена Фредом Карлссоном в 1990 году (Karlsson 1990; Karlsson et al., eds, 1995), и с тех пор CG-таггеры и анализаторы были написаны для большого количества языков, регулярно достигая точности F-баллов для части речи (класса слов) более 99%. Ряд синтаксических систем CG сообщили о F-оценках около 95% для ярлыков синтаксических функций. Системы CG могут использоваться для создания полных синтаксических деревьев в других формализмах путем добавления небольших, не терминальных грамматик структуры фраз или грамматик зависимостей, и ряд проектов Treebank использовали CG для автоматической аннотации. Методология компьютерной грамотности также использовалась в ряде приложений языковых технологий, таких как проверка орфографии и системы машинного перевода.

CG-1

Первой реализацией CG был CGP Фреда Карлссона в начале 1990-х годов. Он был полностью основан на LISP, а синтаксис был основан на выражениях LISP (Karlsson 1990).

CG-2

Внедрение mdis CG 2 Паси Тапанайнена удалило некоторые скобки в формате грамматики и было реализовано в C++, интерпретируя грамматику как конечный преобразователь для скорости. CG 2 был позже повторно реализован (с использованием метода, не связанного с FST) группой VISL в Syddansk Universitet как открытый исходный код VISL CG, сохранив тот же формат, что и закрытый исходный код Tapanainen.