Название: Инвариантно-параметрическое представление и обобщенная ассоциативная обработка символьной и смысловой информации(Токмаков Г. П)

Жанр: Информационные системы и технологии

Просмотров: 3093


4.2. описание процедур обработкисимвольной и смысловой информации

В данном разделе сначала рассмотрим общую картину процесса моделирования с точки зрения ИПП ПрдО, выделим из нее символьный компонент, и используя ИПП языковых конструкций, разработанные в Главе 3, разработаем процедуру отображения символьной последовательности в ее ИПП, что можно рассматривать как интерпретацию языковых конструкций. При этом мы будем руководствоваться принципами механизмов абстрактного мышления и воспользуемся элементами вычислительных механизмов функционального, логического и объектно-ориентированного программирования.4.2.1. Общее описание системы обработки символьной и смысловой информации на базе ИППВ целом систему моделирования ПрдО, где внутреннее представление модели сформировано на основе принципов обобщенного отражения, а в качестве внешнего представления выбрано подмножество ЕЯ, называемое "деловой прозой", можно представить в виде блок-схемы, приведенной на рис. 53. На этой блок-схеме согласно концепции моделирования ПрдО, рассмотренной в Главе 1, выделены три компонента:Символьный компонент, который содержит пять уровней языковой системы.Интерфейсный компонент, содержащий систему функций доступа к элементам внутренней модели.Смысловой компонент, представленный системой понятий ПрдО и ее конкретизации в виде системы БД с экземплярами понятий из этой системы. Функционирование блок-схемы, приведенной на рис. 53 и работающей врежимах анализа и синтеза, можно описать следующим образом.

Интерфейсны й компонент модели ПрдОСмысловой компонент модели ПрдО

БД

Система понятий ПрдО БДБДБДБДБДБДБДБДБДБД

Рис. 53. Общая структура трехкомпонентной системы обобщенного моделирования на базе ИППВ режиме анализа на вход поступает символьная последовательность, составленная из букв (фонем). Данная ситуация запускает режим анализа предложения, который разворачивается следующим образом:В первую очередь срабатывает уровень предложений, и производится начальная установка всех необходимых значений; однако входные данные для работы этого уровня отсутствующи производится запрос на выдачу входного данного на нижестоящий уровень.Уровень словосочетаний принимает этот запрос и производит начальную установку необходимых значений, после чего также посылает запрос на нижестоящий уровень на выдачу входного данного.Уровень лексем по полученному запросу также производит начальную установку необходимых значений, и также посылает запрос на нижестоящий уровень на выдачу входного данного.Уровень морфем после установки своих начальных значений посылает запрос на уровень фонем.Уровень фонем также производит начальную установку необходимых значений, однако в данном случае входные данные присутствуют, так как входная последовательность букв поступает на вход уровня фонем, и запускается процедура анализа, приведенная на рис. 54, и формируется ИПП первой буквы входной последовательности, которое поступает на вход уровня морфем в качестве входного данного.После этого на уровне морфем запускается процедура анализа, приведенная на рис. 56, и если при этом в пространстве инвариантов не обнаруживается морфема производится запрос очередного входного данного в нижестоящий уровень; описанный процесс повторяется до тех пор, пока искомая морфема не бет обнаружена; по результатам проведенного поиска бет сформировано ИПП морфемы, которое поступает на вход уровня лексем. На уровне лексем запускается процедура анализа, описанная по рис. 58; при этом как и на уровне морфем производится цикл "анализ-запрос входного данного" до тех пор, пока не будет обнаружена некоторая лексема в пространстве инвариантов данного уровня; по результатам поиска формируется ИПП лексемы, которое поступает на вход уровня словосочетаний. На уровне словосочетаний запускается процедура поиска типа словосочетания, каждому из которых соответствует одна из процедур доступа, которые будут описаны ниже. Здесь как и на предыдущих уровнях обработки осуществляется цикл "анализ-запрос входного данного", пока не будет обнаружен некоторый тип словосочетаний; по результатам поиска запускается та или иная функция доступа, результат которой в виде ИПП концепта (компонента внутренней модели) подается на вход уровня предложений; в случае, если обнаружен глагольный тип словосочетаний, на вход уровня предложений подается ИПП глагольного словосочетания, представляющее собой имя функции-обработчика и номер функции на множестве полиморфных функций.На уровне предложений запускается процедура поиска канонической формы предложения по последовательности ИПП концепта внутренней модели ПрдО и ИПП глагольного словосочетания; при этом поиск канонической формы начинается только после приема ИПП глагольного словосочетания, а ИППУпоступившие до этого,фиксируются в качестве элементов канонической формы предложения; после поступления глагольного словосочетания определяется корневой узел в пространстве канонических форм уровня предложений, затем путем последовательного поиска уже зафиксированных и вновь поступающих ИПП концептов; в результате проведенного поиска определяется функция-обработчик, соответствующий обнаруженной ветви пространства канонических форм, производится подстановка значений узлов этой ветви в качестве аргументов функции-обработчика и запуск функции; запущенная функция производит во внутренней модели ПрдО изменения, которые были закодированы в виде предложения ЕЯ. Как правило, для решения описанных задач пользуются традиционными методами машинного моделирования [93,94], согласно которым алгоритмом получения решения служит описание проблемы в виде последовательности процедур и решение всецело зависит от самой проблемы как таковой. В результате для каждого уровня языковой системы получаем различные алгоритмы обработки, которые при совместном функционировании складываются в довольно громоздкие алгоритмы [35,36,37]. В данной главе мы поставим себе цель - разработать обобщенный механизм обработки данных, опираясь на ИПП ПрдО. Для этого мы сначала приведем описание алгоритмов обработки на пяти уровнях языковой системы, затем рассмотрим алгоритмы функций доступа на смысловом уровне, после чего полученную картину попытаемся обобщить, используя при этом компоненты рассмотренных выше вычислительных механизмов.4.2.2. Анализ и синтез на уровне фонемКак мы отметили при разработке логических структур символьной информации, основной функцией фонемного уровня является преобразование стандартного кода фонем или букв во внутренний код. Поэтому собственно анализа и синтеза фонем на этом уровне не происходит. Блок-схема алгоритма анализа на фонемном уровне изображена на рис. 54 и описывается следующим образом.После приема стандартного кода фонемы производится его поиск в пространстве инвариантов и по результатам поиска выдается внутренний код фонемы, используемый впоследствии на морфемном уровне. При этом собственно поиск не производится, так как код фонемы является адресом пространства инвариантов, а осуществляется просто считывание внутреннего кода по данному адресу. После этого,если данная фонема является первой фонемой морфемы, с поля УкзМрфКрн производится считывание адреса корневого узла пространства инвариантов морфемного уровня, и на этом процесс преобразования внешнего кода фонемы во внутренний завершается.Блок-схема алгоритма синтеза на фонемном уровне представлена на рис. 55. Процесс синтеза начинается с приема внутреннего кода фонемы, затем производится его поиск в пространстве инвариантов. После обнаружения искомого кода производится считывание адреса узла, где хранится данный внутренний код,и который является стандартным кодом фонемы.

Выдача указателя на корневой узел пространства инвариантов уровня морфемКонецРис. 54. Блок-схема алгоритма анализа на фонемном уровне
НачалоРис.55. Блок-схема алгоритма синтеза на фонемном уровне

4.2.3. Анализ и синтез на морфемном уровнеАнализ морфемы заключается в определении по входной фонемной последовательности ее инварианта, т.е. кода эталонного алломорфа, и номера алломорфа в классе эквивалентных алломорфов, который играет роль параметра. Например, если на вход поступает морфема -анн-, то в результате анализа мы должны определить ее ИПП в виде ("а",3), что означает, что эталонный код данного алломорфа- "а", а ее порядковый номер в классе алломорфов морфемы "а"- 3.В процессе анализа морфемы, блок-схема алгоритма которого приведена на рис. 56, код текущего компонента морфемы сравнивается с кодами узлов текущего блока подобных узлов пространства инвариантов. Процесс сравнения происходит до тех пор, пока не произойдет совпадение с одним из узлов блока, либо до обнаружения признака конца блока КнцБлк. При этом возможны следующие ситуации:В случае обнаружения признака КнцБлк вырабатывается код ошибки,и на этом процесс анализа завершается.В случае совпадения кода фонемы с одним из кодов пространства инвариантов производится проверка признака конца фонемной последовательности ПрзКнц в признаковой части выделенного узла пространства инвариантов.Если ни один из этих признаков не обнаруживается, то производится прием очередного кода фонемы и процесс анализа морфемы продолжается до тех пор, пока не будет обнаружен признак ПрзКнц. В этом случае в текущей ячейке пространства инвариантов проверяется наличие поля УкзАлм, и если оно имеет место, то путем прибавления его содержимого к текущему адресу определяется адрес начала массива параметров для данного класса эквивалентности. В этом массиве по нулевому адресу хранится эталонный код морфемы, который и считывается. Затем производится поиск алломорфа в массиве, и после его обнаружения считывается индекс массива в качестве номера алломорфа в классе эквивалентных алломорфов.Таким образом, мы определили ИПП входной фонемной последовательности, составляющей морфему.В процессе синтеза по ИПП алломорфа требуется сформировать ее фонемную последовательность. Блок-схема алгоритма синтеза морфемы приведена на рис. 57 и описывается следующим образом. После приема ИПП морфемы по его инвариантной составляющей определяется адрес Адр конечного узла эталонного алломорфа. Затем к полученному адресу Адр прибавляется содержимое поля УкзЭтл и определяется адрес блока алломорфов для данного ИПП, где по параметру НмрАлм (номер алломорфа) определяется адрес узла, где хранится код искомого алломорфа. Таким образом, мы определили адрес концевого узла фонемной последовательности алломорфа в пространстве инвариантов. После этого начинается процесс считывания кодов фонем алломорфа в обратном порядке, продолжающийся до тех пор,пока не будет считан код последней фонемы последовательности (на самом деле это код первой фонемы) с корневого узла пространства инвариантов.

Начало ГУПрием текущего кода фонемы

Поиск кода текущей фонемы в пространстве инвариантовг++ (переход к следующему узлу в блоке подобных узлов)

Поиск кода алломорфа в массиве алломорфовСчитывание эталонного кода алломорфа и номера алломорфаКонецРис. 56. Блок-схема алгоритма анализа морфемы

Считывание фонемной последовательности по текущему адресу

Нет

 

 

г++(переход к следующему узлу в блоке подобных узлов)

 

 

Рис.57. Блок-схема алгоритма синтеза морфемы4.2.4. Анализ и синтез на лексемном уровнеВ процессе анализа словоформы, представленной на уровне лексем в виде последовательности морфем в инвариантно-параметрическом представлении, определяется ее 7777/7 в виде кода основы, играющего роль инварианта, и кодов грамматических категорий - параметров.Анализ словоформы начинается с приема ИПП первой морфемы, которая может быть префиксной или корневой. Если первая морфема префиксная, то она запоминается, после чего ожидается поступление корневой морфемы. После приема корневой морфемы определяется узел пространства инвариантов, где содержится код данной корневой морфемы. При описании пространства инвариантов морфемного уровня мы отметили, что корневые морфемы снабжены указателем на узел пространства инвариантов лексемного уровня, где хранится код данной корневой морфемы. Поэтому корневая морфема в пространстве инвариантов уровня лексем находится по этому адресу.Указатель УкзПрд данного узла определяет адрес блока подобных узлов, где хранятся коды префиксных морфем для данной корневой морфемы, где и производится поиск кода префиксной морфемы. Если же первая морфема последовательности была корневой, то при этом производится поиск нулевой префиксной морфемы.После обнаружения префиксной морфемы, по указателю УкзПрд узла, где хранится ее код, определяется начальный адрес блока суффиксов для данного сочетания корневой и префиксной морфем* В этом блоке сначала ищется нулевой суффикс, и если поиск завершается неудачно, то запрашивается код ненулевого суффикса и повторно производится поиск в этом же блоке суффиксов. Адрес узла пространства инвариантов, где хранится обнаруженный код суффикса, одновременно является кодом лексемы, т.е. инвариантом словоформы.Для определения параметрической составляющей искомого ИПП словоформы воспользуемся значениями полей УкзЧстРеч и УкзГрмКтг, составляющих части узла, где хранится код суффикса. При этом мы сначала по значению поля УкзЧстРеч определяем массив, где хранятся все допустимые окончания для части речи, к которой относится установленная лексема. В выделенном массиве производится поиск кода флексии анализируемой словоформы,и по результатам поиска фиксируется индекс данного массива. Затем по значению поля УкзГрмКтг определяем массив грамматических категорий, определяющий подкласс данной части речи, к которому относится данная лексема. В этом массиве по только что установленному индексу определяем последовательность кодов грамматических категорий, соответствующих принятому коду флексии. Завершается анализ выдачей ИПП анализируемой словоформы, а блок-схема алгоритма анализа приведена на рис. 58.В процессе синтеза словоформы по ее ИПП производится формирование морфемной последовательности, соответствующей данной словоформе. При этом после приема ИПП словоформы по его инвариантной части, представляющей собой код узла пространства инвариантов, где хранится код суффикса, по значениям полей УкзЧстРеч и УкзГрмКтг определяется массив параметров. В этом массиве производится поиск параметрической составляющей входного ИПП, по результатам которого считывается код флексии словоформы.После этого снова фиксируем адрес в пространстве инвариантов по коду лексемы и производим считывание кодов морфем, соответствующих данной лексеме. При этом,как и в предыдущих случаях синтеза,считывание производится в обратном порядке, т.е. сначала считывается суффиксная морфема, затем префиксная и, наконец, корневая. Блок-схема алгоритма синтеза словоформы представлена на рис. 59.

Подпись: Начало
Поиск кода корневой морфемыПоиск префиксой морфемыПоиск нулевого суффиксаПрием суффиксной морфемы и ее поискВыдача кода лексемы и определение массива грамматических категорийПрием кода флексий и его поиск в массиве грамматических категорийВыдача ИПП словоформыКонецРис. 58. Блок-схема алгоритма анализа словоформы

Подпись: Начало
4.2.5. Функции доступа как средства смысловой обработкиЛюбое использование знака предполагает наличие его смысла или интенсионала, под которым имеют в виду информацию о репрезентируемом предмете. Эта информация организована определенным образом и требует некоторого порядка при его использовании. Как мы уже отметили выше, формализм, определяющий форматы данных и отношения между ними, определяет внутренний язык системы. Но для того, чтобы сведения, представленные на внутреннем языке ;были доступны внешнему пользователю, требуется внешний язык. Поэтому при любом моделировании формируются две подсистемы: знаковая подсистема и подсистема значений для этих знаков. Знаки с одной стороны связаны с реальными объектами и являются их именами, с другой стороны они преобразуются в адреса ячеек, где хранится описание этого объекта в памяти машины, служащее значением этого знака.Пользователь может сформулировать свои запросы к системе и воспринимать информацию,выдаваемую системой,только на внешнем языке. А система, для выполнения этого запроса и выдачи пользователю результатов выполнения запроса, может использовать только внутренний язык. Таким образом; любая система обработки данных требует наличия некоторого посредника для выполнения взаимных преобразований между понятиями внутреннего и внешнего языков. Посредником между внешним и внутренним представлениями модели является система функций доступа, имя и аргументы которых кодируются конструкциями внешнего представления, а действия производятся во внутреннем представлении модели.Как уже было отмечено выше, под смысловой обработкой в данной работе мы условились иметь в виду выполнение функций доступа, обозначенных символьными конструкциями. На рис. 50 отмечены возможные функции доступа для структуры понятия. В число этих функций входят: Функция доступа - "Имя - объект". Функция доступа - "Род - объект". Функция доступа - "Объект - часть объекта". Функция доступа - "Объект - существенное свойство". Функция доступа - "Объект - атрибут объекта". Функция доступа - "Объект - несущественное свойство". Функция доступа - "Изменение несущественного свойства объекта"; Функция доступа "Имя-Объект" является простейшей и заключается в присвоении значения указателя на понятие при соответствующей лексеме языкового компонента модели УкзКнц переменной адреса понятия АдрПнт. Блок-схема алгоритма, описывающего работу данной функции,приведена на рис. 60.НачалоИнтерпретация словоформыАдрПнт = УкзКнцКонецРис.60. Блок-схема алгоритма функции доступа "Имя-Объект"Функция доступа "Род-Вид" представлена СлвС типа К + А и описывается следующим образом. После интерпретации СлвС указанного типа переменной АдрПнт присваивается значение поля УкзКнц родового слова, затем производится поиск кода вида УкзКнц среди видовых понятий данного родового понятия. Блок-схема алгоритма функции доступа описанного типа приведена на рис. 61.

НачалоИнтерпретация СлвС типа "Род-ВидАдрПнт = УкзКнц (родового слова)Поиск УкзКнц видового слова среди видов родового понятия

Рис.61. Блок-схема алгоритма функции доступа "Род-Вид"Функция доступа "Объект-часть объекта" представлена СлвС типа K"+Angen и приведена на рис. 62. После анализа СлвС указанного типа переменной АдрПнт присваивается значение поля УкзКнц понятия "Целое", затем к полученному значению прибавляется значение указателя "Состав" данного понятия. Получаем адрес блока компонентов, среди которых производится поиск кода УкзКнц понятия "Часть".

Подпись:
Интерпретация СлвС типа "Часть-ЦелоеАдрПнт = УкзКнц (Целое) + СоставПоиск среди компонентов понятия УкзКнц(Часть)

Подпись:
Рис. 62. Блок-схема алгоритма функции доступа "Часть-Целое tt

Функция доступа "Объект—существенный признак" аналогична вышеописанной и отличается лишь тем, что поиск существенного признака производит

ся в блоке существенных признаков. Определение адреса блока существенных признаков производится по выражению АдрПнт = УкзКнц(объект) + Структура. Блок-схема алгоритма функции доступа "Объект - существенный признак" приведена на рис. 63.^ НачалоМИнтерпретация СлвС типа "Объект-существенное свойство"АдрПнт = УкзКнц (объект) + Структура

Поиск несущественного свойства в блоке инвариантов понятия71_Т  ;                       | ~J КонецРис. 63. Блок-схема алгоритма функции доступа "Объект-Существенное свойство"

Адрес блока несущественных признаков для функции доступа "Объект -несущественный признак" вычисляется по выражению АдрПнт = УкзКнц (объект) + Свойства. Блок-схема алгоритма функции доступа "Объект - несущественный признак" изображена на рис. 64.

J КонецРис.64. Блок-схема алгоритма функции доступа "Объект-Несущественное свойство "

Интерпретация предложенияАдрФнц = УкзФнцОбр      ,           Подстановка адресов понятий и их компонентов, определенных в ходе анализа словосочетаний в качестве аргументов функции по адресу АдрФнцЗапуск функцииКонецРис. 65. Блок-схема алгоритма функции-обработчикаФункция-обработчик запускается после анализа предложения, т.е. после того как входное предложение преобразовано в каноническую форму и определены все ее компоненты как словосочетания. Как мы уже описали выше, в ходе анализа словосочетаний локализуются понятия и компоненты понятий внутренней модели ПрдО. Функция-обработчик использует полученные адреса в качестве аргументов и производит определенные изменения в состоянии модели ПрдО. Блок-схема алгоритма функции-обработчика приведена на рис. 65