СМЫСЛОВОЙ ПОИСК ИНФОРМАЦИИ НА ОСНОВЕ ФОРМАЛЬНОЙ СЕМАНТИКИ Швецов А. Н., Летовальцев В. И. К настоящему моменту в компьютерных системах накоплены и постоянно создаются большие объемы информации. Эта информация часто организована средствами естественных языков, а значит, ее освоение возможно при условии автоматической смысловой обработки текстов. Перспективным является применение логического похода к проблеме автоматизации обработки естественно-языковых текстов компьютерными системами. Современные средства обработки естественно-языковых данных не могут удовлетворить все потребности пользователей. Поэтому на первый план выходит интеллектуализация средств поиска и создание релевантных моделей обработки информации. Информационная модель, изложенная в [1], может быть применена для решения этих задач. Первоначально смысл порождаемого текста существует для автора (А) как непосредственное психическое переживание, продукт взаимодействия когнитивного знания индивида о мире индивидуального, но опосредованного социальным, и тех языковых единиц, которые индивид подбирает для вербального выражения своего непосредственного психического переживания, будь то непосредственно воспринимаемая ситуация, воспоминание о некоторой ситуации, пережитой ранее, планируемой, воображаемой, желаемой и пр. Хотя психическое переживание сугубо индивидуально, порождаемый и вербально выражаемый смысл, при субъективности момента его порождения, уже на этом уровне значительно объективизирован социальным знанием, в том числе и языковым.. Субстрат отображения смысла в этом случае биологический – человеческий мозг. Далее смысл текста, уже созданного А, переходит в состояние, когда психическое переживание получило полностью вербальную форму и выражение в тексте. На этом этапе смысл текста приобретает полностью объективное, независимое от А существование как заложенное им в текст потенциальное психическое переживание, которому предстоит, при взаимодействии с индивидуальным знанием читателя (Ч), стать его непосредственным психическим переживанием (при условии наличия запаса общего социального знания у А и Ч). На этом этапе смысл текста никак не связан с субъективными моментами. Носителем текста служит внешнематериальный субстрат, например накопители информации в хранилище данных. Читатель предает некоторой информационной сущности свои формализованные психические переживания. Эта сущность, обладая набором знаний о предметной области, производит поиск необходимых текстов. Если подробно рассмотреть природу поисковой информационной сущности, то можно убедиться, что такую сущность можно назвать поисковым агентом (ПА). Под агентом в этом случае понимаем программный или аппаратный объект, автономно функционирующий для достижения целей, поставленных перед ним владельцем, обладающий определенными интеллектуальными способностями [2]. Агент не может обладать полной картиной мира, доступной Ч, однако может использовать небольшую формализованную ее часть, принадлежащую конкретной предметной области. Тогда для обеспечения релевантности поиска текстов, необходимых А, ему достаточно передать ПА лишь некоторым образом формализованное представление своих психических переживаний, не заботясь о их интерпретации (т. к. интерпретироваться они будут на фрагменте картины мира, которая считается достаточно близкой к представлениям А о предметной области, где производится поиск информации). Можно сказать, что агент моделирует процесс усвоения текста Ч, соотнося его с запрошенным формализованным психическим переживанием. Далее смысл воспринимаемого Ч текста переходит в новое состояние, когда упорядоченная совокупность языковых единиц, при взаимодействии со знанием Ч, продуцирует в его сознании психическое отображение сегмента внеязыковой реальности, аналогичное тому, которое было психическим переживанием А при создании текста. Объективность смысла текста как психического отображения реальности обеспечивается общностью, социального знания в пределах одной культуры. Однако порождаемый смысл одновременно и субъективен, поскольку содержит и отношение автора к реальности. Восприятие смысла текста также придаёт ему некоторую субъективность, из-за различия в социальном опыте индивидов, в их индивидуальном знании. Для различения субъективного и объективного аспектов смысла предлагается использовать термины "смысл текста" и "содержание текста", которые рассматриваются как идеографические синонимы, в принципе обозначающие одно и то же - психическое отображение сегмента реальности. продуцируемое при взаимодействии некоторого упорядоченного набора, языковых единиц и знания. Различие между этими синонимами видится в том, что "содержание текста" подразумевает то общее, что содержится во всех психических отображениях, продуцируемых одним текстом при его взаимодействии с разными индивидами, обладающими общим запасом социального знания; "смысл текста" подразумевает, помимо этого, и субъективный аспект отображения, обусловленный уровнем социального опыта и знания индивида. "Смысл текста", таким образом, трактуется несколько шире, чем "содержание текста". Описанная выше модель представлена на рис. 1. Психологическое переживание автора Модель предметной области автора Модель предметной области поискового агента Текст Взаимодействие с сервером Хранилище данных Автор Модель предметной области читателя Психологическое переживание читателя Текст Формализованное представление Поисковый психического переживания агент Рис. 1 Модель агентного информационного поиска. Читатель Стоит сделать некоторые замечания по поводу предлагаемой модели. Так в графическом отображении модели все элементы представлены в единственном виде. Это сделано для того, чтобы не перегружать схему. На самом деле многие элементы могут быть представлены как в единственном, так и во множественном числе. Например А может состоять не из одного, а из нескольких человек, каждый со своей моделью предметной области и индивидуальным психическим переживанием. Хранилище данных может быть как централизованным, так и распределенным. В этом случае важно иметь лишь некоторый интерфейс для взаимодействия ПА с информационным хранилищем. Сам ПА может быть представлен как одним агентом, так и агентным сообществом. Введение в модель психической составляющей затрудняет техническую реализацию и количественную оценку результатов реализации. Но без такой составляющей модель представляется не полной и не отражающей реальные процессы преобразования информации. Оценку же результатов в случаях тестирования информационного поиска проводят индивидуально для каждого пользователя, лишь затем усредняя результаты. Поэтому введение психической составляющей представляется достаточно обоснованным. Из рис. 1 видно, что важным становится выбор метода формализации ментальных представлений пользователя. Изучение семантики предложения тесно связано с мышлением. Поэтому исторически первые попытки формализации методов работы с семантикой предпринимались в рамках логики. Логический подход к формализации семантического анализа до недавнего времени имел распространение лишь в среде лингвистов и логиков. Авторам представляется перспективным применение логического похода к проблеме автоматизации обработки естественно-языковых текстов с помощью ЭВМ. Выделим основные плюсы такого подхода. 1. Простое распараллеливание единой задачи. Символьные формулы достаточно просто дробятся на подформулы. Выводимость подформулы чаще всего можно проверять независимо друг от друга. Это свойство становится особенно важным в виду движения современной вычислительной техники в сторону многоядерности микропроцессоров и распределенной обработки данных. 2. Множественность решаемых задач на едином наборе знаний. Логическое представление позволяет на едином наборе данных/знаний проводить различные операции. Так на одной базе могут функционировать поисковые системы, вопросно-ответные системы, системы распознавания образов и т. д. 3. Естественное объяснение результатов операций. Логика формализует правила мышления, поэтому результаты набора логических операций при достаточной дружественности пользовательского интерфейса могут легко пониматься пользователем. В логической поисковой системе можно показать цепочку умозаключений, на основе которой предлагаемый текст отнесен к релевантным результатам поиска. Большинство существующих методов не дают такой возможности объяснения результата, т. к. наборы векторных и статистических данных, с которыми они работают, гораздо сложнее представить в виде доступном для неподготовленного пользователя. Это достаточно важное обстоятельство, т. к. опыт использования систем поддержки принятия решений показал, что пользователь чаще всего отвергает результат работы программы, если не может уяснить, каким образом такой результат был получен. Развитие логического подхода к изучению семантики можно проследить на основе существующих семантик неклассических логик: семантике смысла и денотата Г. Фреге (семантический треугольник представлен на рис. 2), теории объектов и пропозиций Б. Рассела, теории истины А. Тарского, семантике возможных миров С. Крипке, логики смысла и денотата А. Черча. Знак Номинация Аналитическое слово Слово Имя имеет смысл десигнат (Августин) означаемое (Ф. Соссюр) сигнификат (Ч. Моррис) смысл (Г. Фреге) интенсионал (Р. Карнап) значение (У. Куайн) называет денотат (Б. Рассел, А. Черч, У. Куайн) экстенсионал (Р. Карнап) референт (Ч. Огден, А. Ричардс) содержание понятия объем понятия Рис. 2 Семантический треугольник Фреге. Наиболее перспективным с точки зрения применимости в автоматическом семантическом анализе представляется подход, предложенный Ричардом Монтегю. Работы Монтегю сформировали целое направление, получившее название, формальная семантика. Основная идея его работ выражена в названии одного из его основополагающих трудов – «English as a formal language». Любой естественный язык (в частности английский) предлагается понимать как формальный логический язык, который является более сложным по отношению к существующим формальным языкам. Следовательно, при описании естественного языка можно использовать такие же понятия и конструкции как для других логических языков. Центральный принцип формальной семантики состоит в том, что отношение между синтаксисом и семантикой композиционно. Принцип композициональности можно выразить следующим образом: значение выражения есть функция его частей и способа их синтаксической комбинации. При этом истинность определяется не абсолютно, а в пределах некоторой модели[3]. Возможны два подхода к изучению семантико-синтаксических связей: - Описывать синтаксис естественного языка (в нашем случае русского) и интерпретировать выражения языка в моделях. - Использовать промежуточный логический язык. Для этого описать синтаксис и семантику достаточно близкого к естественному логического языка. При этом описание семантики естественного языка сводится к представлению текста в сконструированном логическом языке. Монтегю в своих работах попеременно использовал оба этих подхода. Для решения целей данной работы второй подход представляется более перспективным т. к. позволяет реализовать описанные выше плюсы логического представления языков. В работе [4] Монтегю использует пару координат – возможные миры и моменты времени, относительно которых для каждого выражения определяется интенсионал и экстенсионал. Моделью для интенсиональной логики Монтегю является пятерка вида: M D,W , T , I , где D – множество индивидов (или несущее множество); W – множество возможных миров; T – множество моментов времени; - отношение порядка, заданное на T; I – интерпретирующая функция, которая придает семантические значения всем константам. Семантическая интерпретация интенсиональной логики использует множество оценок G {g i i 1..n}, которые являются множеством функций из переменных всех типов в множества соответствующих значений (g – функция приписывания значения переменной), M , g - интенсионал выражения относительно модели М и функции приписывания g, M , w,t , g экстенсионал выражения относительно M, g и точки соотнесения w, t , где wW , t T . С точки зрения реализации технической системы можно выделить следующие фрагменты обработки текстовой информации средствами формальной семантики (см. рис. 3). Преобразование Текст на естественном языке Языковая составляющая Формальное представление Набор категории Типы Набор формул высказываний Правила трансформации Правила пребразования формул Meaning Postulates + Рис. 3 Обработка текстовой информации в формальной семантике на основе интенсиональной логики Монтегю. Схема наглядно показывает, как происходит функциональное деление частей единой системы под названием логика Монтегю. В блоке под названием «языковая составляющая» объединены элементы, специфичные для конкретного естественного языка. Формальное представление не зависит от конкретного языка и является единым для многих реализаций языковых составляющих. Сейчас основные исследования сосредоточены в области естественноязыковой составляющей (с внесением необходимых изменений в постулаты значения). На языковую составляющую вносятся ограничения, таким образом, чтоб она представляла подмножество естественного языка минимально необходимое для представления простых языковых фраз. На данный момент изучение формальной семантики сводится именно к определению способов перехода от естественно-языкового представления к формализованному логическому. Возможны различные способы таких переходов. В работах Монтегю проводится различие между понятием типа и понятием категории. Относительно формализованных фрагментов естественного языка употребляется понятие «категория». В логических построениях используется понятие «тип выражения». Тип выражений задается через рекурсивное определение типов. Определим элементы множества типов TYPE. 1) eTYPE 2) t TYPE 3) Если a TYPE и bTYPE , то a, b TYPE 4) Если a TYPE , то s, a TYPE 5) Ничто, кроме указанного в п. 1-4, не принадлежит множеству TYPE. Множество TYPE не есть множество самих выражений. Это множество имен множеств выражений. Типы е и t являются элементарными. Символ е обозначает "сущность" ("entity"). Тип е имеют индивидные переменные и индивидные константы. В семантической интерпретации выражениям типа е будут соответствовать объекты из индивидной области. Символ t используется для обозначения типа формул, то есть выражений, которые могут быть оценены как истинные или ложные. Комбинации элементарных типов образуют все иные типы выражений (бесконечный класс), которые мыслятся как функторы. Запись <а, b> указывает на тип функции, где а есть тип аргумента и b тип значения функции. Например, одноместный предикат первого порядка есть функция типа <е, t>, аргумент которой имеет тип е, а значение - тип t. Для связи с естественным языком применяется множество категорий. Определим функцию f для отображений категорий русского языка в логические типы следующим образом [5]: 1)f(e) = e 2)f(t) = t 3)f(CN) = f(IV) = <e,t>. 4) Для всех категорий А и В f(A/B) = f(A//B) = <<s,f(B)>,f(A)>. Выражение категории функтора А/В при сочленении с категорией аргументора В дает составное выражение категории целого А. Выражения категории А/В и А//В различаются синтаксически, но не семантически, и соответствуют одному и тому же логическому типу. Основные категории представлены в табл. 1. Таблица 1 Категория Определение Грамматический эквивалент Примеры e - нет - t - Утвердительные Выводы сделаны предложения верно. Ветер усиливается. IV (Intransitive Verb t/e phrase) T (Term phrase) t/IV TV (Transitive Verb) IV/T Глагольные фразы и Увеличиваться непереходные глаголы Помогать Существительные Леонид фразы и собственные Вологда, имена Oн1, он2… Переходные глаголы Определять Заимствовать CN (Common Noun) t//e IAV (Intransitive IV/IV Нарицательные Двигатель существительные Семантика Наречия Быстро Медленно adverb) t/t (Sentence Adverb) Модальные Необходимо-чтобы определители Непременно предложения IAV/T DET T/CN Предлоги В, на Определители Каждый, любой, всякий. IV// IV Для перевода категориальных Глаголы, образующие Пытаться инфинитивы Учиться выражений в язык логики используются правила трансформации (ПТ). Монтегю выделяет множество основных выражений категории А, обозначая его через ВА, и множество фраз категории А, обозначая его через РА. Множество РА состоит из основных выражений и тех, которые могут быть получены с помощью синтаксических правил. Синтаксические правила PTQ задают множество РА для каждой категории A. При рассмотрении естественного языка в качестве формального предполагают, что модели языка отражают те схемы, которые языковое сознание накладывает на мир. В «идеальном» случае построенная абстракция должна отражать «наивную картину мира»(терминология Московской семантической школы»). В то же время в формальной семантике, как и в логике давно рассматривались meaning postulates (постулаты значения) при описании лексических значений. Сейчас meaning postulates все чаще используются для отражения структурных особенностей лексики. С точки зрения логики meaning postulates – это аксиомы, описывающие соотношения «лексических констант» для описания словарных значений и «наивной картины мира». Рассмотрим схему перехода от фразы на естественном языке к ее формальному представлению (см. рис. 4) Морфология и синтактика анализируемого языка Фраза на естественном Лингвистическая языке обработка Множество синтаксических категорий и подкатегорий Множество правил интерпретации 1 Множества Morph и Syn Выделение категорий 2 Дерево логических категорий Множество правил интерпретации Формирование формулы 3 Функция интерпретации Модель Упрощение Синтаксически правильная формула Лингвистический процессор Формула, пригодная для хранения 4 Соотнесение с моделью Упрощенная формула 5 Интерпретация Результаты интерпретации Транслятор Логическая машина Формула, выполнимая в модели 6 Интерпретатор Рис. 4 Последовательность действий по получению формального представления формулы в логике Монтегю и дальнейшей ее интерпретации. 1) Морфологическая и синтаксическая обработка фразы (лингвистическая обработка). Результатом этого этапа должны стать два множества значений. Первое множество Morph состоит из пар <слово, характеристики>. Второе множество Syn состоит из набора синтаксических клауз, которые выделяются данным анализатором. На втором множестве часто определяют отношения подчиненности т. к. синтаксическое построение групп имеет древовидную структуру. При этом определяется функция соотнесения слов с их характеристиками и клауз, которые они составляют. К необходимым характеристикам относятся – начальная (нормализованная) форма и часть речи. Возможно выделение других характеристик (например, род, падеж, переходность и т. д.). Ни построение такого дерева, ни морфологические характеристики не могут быть оторванными от набора категорий, которые будут использоваться на следующем этапе. 2) Выделение синтаксических категорий и подкатегорий. Рассмотрение альтернатив. На основе результатов первого пункта рассматриваются категории, принятые к логике, в которую переводится целевое сообщение. При наличии альтернатив выбирается наиболее общий вариант. Категории объединяются в более крупные категории на основе синтаксического дерева. Кроме того, в пределах категорий могут выделяться подкатегории со своими особенностями формализации, постулатами значения и т. д. 3) Перевод фразы в формулу логики на основе набора категорий и правил трансформации. На основе набора категорий и правил трансформации строится формула логики, являющаяся отображением фразы естественного языка на формальном языке формул. 4) Упрощение полученной формулы. Полученная на предыдущем этапе формула чаще всего будет достаточно громоздка. В целях уменьшения избыточности, а также упрощения дальнейшей обработки и хранения возможно ее упрощение. Логике Монтегю используется лямбда исчисление. Поэтому упрощение связано с последовательным применением различных видов редукции и сокращением взаимно уничтожающих друг друга операторов получения интенсионала и экстенсионала выражения. Возможны и другие более изощренные способы. 5) Соотнесение полученной формулы с выбранной моделью. Формула должна быть соотнесена с индексом времени и миров, а так же с модальными и эпистемическими контекстами, если таковые используются в данной логике. Проверка на выполнимость полученной формулы в данной модели. Выявление фактов (других формул), противоречащих данному сообщению, если это возможно. Результатом этой операции является знание о том, что формула не противоречит модели. В этом случае ее можно интерпретировать или добавить в общее хранилище знаний. 6) Интерпретация полученной формулы в модели. С помощью функции интерпретации формула может получить свое отражение в реальном мире. Например, сообщение на естественном языке может оказаться командой производственной линии. Тогда функция интерпретации должна быть преобразована в набор управляющих сигналов для оборудования. Как видно из рис. 1, начальным этапом обработки является преобразование текста на естественном языке на основе языковой составляющей логики. Этот фрагмент преобразования сильно зависит от грамматики и синтаксиса языка изложения текста. В качестве компонента лингвистической обработки используем лингвистический процессор группы aot (www.aot.ru). Данная система лингвистических процессоров распространяется в исходных кодах на языке С++ под ОС Linux. Существует вариант и для Windows в виде набора com-объектов. Для нас предпочтительнее Linux-реализация, т. к. лингвистический компонент для совместного использования следует поместить на сервере, а наиболее предпочтительны для серверов – UNIX-подобные системы. Результатом синтаксического анализа в этом случае будет являться набор групп и клауз, составляющих предложение (см. рис. 5). Предложение 0 Первое слово:0 Последнее слово: 2 Первое слово:0 Последнее слово: 1 Клауза В Группа А Слово 0 Группа Б Слово 1 Первое слово:1 Последнее слово: 2 Слово 2 Используемая форма: слово Начальная форма: слово Часть речи: слово Морфологическое описание: строка Слово N Используемая форма: слово Начальная форма: слово Часть речи: слово Морфологическое описание: строка Рис. 5 Древовидная структура лингвистических данных. Суждение о базовых категориях можно выдвигать на основе морфологии слова. Достаточно просто построитю функцию отображения констант анализатора в категории и правила интенсиональной логики. Результаты морфологического анализа позволяют представить только атомарные категории логики. Построение составных категорий возможно на основе результатов синтаксического анализа предложения. Соотношение категорий интенсиональной логики и констант выбранного синтаксического анализатора требует отдельной табличной функции. Результатом приведенной последовательности преобразований является формула, удовлетворяющая синтаксису формул интенсиональной логики. При интерпретации ее в модели получаем истинностное значение предложения на основе семантики, накладываемой функцией интерпретации. Рассмотрим пример формализации естественно-языкового предложения «Каждый ученый знает Ломоносова». Дерево программного синтаксического анализа, совмещенное с деревом категорий, представлено на рис. 6. На рисунке курсивом выделены морфологические константы, а подчеркиванием – константы синтаксиса. ГЛ_ЛИЧН, Pt ПРИЛ-СУЩ, PT МС-П, B T/CN C, BCN ПРЯМ_ДОП, PIV Г, B IV/T C, B Т Всякий ученый знает Ломоносова. Рис. 6 Пример разбора предложения. Рассмотрим пошаговое преобразование выражения. При этом выражение k n будем читать, как « k переводится в n ». Для выражения естественного языка будем считать ' его переводом на язык интенсиональной логики. 1. Ломоносов l , где l - элемент множества констант предметной области. 2. ученый ученый ' . 3. знает знает'. 4. каждый ученый Pxученый' ( x) P{x}, т. к. согласно правилу перевода, если PCN , ' , то «каждый (каждая, каждые) ». Px ' ( x) P( x) . 5. x0 знает Ломоносова знает' (l )( x0 ) x0[ знает' (l )( x0 )] , где x0 – индивидная переменная типа <e>. 6. Согласно «субъектно-предикативному» правилу, если PT , PIV , то F4 ( , ) Pt и переводится в '(^ ' ) , где ^ M , w ,t , g есть функция h с областью определения W T , такая что для любой пары w' , t ' из W T h( w' , t ' ) M , w ',t ', g . В нашем случае, объединяя 4 и 5 получим Px ученый' ( x) P{x}( ^x0 [ знает' (l )( x0 )]) . Для упрощения программного текстового вывода формулы сделаем следующие замещения =lambda, all, impl. Тогда на выходе программного преобразователя получим lambda P all x(ученый’(x) impl P{x})(^ lambda x0 (знает’(l)(x0)) 7. После упрощения получим x( ученый' ( x) знает' (l )( x)) . Предлагаемый метод обработки естественно-языковых массивов может быть полезен при заполнении хранилищ знаний, которые в дальнейшем могут быть использованы в различных целях: при информационном поиске, реализации вопросно-ответных и экспертных систем. Список литературы. 1. Черняховская Л. А. Информационный инвариант смысла текста и вариативность его языкового выражения: дис. докт. фил. наук. – М, 1983. 2. Швецов А. Н. Распределенные интеллектуальные информационные системы / А. Н. Швецов, С. А. Яковлев – СПб.: СПбГТУ «ЛЭТИ», 2003 – 318 с. 3. Микиртумов И. Б. Теория смысла и интенсиональная логика. – Спб.: Изд-во С.-Петерб. ун-та, 2006. – 351 с. 4. R. Montague The proper treatment of quantification in ordinary English. // Approaches to Natural Language./Hintikka, K.J.J., Moravcsik, J.M.E., & Suppes, P. (eds.). - Reidel, 1973. – 221-242 p. 5. Герасимова И. А. Формальная грамматика и интенсиональная логика - М.: 2000. – 156 с.