2. Семантические сети - Действия
Введение
Семантические сети способны описывать не только статические свойства объектов, но и действия, которые они (или с ними) производят. Этот документ подробнее описывает отношения sub, obj, loc и evt.
Действия
Отношение sub (кто? - подлежащее) указывает на исполнителя действия.
Субъект у действия всегда один.
Если исполнителей действия несколько, то они вводятся как группа, выступающая единым субъектом.
Например, "Маша и Саша тащат Петю" это:
group1 { isa group_humans; has Маша, Саша }. drag1 { isa drag; sub group1; obj Петя }.
Отношение obj (что? - прямое дополнение) указывает на объект действия: "взять яблоко", "прочитать книгу", "завести машину", "залить огонь". Не все действия имеют объект (идти, лежать, гореть, спать, улыбаться), Также это ребро связывается не с всеми сущностями (можно налить жидкость, но нельзя налить человека).
Отношение ins (чем? - дополнение) является инструментом, орудием, при помощи которого совершается действие: "взять рукой", "прочитать глазами", "завести ключём", "разрезать ножём", "залить водой".
Отношения действия выполняют семантическую, а не синтаксическую роль. Например [Леонтьева2006]:
Синтаксически этот текст имеет ядро "ложку залить стаканами". Однако его семантическое ядро другое: "траву залить водой". Более детально:
grass1 { isa grass; att { isa volume; val 1; uom spoon } }. water1 { isa water; att { isa volume; val 2; uom glass_vessel}; att {isa boiling} }. pour_down1 { isa pour_down; obj grass1; ins water1 }.
Аналогично "скакать на лошади" - это "сидеть на лошади, которая скачет", а "лететь на самолёте" - это "находиться внутри самолёта, который летит". Глаголы, как и существительные полисемичны: "положить яблоко на стол" (лишиться объекта) не тоже самое, что "положить руку на стол" (разместить свою часть).
Действие, как и объект, может иметь атрибуты "Мия быстро взяла яблоко" (как? - наречие):
take1{ isa take; obj Mia1; sub red_apple; att { isa fast} }.Сюда же относится Сидел отвернувшись (как? - деепричастие).
В базе act перечисляется с элементами каких множеств действие способно устанавливать связи:
take { sub sub_take = human + monkey; # объединение множеств human, monkey в sub_take obj small_thing; # может взять небольшой предмет !obj house; # не может взять дом ins hand { pof sub_take} }.
Более глубокие истины типа "человек может взять с поверхности небольшой предмет, если этот предмет не прикреплён к поверхности" описываются в базе правил.
- Моя мать потащила её куда-то.
- Вышел освежиться. (с какой целью? инфинитив)
Обстоятельства места
Обстоятельство места действия, отвечает на вопросы положения: где? у кого?, кому?, от куда?, куда?.
Местом может выступать, как конкретный объект: "взять на кухне", "дать Саше", "вытащить из бутылки",
так и часть поверхности объекта: "взять со стола", "повесить на стену", "жить на Марсе".
В общем случае, место - это некоторая структура: "поставить на центр стола", "взять на кухне со стола", "жить на окраине города, недалеко от леса". В этих примерах место действия одно, но оно имеет уточняющий, иерархический "адрес".
Действия перемещения могут связывать между собой два и более мест: "переставил со стола на полку", "переехал из Парижа в Лондон", "посетил Париж, Лондон, Нью-Йорк".
Во всех выше перечисленных случаях мы используем ребро loc, направленное из узла действие в (обычно безымянный) узел места. Выходящие из ула места рёбра уточняют его положение и назначение.
Обстоятельства времени
Обстоятельство времени действия в языке отвечает на вопросы: когда? с каких пор? до каких пор? как долго?.
Время данного события проще всего характеризовать интервалом [t1, t2]
его начала t1 и конца t2.
Для двух событий A и B можно вводить различные лингвистические отношения:
раньше - позже: [a1,a2] < [b1,b2]; одновременно: [a1,a2] = [b1,b2]; во время: a1 < [b1,b2] < a2
Различается момент речи [s1,s2] и события [a1,a2], [b1,b2], ... о которых идёт высказывание. Обычно s1=s2=s. Число возможных комбинаций, даже для трёх интервалов достаточно велико. Например:
"Кот лёг(A) на диван." a1 ~ a2 < s "Кот находился(A) там с 6:00 до 12:00." a1 < a2 < s "Два часа Кот смотрел(A) в окно." a1 < a2 = a1 + 2h < s "Кот спит(A) уже третий день." a1 < a2 = a1 + 3d ~ sВ последнем случае мы имеем несовершенное время. В русском языке, с учетом отношения к текущему моменту (времена Прошедшее, Настоящее, Будущее) и совершенности и несовершенности для (П и Б) есть 5 времён:
"улетел" ... "улетал" ... "улетаю" ... "буду улетать" ... "улечу".
"Мушкетёры выехали(A) до рассвета(B)." a1 ~ a2 < b1 < b2 < s "После заката(A) мушкетёры ехали(B) ещё 2 часа." a1 < a2 = b1 < b2 = b1 + 2h < s "Письмо пришло(A) только, что - сказал(B) Атос." a1 ~ a2 <~ b1 ~ b2 < s
По-мимо интервальных событий [t1...t2], язык позволяет сообщать и думать о периодических процессах. Процесс может повторяться в течении некоторого времени или быть условно-бесконечным.
"Птицы осенью улетают." "Миледи завтракает с 8:00 до 9:00." "В течении дня она выглядывала в окно каждый час."
Простейшее отражение временной последовательности реализуется отношением next.
"Миледи налила яд в бокал, дала его Констанции и ухмыльнулась":

Отношение next транзитивно, однако, сеть таких отношений (в отличие от физического времени), нелинейна. Некоторые ветки последовательностей событий могут происходит независимо, без связки друг с другом:
Мушкетёры, посетив Кардинала, нажрались и поехали к Миледи. После того как мушкетёры уехали от Кардинала, он выпил вина, поиграл в шахматы и пошёл спать.
Обе ветки начинаются от одного узла, но дальше живут независимо. Только дополнительная информация может их связать, частично синхронизировав времена:
Когда Кардинал играл в шахматы к нему вбежала зарёванная Миледи с криками - ''Ну, почему опять я!''

Запишем некоторые утверждения на формальном языке, опуская описание субъектов и объектов,
которые считаются конкретными сущностями (элементами множеств).
"Кот находился там с 6:00 до 12:00.":
находится next читать1 { isa read; sub I }. находится { isa be_in_the_same_place; sub Кот; loc { isa диван; val on }; evt {isa interval; val [6,12]; uom hour } }."Два часа Кот смотрел в окно.":
смотреть { isa see; sub Кот; evt { isa duration; val 2; uom hour }; next читать2 }.
С семантической точки зрения несколько событий необходимо разбивать на отдельные "кванты".
"Мушкетёры выехали до рассвета":
начало_движения { isa start_moving; obj Группа_мушкетёров; next рассвет }. рассвет { isa sunrise; }.
"После заката мушкетёры ехали ещё 2 часа.":
закат { isa sunset; next ехать }. ехать { isa moving; obj Группа_мушкетёров; next читать3; evt { isa duration; val 2; uom hour } }.
Сравнение с ATO
При составлении семантических словарей часто (например aot.ru) используют достаточно много семантических отношений. Отношение R(A,B) означает "A является R для B". Так, "роман Толстого" это АВТОР(Толстой, роман). При этом слабо развиты механизмы их кластеризации по "похожести". Например, в "РОСС", "Диалинг", "АОТ" (Леонтьева Н.Н., Сокиро А.) близкие по смыслу отношения { АГЕНТ (собака укусила), АВТОР (роман Толстого) } и { ИНСТР (резать ножом), СРЕДСТВО (красить белилами) } идут равноправно, без какой либо их группировки.
Очевидно, что существует слабое семантическое отличие между
- АГЕНТ (ураган повалил деревья)
- ПРИЧ ("деревья, поваленные ураганом")
- РЕЗЛТ (испечь пирог),
- СОДЕРЖ (рассказать о весне),
- ТЕМА (говорить о Париже),
- ПАЦИЕН (арест преступника)
- ИНСТР (резать ножом, брать рукой),
- СРЕДСТВО (красить белилами),
- СПОСОБ (идти босиком) (?)
- ЗНАЧ (высота дома - 20 метров), ИДЕНТ (дом N 20),
- ИМЯ (поэт Пушкин), ПАРАМ (высота дома), ПРИЗН (красивый шар),
- МАТЕР (сумка из кожи)
X att { isa height; val 20; uom meter}. X att { isa number; val 20}. X att { isa surname; val "Пушкин"}.
Атрибут действия:
- СТЕПЕНЬ (весьма преуспеть),
- ОЦЕНКА (хорошо относиться)
- АВТОР(Толстой, роман)
"Отношение" это сущность Novel1, описываемая участком сети (из области знаний):
{ isa write; sub Tolstoy1 { isa human; att { isa surname; val "Толстой"} }; obj Novel1 { isa TolstoysBooks; att { isa name; val "Война и мир T.1"} }; evt Year1865 { isa moment; val 1865; uom year } }.Аналогично (?) для принадлежности
- ПРИНАДЛ (дом отца),
- СУБ (любовь отца) .
- АДР (Маша дала яблоко Саше)
- КОН-Т (приехал в Варшаву)
- В-НАПР (указатель на Монино, поехать направо)
- К-АГЕНТ (купить яблоко у торговца) - коагент
- ИСХ-Т (приехать из Парижа, яблоки из Молдавии) - исходный пункт
- ЛОК (жить в глуши, банка кишела)
- НАЗН (книга для детей),
- ОБ (уничтожить мост),
- ОГРН (выделять по возрасту),
- МАСШТ (Всемирный Банк),
- ПОСРЕД (закончить доклад анекдотом),
- ЦЕЛЬ (забастовка в целях повышения зарплаты).
Меньше, больше.
Литература
- [Леонтьева2006] Леонтьева Н.Н. "Автоматическое понимание текстов. Системы, модели, ресурсы" (2006) М.: Академия
