Пример грамматики.
1. V.
2. U.
3. В.
4. P=BF.
5. Q = P
U,
6.R=QF.
7.F=V
R.
Пусть α, β и γ — типы вершин, соответствующие трем типам категорий. Приведенную выше грамматику можно представить графом (рис. 5.65).

Рис.5.65.
Заметим, что поименованными в графе оказываются только вершины типа α и рекурсивно используемая вершина. Используя распределительное свойство и подстановки, имеем
![]()
Результаты можно интерпретировать как грамматику некоторого простого префиксного языка, в котором F обозначает формулу, V—переменную, В — двоичный оператор и U — единичный оператор. Рекурсивное определение формулы имеет вид:
1. Переменная.
2. Двоичный оператор, за которым следуют две формулы.
3. Единичный оператор, за которым следует одна формула.
Соответствующий граф показан на рис. 5.66.

Рис. 5.66.
Граф грамматики называется Г-графом языка и используется для получения всех цепочек и опознавания любых произвольно заданных цепочек. Цепочки префиксного языка имеют вид;

Заметим, что
1. Г-граф языка конечен.
2. Множество всех цепочек ∑ конечно.
3. Множество всех цепочек ∑ неречислимо.
4. Произвольная цепочка ∑k может быть представлена деревом. Например, на рис. 5.67 показано дерево, соответствующее цепочке ∑6, приведенной выше.

Pис. 5.67
∑-графы представляют собой ориентированные растущие из корня деревья, каждая вершина которых поименована соответствующим названием категории. Обычно требуется, чтобы ∑-графы формальных языков были связны и представляли собой деревья, а не леса (в терминологии теории графов). Кроме того, обычно предполагает - ся, что цепочки языка определены однозначно, т. е. каждой цепочке соответствует единственный ∑-граф. Можно определить, является ли заданная цепочка неоднозначной при заданной грамматике. Задача определения неоднозначной грамматики или вообще языка (который может иметь много различных грамматик) оказывается более сложной. Действительно, было показано, что задача определения однозначности (или неоднозначности) формальной грамматики рассматриваемого типа неразрешима. С другой стороны, если цепочки языка перечислимы, то можно проверить на однозначность достаточно большое их число.
Основной задачей математической лингвистики является создание эффективных алгоритмов машинного опознавания цепочек. При этом используется много различных приемов, в частности, указатели ограничений просмотра назад и функции предшествования для каждой категории (например, «не выходить за пределы структуры предложения», «не искать глагольной группы до нахождения группы существительного»).
Полезно найти особые ограничения или обобщения Г-графов языка. Одно из интересных обобщений связано с заданием некоторых функций длины на дугах графа. В начальный момент длины всех дуг одинаковы. По мере последовательного использования дуг значения их функции длины возрастают. Альтернативные варианты путей выбираются всегда с учетом длины. Таким образом, накапливая «опыт», машина улучшает качество своей работы. Если такую взвешивающую схему встроить, например, в транслятор с ФОРТРАНа, то транслятор сможет в некотором смысле обучиться распознаванию стиля и почерка отдельных программистов.
Необходимо помнить, что математическая лингвистика изучает не столько сам язык, сколько занимается анализом структур и методами распознавания в линейных цепочках. Основное внимание в ней концентрировалось на искусственных языках и специальных подмножествах естественного языка, и главная задача состояла в проведении чисто механического анализа.
Цель одного разработанного проекта состоит в том, чтобы найти структурную характеристику больших массивов табличных данных. В этом случае алфавит состоит из элементов таблицы — множеств взаимосвязанных свойств — которые можно распознать. Категории информации определяются структурно из элементов таблиц.
ДОПОЛНИТЕЛЬНЫЕ ПРИЛОЖЕНИЯ
5.29. Математические машины и цепи Маркова
Многие реальные системы можно характеризовать, выделяя различные состояния, в которых они могут находиться, и задавая их реакции на поступление произвольных входных воздействий при нахождении систем в любом заданном состоянии. Как правило, реакция
системы проявляется в форме перехода из одного состояния в другое и формирования соответствующего выходного сигнала. Формализация предыдущей идеи приводит к понятию математической машины.
Новые теории в основном опираются на элементарные теоремы, но тем не менее приводят к трудным комбинаторным задачам, которые, вероятно, удобно решать методами теории графов.
Определение. Машина есть математическая система, которая состоит из
1) конечного множества S={s1,..., sm} элементов, называемых состояниями,
2) конечного множества Х={х1,.,., хп} элементов, называемых входами,
3) конечного множества Y={y1,..., уk} элементов, называемых выходами,
4) функции перехода Т, которая отображает S×Х нa S,
5) функции выхода Ω, которая отображает S ×Х на Y.
Если s
S и х
Х, то s'=T(s, x) интерпретируется как следующее состояние, в которое попадает машина из текущего состояния s при воздействии входного сигнала х. Аналогично, y=Ω(s, x) есть выходной сигнал машины, находящейся в состоянии s при воздействии входного сигнала х. Множества X и Y называются соответственно входным и выходным алфавитом (хотя природа их элементов существенно изменяется в зависимости от рассматримаемых задач).
Машины, соответствующие данному определению, можно классифицировать по нескольким признакам. Во-первых, они являются детерминированными, так как их выходной сигнал и следующее состояние полностью определяются входным сигналом и текущим состоянием. Далее, такие машины являются последовательностными, так как входные сигналы подаются в дискретные моменты времени
t1, t2, t3, а не непрерывно. Они являются полными, т. е. каждая комбинация состояния и входного сигнала (входа) имеет смысл и дает известный выходной сигнал (выход) и новое состояние. Они не имеют памяти в том смысле, что текущий выход и следующее состояние не зависят от прошлых входов, состояний или выходов. Наконец, они стационарны в том смысле, что функция переходов Т и функция выхода Ω не зависят от рассматриваемого момента времени. Изменив некоторые или все из названных предположений, можно получить определение машины более общего вида.
Иногда машину удобно изображать ориентированным графом, вершины которого соответствуют состояниям, а дуги характеризуют X, Y, Т и Ω.
Сказанное проще всего пояснить на примере. Рассмотрим машину, для которой
S={s1,s2, s3, s4}, Х={0,1} и Y={a, b, с}.
Одна из возможных машин с множеством состояний S и алфавитами X и Y представлена в виде графа рис. 5.68.

Рис. 5.68.
Каждая вершина соответствует одному состоянию. Начальная вершина инцидентна точно двум дугам (в общем случае, k дугам, где k — число различных входов). Если некоторая дуга идет из вершины s в вершину s' и ей соответствует упорядоченная пара (х, у), то T(s, x) = s', Ω(s, x)=y. Например, если текущее состояние системы s3, то вход 0 даст выход b и переведет систему в состояние s4. С другой стороны, вход 1 дает выход а и система останется в состоянии s3. (Практически число дуг можно уменьшить, помечая некоторые дуги несколькими упорядоченными парами, если несколько входов дают одно и то же следующее состояние.) Отдельные состояния и множества можно классифицировать по структурным признакам соответствующего графа. Например, машина называется сильно связной, если ей соответствует сильно связный граф. Независимо от начального состояния s такую машину можно всегда перевести в любое другое состояние s' с помощью соответствующей последовательности входов (не обязательно за один шаг). Состояние s называется переходным, если из соответствующей ему вершины выходит, по крайней мере, одна дуга (s, t), где t≠s, и если эта вершина не является конечной ни для одной дуги (и, s), где и≠s. Например, s1 — переходное состояние. Состояние s1, которому соответствует вершина, являющаяся конечной, по крайней мере, для одной дуги (t, s), где t≠s, и не являющаяся начальной ни для одной дуги (s, и) где s≠и, называется устойчивым. (Рассматриваемая машина не имеет отдельных устойчивых состояний. Однако состояние s2, s3 и s4 совместно образует в соответствующем смысле устойчивое множество состояний).
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |


