УДК 519.7
С.Ю. ШАБАНОВ-КУШНАРЕНКО, К.Г. ПАРАСУНЬКО
ЛОГИЧЕСКАЯ СЕТЬ ЗВУКОВОГО СКЛОНЕНИЯ ИМЕН ПРИЛАГАТЕЛЬНЫХ
На основе алгебрологического аппарата логических сетей разрабатывается логическая сеть звукового склонения имен прилагательных. Полученная логическая сеть может работать в режимах синтеза и анализа словоформ имен прилагательных, вычисляя неизвестные морфологические признаки по заданным, а также обеспечивая параллельную обработку уравнений алгебры предикатов при аппаратной реализации ЛС.
1. Введение
Материалы настоящей работы базируются на аппарате алгебры конечных предикатов и предикатных операций [1, 2], являющихся эффективным универсальным математическим средством для описания информации. На языке этих алгебр легко и удобно описывать различную формализуемую информацию, моделировать интеллектуальную деятельность человека. Известно [3], что алгебра конечных предикатов (АКП) полна, т.е. на ее языке могут быть описаны любые конечные отношения. Поэтому любой другой математический аппарат, предназначенный для описания произвольных конечных отношений, в логическом смысле обязательно будет эквивалентен алгебре конечных предикатов. В статье на базе АКП развивается алгебрологический аппарат логических сетей (ЛС) [4]. Логическая сеть предназначена для выполнения действий над отношениями. Отношения выражают свойства предметов и связи между ними. Логические сети представляют собой универсальное, простое и естественное средство наглядного представления структуры любых объектов. С математической точки зрения ЛС - это система бинарных предикатов.
Цель настоящей работы - разработать логическую сеть звукового склонения имен прилагательных.
Для достижения поставленной цели необходимо решить следующие задачи:
- задать систему переменных сети и создать модель ЛС в виде графа;
- промоделировать работу ЛС на всех наборах значений переменных;
- выполнить полную бинаризацию с использованием промежуточных переменных.
2. Задание структуры полюсов бинарной логической сети
Результаты статьи являются естественным продолжением работ авторов М.Ф. Бонда-ренко, Ю.П. Шабанова-Кушнаренко и др. [4] Любая логическая сеть состоит из полюсов и ветвей. Каждому полюсу логической сети ставится в соответствие своя предметная переменная модели, которая называется атрибутом этого полюса. Каждый полюс обозначается своей предметной переменной. С каждым полюсом связываем его домен, т.е. область изменения атрибута этого полюса. Любой полюс логической сети в каждый момент времени несет какое-то знание о значении своего атрибута. Это знание называется состоянием полюса. Оно представляет собой одно из подмножеств домена полюса. Указывая состояния всех полюсов сети в данный момент времени, получаем состояние сети в тот же момент времени.
Области изменения всех предметных переменных для сети склонения полных непритяжательных имен прилагательных. Область изменения переменной х1 обозначаем символом А1, имеем: АХ=(М, Ж, С}; х2 - А2={Е, М}; х3 - А3={И, Р, Д, В, Т, П}; х4 - А4={Н, О}; х5 - А5={С, А}; q - А6={1, 2, ..., 19}; t - А7={1, 2, ..., 7}; у1 - А8={Б, В, Г, Д, Е, Ж, З, К, Л, М, Н, П, Р, С, Т, Х, Ц, Ч, Ш, Щ}; у2 - А9={Б, У}; уз - А1()={Т, М}; 2л - АП={А, А', Я, У, У', Ю, О, О', Е, Ы, Ы', И, И'}; - А 12={Я, Ю, Е, Й, М, ГО, МУ, Х, МИ}; 2 - А0={АЯ, А'Я, ЯЯ, УЮ, У'Ю, ЮЮ, ОЕ, О'Е, ЕЕ, ОЙ, О'Й, ЕЙ, ОМ, О'М, ЕМ, ОГО, О'ГО, ЕГО, ОМУ, О'МУ, ЕМУ, ОЮ, О'Ю, ЕЮ, ЫЙ, ИЙ, ЫМ, Ы'М, ИМ, И'М, ЫЕ, Ы'Е, ИЕ, И'Е, ЫХ, Ы'Х, ИХ, И'Х, ЫМИ, Ы'МИ, ИМИ, И'МИ}; 2,, - Аи={*, '}; 21 - А15={А, Я, У, Ю, О, Е, Ы, И}; 22 - А^={Я, Ю, Е, Й, М, Г, Х }; 23 - Ап={*, О, У, И}.
Каждой ветви логической сети ставится в соответствие свое бинарное отношение модели, которое называется отношением этой ветви. Каждая ветвь обозначается номером своего отношения. Она соединяет два полюса, отвечающие тем предметным переменным, которые связываются отношением, соответствующим данной ветви. Например, ветвь 1 соответствует отношению Р1(х1, q), поэтому она соединяет полюсы хх и q. Всего в построенной нами сети имеется 17 полюсов и 17 ветвей. Случайно получилось так, что число полюсов сети совпало с числом ее ветвей, но такое совпадение не обязательно. Полюсы сети делятся на два класса - внешние и внутренние. Каждый внешний полюс соединен лишь с одной ветвью, каждый внутренний - более, чем с одной. В построенной нами сети к внешним относятся полюсы, помеченные предметными переменными хх, х2, х3, х4, х5, у х, у2, у3, zo, z1, z2, z3, к внутренним - q, ^ zл, zп, z. Внешние полюсы сети естественно объединить в три группы: 1) хх, Х2, хз, Х4, Х5; 2) ух, у2, уз; 3) zo, Zl, z2, zз. В первую группу входят полюсы, помеченные теми предметными переменными, значения которых характеризуют контекст, окружающий склоняемое слово. Во вторую группу входят полюсы, характеризующие само склоняемое слово. В третью группу входят полюсы, которые характеризуют результат склонения слова, т.е. словоформу, соответствующую данному контексту и данному слову.
При звуковом склонении полных непритяжательных имен прилагательных в русском языке получаются парадигматические таблицы, отличные от аналогичных таблиц для текстовых форм. Для сравнения здесь приводятся таблицы 1-го типа склонения, соответственно, звуковой и текстовой форм (табл.1, 2):
Таблица 1. 1-й тип склонения, письменная форма, пример слова - новый
МЕ ЖЕ СЕ М
И ВЫИ# ВА#Я ВО#Е ВЫ#Е
Р ВОГО ВОИ# ВОГО ВЫХ#
Д ВОМУ ВОИ# ВОМУ ВЫМИ
В ВЫИ# ВУ#Ю ВО#Е ВЫ#Е
ВОГО ВЫХ#
Т ВЫМ# ВОИ# ВЫМ# ВЫМИ
ВО#Ю
П ВОМ# ВОИ# ВОМ# ВЫХ#
Таблица 2. 1-й тип склонения, звуковая форма, пример слова - новый
МЕ ЖЕ СЕ М
И ВЫИ# ВАИЯ ВОИЕ ВЫИЕ
Р ВОВО ВОИ# ВОВО ВЫХ#
Д ВОМУ ВОИ# ВОМУ ВЫМИ
В ВЫИ# вуИю ВОИЕ ВЫИЕ
ВОВО ВЫХ#
Т ВЫМ# ВОИ# ВЫМ# ВЫМИ
ВОИЮ
П ВОМ# ВОИ# ВОМ# ВЫХ#
Логическую сеть можно использовать для автоматического решения класса задач, относящихся к склонению полных непритяжательных имен прилагательных. Такие задачи ежеминутно решают люди в процессе анализа и синтеза сообщений на естественном языке. Примером задачи этого класса может служить задача синтеза словоформы. Другим примером может служить задача анализа словоформы: заданы форма слова и окружающий ее контекст, требуется определить грамматические признаки, соответствующие этой словоформе. Третьим примером может служить задача нормализации словоформы: заданы форма слова и окружающий ее контекст, требуется отыскать слово, соответствующее этой словоформе.
Каждый человек, владеющий русским языком, практически мгновенно без напряжения и без каких-либо затруднений решает подобные задачи на уровне подсознания. Чтобы прочесть заданное предложение и вникнуть в его содержание, человеку, владеющему русским языком, требуется не более трех секунд. Это значит, что на анализ и нормализацию каждой из трех словоформ (а выполнение этих операций, очевидно, необходимо для понимания смысла предложения) расходуется не более секунды. Если же учесть, что морфологической обработке подвергаются и другие слова предложения и, кроме того, мозг выполняет множество других операций над элементами предложения в процессе его анализа, то мы придем к выводу, что на каждую элементарную операцию по обработке отдельной словоформы расходуется не более 0,1 с.
3. Потактовая работа логической сети
Решая задачу, логическая сеть копирует действия человека, но с той лишь разницей, что человек при этом действует последовательно, а сеть - параллельно. Сеть работает по тактам. Каждый такт делится на два полутакта - первый и второй. В первом полутакте >го такта сеть для каждого из своих уравнений вида К(х, у)=1 (К - это отношение, заданное таким уравнением) отыскивает: 1) по известному знанию Р;(х) о значении переменной х в начале >го такта знание Q'i(у) о значении переменной у в конце ьго такта; 2) по известному знанию Qi(у) о значении переменной у в начале ьго такта знание Р';(х) о значении переменной х в конце >го такта. Математически эти две операции выражаются формулами:
зхеА(К(х, у)ВД^(у); 3хеВ(К(х, у^(у))=ВД.
Здесь А и В - области изменения переменных х и у. Как видим, каждая ветвь сети - это дорога с двусторонним движением.
Во втором полутакте каждого такта сеть отыскивает общую часть Pi+l(x) всех знаний Р'ц(х), Р'й(х),..., Р'ц(х) о значении каждой из своих предметных переменных х, поступающих по ветвям сети со всех сторон к полюсу х. Выражается эта операция следующим образом:
Р'ц(х)ЛРЪ(х)Л ... ЛР'а(х)=р+1(х).
Полученное знание Pi+1(x) затем используется в роли состояния полюса х в начальный момент i+1-го такта. Символ 1 обозначает число ветвей, подходящих к полюсу х. К началу i+1-го такта в каждом полюсе формируется знание-множество Pi+1(x), которое всегда оказывается включенным в знание-множество Р^х), которое содержалось в том же полюсе в начале ьго такта. Так что единственным результатом работы логической сети является уточнение знаний, содержащихся во всех ее полюсах в соответствии с исходными данными.
Рассматриваем работу построенной нами конкретной логической сети по тактам.
Начальное состояние сети: х1 е {М, Ж, С}; х2е {Е, М}; х3 е {И, Р, Д, В, Т, П}; х4 е {Н, О}; х5е {С, А}; qе {1,2, ..., 19}; tе {1,2, ..., 7}; у1е {Б, В, Г, Д, Е, Ж, З, К, Л, М, Н, П, Р, С, Т, Х, Ц, Ч, Ш, Щ}; у2е {Б, У}; у3е {Т, М}; 2л е {А, А', Я, У, У', Ю, О, О', Е, Ы, Ы', И, И'}; 2Пе {Я, Ю, Е, Й, М, ГО, МУ, Х, МИ}; 2е {АЯ, А'Я, ЯЯ, УЮ, У'Ю, ЮЮ, ОЕ, О'Е, ЕЕ, ОЙ, О'Й, ЕЙ, ОМ, О'М, ЕМ, ОГО, О ГО, ЕГО, ОМУ, О МУ, ЕМУ, ОЮ, О'Ю, ЕЮ, ЫЙ, ИЙ, ЫМ, Ы'М, ИМ, И'М, ЫЕ, Ы'Е, ИЕ, И'Е, ЫХ, Ы'Х, ИХ, И'Х, ЫМИ, Ы'МИ, ИМИ, И'МИ}; 20е {*, '}; 21 е {А, Я, У, Ю, О, Е, Ы, И}; 22е {Я, Ю, Е, Й, М, Г, Х}; 23е {*, О, У, И}.
Первый такт.
Первый полутакт. Сужение множеств. Ввод в сеть исходных данных: х3 е {В}, у1 е {Ж}, у2е {Б}, 22е {Й}.
Второй полутакт. Пересечение множеств.
В результате получаем состояние сети к началу второго такта: х1 е {М, Ж, С}; х2е {Е, М}; х3е {В}; х4е {Н, О}; х5е {С, А}; qе {1, 2, ..., 19}; tе {1, 2, ..., 7}; у1е {Ж}; у2е {Б}; у3 е {Т, М}; 2ле {А, А', Я, У, У', Ю, О, О', Е, Ы, Ы', И, И'}; 2пе {Я, Ю, Е, Й, М, ГО, МУ, Х, МИ}; 2е {АЯ, А'Я, ЯЯ, УЮ, У'Ю, ЮЮ, ОЕ, О'Е, ЕЕ, ОЙ, О'Й, ЕЙ, ОМ, О'М, ЕМ, ОГО, О'ГО, ЕГО, ОМУ, О'МУ, ЕМУ, ОЮ, О'Ю, ЕЮ, ЫЙ, ИЙ, ЫМ, Ы'М, ИМ, И'М, ЫЕ, Ы'Е, ИЕ, И'Е, ЫХ, Ы'Х, ИХ, И'Х, ЫМИ, Ы'МИ, ИМИ, И'МИ}; 20е {*, '}; 21 е {А, Я, У, Ю, О, Е, Ы, И}; 22е {Й}; 23е {*, О, У, И}.
Второй такт.
Первый полутакт. Сужение множеств. 1) Движемся от полюса х3 к полюсу q (х3 ^ q). Из отношения Р3 получаем: (Р3:) qе {4, 5, 10, 13, 17, 18}. 2) у1 ^t, Р6: 1е {4, 7}. 3) у2^t, Р10: 1е {6, 7}. 4) уз ^ 1, Рв: tе {1, 3, 6, 7}. 5) z^ гп, Р16: гпе {И}.
Второй полутакт. Пересечение множеств.
Состояние сети к началу третьего такта: х1 е {М, Ж, С}; х2е {Е, М}; х3 е {В}; х4е {Н, О}; х5е {С, А}; qе {4, 5, 10, 13, 17, 18}; 1е {7}; у1е {Ж}; у2е {Б}; у3е {Т, М}; Zле {А, А', Я, У, У', Ю, О, О', Е, Ы, Ы', И, И'}; zпе {И}; zе {АЯ, А'Я, ЯЯ, УЮ, У'Ю, ЮЮ, ОЕ, О'Е, ЕЕ, ОИ, О'И, еи, ОМ, О'М, ЕМ, ОГО, О'ГО, ЕГО, ОМУ, О'МУ, ЕМУ, ОЮ, О'Ю, ею, ыи, ии, ЫМ, Ы'М, ИМ, И'М, ЫЕ, Ы'Е, ИЕ, И'Е, ЫХ, Ы'Х, ИХ, И'Х, ЫМИ, Ы'МИ, ИМИ, И'МИ}; zoе {*, '}; ^е {А, Я, У, Ю, О, Е, Ы, И}; z2е {И}; zзе {*, О, У, И}.
Третий такт.
Первый полутакт. Сужение множеств. 1) zп^q, Р10: qе {1, 4, 9, 11}. 2) 1 ^zл, Р11: zле {А', У', О', И'}. 3) zп^г, Р17: zе {ОИ, О'И, ЕИ, ЫИ, ИИ}. 4) zп^zз, Р17: zзе {*}. 4) 1 ^ у3, Р12: у3е {Т}.
Второй полутакт. Пересечение множеств.
Состояние сети к началу четвертого такта: х1 е {М, Ж, С}; х2е {Е, М}; х3е {В}; х4е {Н, О}; х5е {С, А}; qе {4}; 1е {7}; у1е {Ж}; у2е {Б}; у3е {Т }; гле {А', У', О', И'}; гпе {И}; ге {ОИ, О'И, ЕИ, ЫИ, ИИ }; гое {*, '}; г1 е {А, Я, У, Ю, О, Е, Ы, И}; г2е {И}; г3е {*}.
Четвертый такт.
Первый полутакт. Сужение множеств. 1) q^х1, Р1: х1е {М}. 2) г^х2, Р2: х2е {Е}. 3) q ^ х4, Р4: х4е {Н}. 4) гл ^ г, Р12: ге {А'Я, У'Ю, О'Е, О'И, О'М, О'ГО, О'МУ, О'Ю, И'М, И'Е, И'Х, И'МИ }. 4) г^Р12: гле {О, О', Е, Ы, И}.
Второй полутакт. Пересечение множеств.
Состояние сети к началу пятого такта: х1 е {М}; х2е {Е}; х3е {В}; х4е {Н}; х5е {С, А}; qе {4}; 1е {7}; у1 е {Ж}; у2е {Б}; у3е {Т}; гле {О'}; гпе {И}; ге {ОИ}; гое {*, '}; г1 е {А, Я, У, Ю, О, Е, Ы, И}; г2е {И}; г3е {*}.
Пятый такт.
Первый полутакт. Сужение множеств. 1) гл^ г1, Р15: г1 е {О}. 2) гл^г0,, Р14: г0е {'}.
Второй полутакт. Пересечение множеств.
Состояние сети к началу шестого такта: х1е {М}; х2е {Е}; х3е {В}; х4е {Н}; х5е {С, А}; qе {4}; 1е {7}; у1 е {Ж}; у2е {Б}; у3е {Т}; гле {О'}; гпе {И}; ге {ОИ}; г0е {'}; г1 е {О}; г2е {И}; г3е {*}.
Сеть отыскала однозначные значения всех предметных переменных, кроме переменной х5. В последующих тактах состояние сети уже не меняется. Именно этот факт служит сигналом к прекращению работы сети. После получения сетью результата можно осуществить съем информации с полюсов сети. Съем информации можно производить не со всех полюсов сети, а только с тех, которые интересуют пользователя.
Сеть выполняет функции своего рода базы данных. В роли атрибутов базы данных в сети выступают предметные переменные, представленные полюсами сети. В роли доменов атрибутов базы данных в сети выступают области изменения предметных переменных сети. В роли таблиц, хранящихся в базе данных, выступают бинарные отношения, представленные ветвями сети. В роли исходных данных, поступающих в базу данных, для решаемой задачи выступают подмножества некоторых из областей изменения предметных переменных сети. В роли запроса в базу данных выступают некоторые из предметных переменных сети. Пользователь может указать любое множество интересующих его предметных переменных. Этим предметным переменным соответствуют те полюсы, с которых производится съем информации после того, как сеть решила поставленную перед нею задачу. Информация, выдаваемая сетью, имеет вид подмножеств областей изменения предметных переменных, указанных пользователем сети.
Изменения в полюсах распространяются по сети волнами. Они прекращаются после того, когда в конце некоторого такта знания во всех полюсах оказываются такими же, как и в его начале. Рано или поздно такой момент с неизбежностью наступает, поскольку в каждом полюсе по прошествии очередного такта конечное множество-знание превращается в его подмножество. Стабилизация знаний в полюсах сети сигнализирует о том, что сеть
завершила решение задачи. Теперь остается только произвести считывание полученных знаний с интересующих пользователя полюсов.
С помощью приведенной выше бинарной логической сети мы можем найти все множество решений системы предикатных уравнений {Р1,Р2 ,...,Рп}. Эта система является декомпозицией на бинарные предикаты предикатного уравнения Р(х1, х2, х3, х4, х5, у 1, у2, у3, 2), которое, как отмечалось в начале раздела, описывает выбор окончания имени прилагательного в зависимости от контекста и признаков основы слова, т.е., задает правило склонения полных непритяжательных имен прилагательных.
4. Выводы
Результаты исследования. Автоматическая обработка текстов на естественном языке - одна из задач, решение которых на последовательных компьютерах в реальном темпе времени часто не представляется возможным. В статье разработана логическая сеть для моделирования процесса звукового склонения полных непритяжательных имен прилагательных.
Научная новизна. Созданная логическая сеть является вкладом в построение формальной базы общей логической сети морфологии русского языка. В перспективе есть необходимость в разработке методики соединения разрозненных логических сетей в единую сеть на базе импликативного разложения предикатов.
Практическая значимость. Разработанная логическая сеть позволяет сократить область изменения для промежуточных переменных, а также расширяет охват моделируемых с помощью логических сетей морфологических задач.
Список литературы: 1.Дударь З.В., Кравец Н.С., Шабанов-КушнаренкоЮ.П. О прикладной алгебре предикатных операций // Проблемы бионики. 1998. Вып.49. С. 78-87. 2. Дударь З.В., Кравец Н.С., Шабанов-Кушнаренко Ю.П. О фундаментальной алгебре предикатных операций // Проблемы бионики. 1998. Вып.49. С. 68-77. 3. Шабанов-Кушнаренко Ю.П. Теория интеллекта. Проблемы и перспективы. Х.: Вища школа, 1987. 159 с. 4. БондаренкоМ.Ф., Дударь З.В., ЕфимоваИ.А., Лещинский В.А., Шабанов-Кушнаренко С.Ю. О мозгоподобных ЭВМ // Радиоэлектроника и информатика. 2004. №2 1. С. 32-39.
Поступила в редколлегию 07.03.2008 Шабанов-Кушнаренко Сергей Юрьевич, д-р техн. наук, профессор кафедры программного обеспечения ЭВМ ХНУРЭ. Научные интересы: логическая математика, теория интеллекта, искусственный интеллект. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70214-46.
Парасунько Константин Григорьевич, студент гр. ПЗАСвмд-07-1, кафедра программного обеспечения ЭВМ ХНУРЭ. Научные интересы: логическая математика, искусственный интеллект. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 702-14-46.
УДК 519.7
С.Ю. ШАБАНОВ-КУШНАРЕНКО, О.В. КАЛИНИЧЕНКО, Е.О. КОРНИЙЧУК , В.В. КОРЯК
ПРИМЕНЕНИЕ ТЕОРИИ КАТЕГОРИЙ ДЛЯ РЕШЕНИЯ ЛОГИЧЕСКИХ СЕТЕЙ
Развивается универсальный алгебрологический аппарат логических сетей. Рассматривается возможность применения теории категорий для разработки методов решения.
1. Введение
С развитием искусственного интеллекта все большее внимание привлекает теория категорий. Интеллект (человеческий, машинный или какой-либо иной) естественно рассматривать как реализацию какого-то фрагмента теории категорий (не в сегодняшнем состоянии, когда она делает свои первые шаги, а достаточно развитой), отдельные мысли -как объекты категории, акты мышления - как морфизмы, архитектуру того или иного мыслительного процесса - как выражаемую коммутативной диаграммой конкретную категорию, отдельные шаги в развитии интеллекта - как функторы [1].