ПОСТРОЕНИЕ РАСШИРЕНИЙ ДЕФОЛТ-ЛОГИКИ ДЛЯ ПРЕДСТАВЛЕНИЯ МНОГОЗНАЧНЫХ ПРЕДЛОЖЕНИЙ
П. Крижевский
Российский Государственный Гуманитарный Университет
krij@mail.ru
Б. Галицкий
Knowledge-trail, Inc.
bgalitsky@knowledge-trail.com
http://www.knowledge-trail.com
Ключевые слова: логика рассуждений по умолчанию, немонотонные рассуждения, вопросно-ответные системы, формальная семантика
В работе строится дефолт-логика для прагматического анализа естественно-языковых запросов. Рассматриваются многозначные предложения, для которых для каждого набора значений строятся расширения дефолт-логики.
- Введение
1.1 Многозначность
В языке нередко встречаются многозначные предложения. Не вдаваясь в дискуссию о разграничении терминов "семантические варианты" vs "омонимы", мы будем использовать простое
Определение 1
Многозначный языковой знак < Означающее, Означаемое, S > это совокупность двух или более языковых знаков, с одинаковым означающим и разным означаемым. В частности, многозначное предложение - это совокупность двух и более предложений с разным смыслом и одинаковым графическим/фонетическим представлением.
Многозначность бывает лексической и синтаксической. Нас интересует случай, когда многозначные предложения лишены синтаксической многозначности (типа Ванина книга), и многозначность получается из-за вхождения в предложения многозначных слов, причем не одного, а двух и более, и каждое может быть употреблено в любом из своих смыслов.
Пример 1
«На какой странице находится ссылка?»
Имеется два значения слова страница ('Internet page', 'бумажная страница') и 2 значения слова ссылка ('ссылка на какую-то статью, книгу и т.д. ,скажем, такая [см. Мельчук, Жолковский,1978] или Internet ссылка, скажем, http:/www.smth.com). Соответственно, есть 4 смысла данной фразы.
- 1.1 На какой странице Интернета находится ссылка на такую-то работу
- 1.2 На какой странице Интернета находится ссылка на другую страницу Интернета
- 1.3 На какой странице в книге находится ссылка на такую-то страницу Интернета (скажем, книга - справочник по Интернету)
- 1.4 На какой странице в книге находятся ссылка на статью, книгу и т.д.
Пример 2
«Эта картина заставила его забыть о своем состоянии»
Имеется 2 значения слова картина ('наблюдаемая в некоторый момент совокупность событий' и 'произведение изобразительного искусства, как правило, выполненное красками по холсту'
и 2 значения слова состояние
('деньги и другие ценности, находящиеся в собственности некоторого субъекта' и 'здоровье физическое либо душевное, уровень усталости, внимания и других параметров человека, связанных с его самоощущением')
И снова, как в предыдущем примере есть 4 смысла данной фразы.
- 2.1 Это живописное полотно заставило его забыть о своей бедности/своем богатстве и т. д.
- 2.2 Это, например, увиденное им происшествие, заставило его забыть о своем богатстве, бедности и т. д.
- 2.3 Это живописное полотно заставило его забыть о своей
- болезни/усталости и.т. д.
- 2.2 Это увиденное им происшествие заставило его забыть о своей болезни/усталости и.т. д.
Далее мы приводим еще несколько примеров подобных предложений, перечисляя только значения входящих в них омонимов и предоставляя читателю проверить, насколько свободно могут сочетаться смыслы.
Пример 3
Слушай батюшку!
cлушай= 'слушайся' и 'слушай, что он говорит' , батюшка= 'священник', 'отец'
Пример 4
Zahlen brauchen sie nicht, wenn sie nicht waehlen (нем.)
Zahlen= 'платить', 'цифры'
wa:hlen = 'набирать номер телефона', 'заказывать блюда в ресторане'
2.1 Дефолт логика
Дефолт логика является расширением логики предикатов. Ее можно назвать так же логикой "базовых случаев". Помимо определяемых обычным образом термов логики предикатов, содержащих атомы, а также кванторы существования и всеобщности (будем обозначать термы y,j,c и т. д.) Для перехода к дефолт-логике алфавит логики предикатов расширяется символом "двоеточие" :. Терм нового исчисления имеет следующий вид:
j : y
---------
c
или, в несколько более общем виде:
j : y1, y2,... yn
--------------
c
Запись читается так:
Если известно j, и непротиворечиво предположить y1, y2,... yn, то выводим c. Это подход с довольно ясной интуицией. Можно привести классический
Пример 5
птица(X):может летать(X)
-------------------------
может летать(X)
Это можно читать так: Обычно птицы летают. Если у X - птица и мы не имеем информации о том, что X не может летать (например, поскольку X пингвин), то мы предполагаем, что X может летать.
Дефолт теория - это набор фактов, представляющих собой определенную, достаточно хорошо формализованную, но неполную информацию о мире и набор дефолт - правил, которые дают вероятные, но не необходимые истинные заключения. Некоторые из заключений могут быть пересмотрены когда появится некоторая дополнительная информация.
В законодательстве большинства цивилизованных стран присутствует норма, которая является великолепным примером применения дефолт логики - презумпция невиновности. (что показывает: дефолт логика хорошо соответствует определенного рода интуиции, являясь удобным формализмом для ее выражения). Выразим презумпцию невиновности на описанном выше языке
Пример 6
обвинен(X):невиновен(X)
----------------------------------------
невиновен(X)
Если нет доказательств обратного, обвиняемый считается невиновным
Дефолт теория является парой T=(W,D) где W - набор фактов, D - набор дефолт правил. Дефолт правила применяются к фактам в любой из возможных последовательностей. К выведенным формулам также применяются правила, и так продолжается до тех пор, пока система не достигает состояния, при котором ни одно из правил не применимо. Пусть P - некоторая последовательность применения дефолт правил. P[k], kÎN - последовательность длинны k. С каждой P связаны два множества In[P] и Out[P].
- In[P] это Th(M), где M=WÈ{cons(d) | d встречается в P}
- Out[P] = {ùy | y Î just(d) для некоторого вхождения d в P}
Последовательность P называется процессом T, если dk применимо к In[P[k]] для всех k, таких, что dk встречается в P
- P выполним, если In[P] Ç Out[P] = Æ
- P замкнут, если все d ÎD применимые к In[P] уже содержатся в P
- Применение дефолт логики для разрешения многозначности
2.1 Случай простой многозначности
Перечисленные выше примеры могут показаться несколько искусственными, далекими от реальности, относящимися лишь к академическим упражнениям на тему устройства языка. Нисколько не пытаясь преуменьшить ценность абстрактных исследований, хотим, тем не менее привести пример из реальной практики. Данная многозначная фраза поступила на вход реально существующей автоматической вопрос-ответной системы, консультанта по налогам.
Пример 6
How to deduct rental expense? (англ.)
Данная фраза имеет 2 смысла: 'Как я могу сократить налоги, вычитая из них стоимость аренды помещения' и 'Как я могу сократить налоги, вычитая из них стоимость содержания принадлежащего мне помещения'
Начальное представление этого запроса
deduct(expense(rent())).
In({}) ={deduct,expense,rent,@rent1},
In({}) ={deduct,expense,rent,@rent2}.
После применения каждого из правил, другое становится неприменимым, и оба
{deduct,expense,rent,@rent1} и
{deduct,expense,rent,@rent2}
являются расширениями. На вопрос
How to deduct rental expense?.
система выдаст два ответа.
2) How to deduct my rental expenses from my rental income?
Начальное состояние запроса
deduct(expense(rent()),income(rent())).
Существует единственный полнимый и замкнутым процесс, дающий расширение
{deduct, expense, rent, income(rent), @income(rent1)}.
Итак, если запрос симметрично-многозначен, то есть не содержит информации, помогающей разрешению многозначности, дефолт-правила приводят к нескольким вариантам расширений, соответствующим разным значениям фразы. Если же в запросе (во фразе) содержится что-то, помогающее выбрать одно из значений, система приходит к единственному ответу. Введением соответствующих параметров во всех приведенных выше примеров можно добиться выхода из многозначности.
2.2 Структура значения: некоторые способы преодоления симметрии в многозначности
Ситуация осложняется тем, что подход с введением параметров можно реализовать не всегда. Во первых, системе может быть доступен лишь фрагмент информации (например передача с помехами). При отсутствии необходимой информации в экспертных системах возможно задать пользователю дополнительный уточняющий вопрос, наподобие того, как это делается в Microsoft Office Assistant или в системе Ask Jeeves. Однако, система может быть ограниченно интерактивной (скажем, получает запросы в виде SMS, email и т. д.); даже в полностью интерактивной системе по соображениям удобства пользователя требуется, чтобы варианты предоставлялись не в алфавитном порядке, и не в виде некоторого "условного совпадения ключевых слов" как это делается в поисковых машинах Интернета, а в порядке уменьшения вероятности правильного ответа - наиболее вероятное сначала, и т. д.
В решении этой задачи может помочь известный в структурализме подход, согласно которому сама полисемия не является симметричной и каждое многозначное слово имеет некоторое "прототипическое" значение и несколько второстепенных. В рамках данной статьи нет возможности рассмотреть вопрос о том, верно это или нет для языка в целом, однако представляется несомненным следующее. В узких предметных областях, где речь идет об ограниченном круге тем, несимметричность полисемии очень часто имеет место. (Пример 6, однако, является хорошей демонстрацией того, что это не всегда так). Нетрудно заметить, что приведенной выше тезис о существовании прототипического значения является дефолт правилом.
Building extensions of default logic to represent ambiguous sentences
- Krizevsky, B. Galitsky
Keywords: nonmonotonic logic, default logic, question-answering system, formal semantics
We build the default logic for pragmatic analysis of natural language queries. Ambiguous sentences are considered so that each set of meanings is assigned an extension of default system.