Грамматический словарь

Что это такое

Грамматический словарь состоит из нескольких подсистем. Функционально выделяются:

грамматики - алфавит, лексикон, фонетика

автоматы - морфологический анализатор, синтаксический анализатор, движок трансформаций, фонетический анализатор, логическая машина

работа со структурированным тексом - сегментатор и токенизатор

тезаурус

движок N-грамм.

Исходные материалы для наполнения словаря - это множество текстовых файлов, содержащих спецификации на языке ПРИИСК. Эти текстовые файлы обрабатываются программой компилятор словаря для получения загружаемых бинарных файлов.

В некоторых случаях удобнее работать со словарем, загруженным в реляционную базу данных, средствами SQL. Такой словарь имеет функциональные ограничения в сравнении с возможностями полного API, но зато позволяет работать с грамматикой (выполнять лемматизацию, склонять существительные и прилагательные, спрягать глаголы) на самых разных языках программирования. Кроме того, становится просто вносить изменения в словарь - SQL операторами либо с помощью Редактора Словаря SQLex.

Компиляция словаря

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

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

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

Версии словарей

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

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

Объем словаря

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

Некоторая дополнительная статистика по словарю приведена в описании лексикона.

Дополнительные материалы

Ключевые особенности грамматического словаря

Внутренний язык грамматической машины

Грамматический Словарь Русского Языка

Особенности представления русской морфологии

SQL словарь

Спряжение русских глаголов

Спряжение английских глаголов

Склонение русских существительных

Склонение английских существительных

Склонение прилагательных и причастий

Русские наречия

Словообразование

Структурные единицы словаря

  © Козиев Илья 2019
изменено 05-Feb-12