Русская Википедия:Грамматический вывод

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Индукция грамматики (или грамматический выводШаблон:Sfn) — процедура машинного обучения, которая восстанавливает формальную грамматику языка на основе набора наблюдений (примеров) с известной принадлежностью этому языку. В результате процедуры строится модель наблюдаемых объектов в виде набора правил вывода или Шаблон:Не переведено 5, конечного автомата или автомата другого вида. В более общем смысле, грамматический вывод — это одно из направлений машинного обучения, в котором пространство примеров состоит из дискретных комбинаторных объектов, таких как строки, деревья, графы.

Классы грамматик

Грамматический вывод часто фокусируется на задаче обучения конечных автоматов различного типа (см. статью Шаблон:Не переведено 5 о деталях этих подходов), поскольку существуют эффективные алгоритмы решения этой задачи с 1980-х годов.

С начала 2000-х эти подходы были распространены на задачу вывода контекстно-свободных грамматик и более богатых формализмов, таких как множественных контекстно-свободных грамматик и параллельных множественных контекстно-свободных грамматик. Другие классы грамматик, для которых изучался грамматический вывод изучался и для других классов грамматик — контекстуальных грамматик и языков образцов (Шаблон:Lang-en).

Модели обучения

Простейший вид обучения — это когда алгоритм обучения получает лишь набор примеров, а иногда и контрпримеров, слов рассматриваемого языка. Существуют и другие модели обучения. Одной из часто изучаемых альтернатив является случай, когда обучающийся может спрашивать о принадлежности слова языку как, например, в модели точного обучения или минимальной адекватной модели учителя (Шаблон:Lang-en), которую ввела АнглуинШаблон:Sfn.

Методологии

Разработано большое разнообразие методов для грамматического вывода. Два классических источника — статьи Фу 1977 годаШаблон:Sfn и 1982 годаШаблон:Sfn. Дуда, Харт и СторкШаблон:Sfn также посвятили небольшой раздел этой проблеме и цитируют много источников. Базовый метод проб и ошибок, который они представили, обсуждается ниже. Для подходов по выводу подклассов регулярных языков, в частности, см. Шаблон:Не переведено 5. Более свежей книгой является книга де ла Хигеры (2010)Шаблон:Sfn, в которой освещается теория грамматического вывода регулярных языков и конечных автоматов. Д’Улизия, Ферри и ГрифониШаблон:Sfn дали обзор исследований по методам грамматического вывода для естественных языков.

Грамматический вывод методом проб и ошибок

Метод, предложенный в разделе 8.7 статьи Дауда, Харта и СторкаШаблон:Sfn, предлагает последовательное угадывание грамматических правил и проверки их на положительных и отрицательных наблюдениях. Набор правил расширяется так, чтобы можно было сгенерировать каждый положительный пример, но если данный набор правил генерирует отрицательный пример, он должен быть отброшен. Этот конкретный подход можно охарактеризовать, как «проверка гипотезы», представляет собой некоторое подобие алгоритма Митчела Шаблон:Не переведено 5. Текст статьи Дауда, Харта и СторкаШаблон:Sfn даёт простой пример, который хорошо иллюстрирует процесс, но выполнимость такого неуправляемого подхода проб и ошибок для более крупных задач сомнительна.

Грамматический вывод с помощью генетических алгоритмов

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

Коза представил программы языка Lisp как деревья. Он сумел найти аналогии среди генетических операторов стандартным операторам на деревьях. Например, обмен поддеревьев эквивалентен соответствующему процессу генетического кроссинговера, где подстроки генетического кода преобразуются в индивидуальность следующего поколения. Годность измеряется путём оценки выходного кода Шаблон:Не переведено 5 Lisp. Похожие аналогии между древесными структурами представлений языка Lisp и представлениями грамматик в виде деревьев, делают технику применения генетического программирования возможной для индукции грамматики.

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

Грамматический вывод с помощью жадных алгоритмов

Подобно всем жадным алгоритмам, жадные алгоритмы грамматического вывода принимают в итеративной манере решение, которое кажется лучшим на данном этапе. Под решением обычно понимают создание нового правила, удаление существующего правила, выбор применяемого правила, слияние существующих правил. Поскольку понятия «этап» и «лучший» можно определить по-разному, создано несколько алгоритмов жадного грамматического вывода.

Следующие алгоритмы порождения контекстно-свободных грамматик принимают решение после каждого прочитанного символа:

Следующие алгоритмы генерации контекстно-свободных грамматик сначала читают всю последовательность символов, а затем начинают принимать решения:

Дистрибутивное обучение

Более свежие подходы основываются на Шаблон:Не переведено 5. Алгоритмы, использующие эти подходы, были применены к обучению контекстно-свободным грамматикам и Шаблон:Не переведено 5, и была доказана их корректность и эффективность для больших подклассов этих грамматикШаблон:SfnШаблон:Sfn

Обучение Шаблон:Не переведено 5

Англуин определила образец как «строку постоянных символов из алфавита Σ и переменных символов из непересекающегося множества». Язык таких образцов является набором всех непустых основных примеров, то есть всех строк, получающихся соответствующей заменой переменных символов непустыми строками постоянных символов[note 1]. Образец называется описательным для конечного набора строк, если его язык минимален (учитывая включение множеств) среди всех языков образцов, включая входное множество.

Англуин дала полиномиальный алгоритм для вычисления из заданного входного множества строк всех описательных образцов от одной переменной x[note 2]. С этой целью она строит автомат, представляющий все возможные относящиеся к делу образцы. Используя изощрённые аргументы о длинах слов, которые зависят только от единственной переменной x, число состояний может быть значительно сокращеноШаблон:Sfn.

Эрлебах с сотрудниками дал более эффективную версию алгоритма Англуин обучения образцам, а также параллельную версию алгоритмаШаблон:Sfn.

Аримура и др. показали, что класс языков, полученный из ограниченного объединения образцов, может быть обучен за полиномиальное времяШаблон:Sfn.

Теория образцов

Шаблон:Не переведено 5 (Шаблон:Lang-en), сформулированная Ульфом ГренандеромШаблон:Sfn, является математическим формализмом для описания знаний о мире в виде образцов. Отличием предложенного подхода к искусственному интеллекту от других состоит в том, что он начинается не с определения алгоритмов и машин для распознавания и классификации образов. Скорее, метод предписывает словарь для формулирования и переписывания образцов на точном языке.

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

  • Распознавания скрытых переменных набора данных, используя данные реального мира, а не искусственных воздействий.
  • Определения априорного распределения скрытых переменных и модели для наблюдаемых переменных, которые образуют вершины графа, подобного графу Гиббса.
  • Изучения случайности и вариативности этих графов.
  • Создания базовых классы стохастических моделей, применяемых путём перечисления деформацийШаблон:Термин образцов.
  • Осуществления синтеза (сэмплирования) с помощью моделей, а не только изучение сигналов

Приложения

Принципы индукции грамматики были применены у другим аспектам обработки естественного языка, и (среди многих других задач) к Шаблон:Не переведено 5Шаблон:Sfn, машинному переводу на основе примеров Шаблон:Sfn, анализе морфем и вывода происхождения названий мест. Индукция грамматики использовалась также для сжатия без потерьШаблон:Sfn и статистического вывода через принципы сообщений минимальной длины и описаний минимальной длины. Индукция грамматики использовалась также в некоторых Шаблон:Не переведено 5Шаблон:Sfn.

См. также

Примечания

Шаблон:Примечания

Шаблон:Примечания

Литература

Шаблон:Refbegin

Шаблон:Refend Шаблон:Машинное обучение Шаблон:Rq


Ошибка цитирования Для существующих тегов <ref> группы «note» не найдено соответствующего тега <references group="note"/>