что такое семантическая сеть
Что такое семантическая сеть
5. СЕМАНТИЧЕСКИЕ СЕТИ И КОНЦЕПТУАЛЬНЫЕ ГРАФЫ
5.1. Представление знаний семантическими сетями
Семантика – раздел языкознания, изучающий значение единиц языка, прежде всего его слов и словосочетаний. В более общем смысле, семантика определяет смысл знаков (образов, обозначений) и их сочетаний.
Семантическая сеть (смысловая сеть) — модель предметной области, представленная в виде графа, вершинами которого являются понятия, а дуги (ребра) – отношения между ними.
В качестве понятий обычно выступают абстрактные или конкретные объекты (огурец, машина, любовь, Маша). В качестве отношений наиболее часто используются следующие (смысловая классификация) [19, 31]:
— таксономические («класс – подкласс – экземпляр», «множество – подмножество – элемент» и т.п.). Данный тип отношения называют также отношением AKO (англ. A Kind Of – является разновидностью), IS A (является, это есть) или гипонимии (гипероним – общая сущность; гипоним – частная сущность);
— структурные («часть – целое»). Данный тип отношения называют также отношением Part of (является частью), Has part (состоит из, включает в себя), агрегации (лат. aggregatio – присоединение), композиции (лат. compositio – составление, связывание, сложение, соединение) или меронимии (холоним – сущность, включающая в себя другие; мероним – сущность, являющаяся частью другой);
— функциональные (определяемые обычно глаголами «производит», «влияет» и т.п.);
— количественные (больше, меньше, равно и т.п.);
— пространственные (далеко от, близко от, за, под, над и т.п.);
— временные (раньше, позже, в течение и т.п.);
— атрибутивные (иметь свойство, иметь значение);
— логические (И, ИЛИ, НЕ);
Отношения можно также классифицировать по степени участия (арности) понятий в отношениях:
Приведем пример двух простых семантических сетей. Одна из них (рис.5.1а) описывает понятие «помидор», а другая (рис. 5.1б) описывает факт «Маша укрепила стул клеем».
Рис.5.1. Примеры семантических сетей
В разных вариациях семантических сетей для отображения понятий используются различные геометрические примитивы: прямоугольники, овалы, четырехугольники со скругленными углами и т.п.
Проблема поиска решения в семантической сети сводится к задаче поиска фрагмента сети, соответствующего поставленному запросу. Например, вопрос «Какого цвета помидор?» можно графически представить в виде подсети.
Рис.5.2. Представление вопроса в виде подсети
Наложение подсети вопроса на сеть, описывающую предметную область, дает ответ – «красный».
Семантические сети широко используются в экспертных системах в качестве языка представления знаний (например, в экспертной системе PROSPECTOR), в системах распознавания речи и понимания естественного языка. Непосредственное отношение к сетевым моделям имеют исследования по реляционным, сетевым и иерархическим БД.
5.2. Классификация семантических сетей
Классифицировать семантические сети можно по следующим признакам [19, 21]:
— по количеству типов отношений:
— однородные (с единственным типом отношений);
— неоднородные (с различными типами отношений);
— по назначению. Обычно совпадает с преобладающим типом отношений, например:
— функциональные — вычислительные модели, позволяющие описывать процедуры вычислений одних информационных единиц через другие;
— сценарии — используются для описания казуальных отношений (причинно-следственных или устанавливающих влияние одних явлений или фактов на другие), а также отношений типа «средство — результат», «орудие — действие» и т.п.;
5.3. Достоинства и недостатки семантических сетей
Достоинства семантических сетей [4, 21]:
— универсальность, достигаемая за счет выбора соответствующего набора отношений. В принципе с помощью семантической сети можно описать сколь угодно сложную ситуацию, факт или предметную область;
— наглядность системы знаний, представленной графически;
— близость структуры сети, представляющей систему знаний, семантической структуре фраз на естественном языке;
— соответствие современным представлениям об организации долговременной памяти человека.
В качестве иллюстрации последнего утверждения приведем следующий пример [23].
Рис.5.3. Семантическая сеть «Канарейка»
Из психологии известно, что люди при запоминании часто используют ассоциации и стараются иерархически организовать свои знания. Коллинс и Куиллиан проводили следующий тест. Группе людей задавались вопросы о различных свойствах птиц, такие как «Канарейка — это птица?», «Канарейка может петь?» или «Канарейка может летать?».
Хотя ответы на эти вопросы, возможно, просты, изучение времени реакции показало, что при ответе на вопрос «Может ли канарейка летать?» оно больше, чем на вопрос «Может ли канарейка петь?». Аллан Коллинс и Росс Куиллиан объясняют эту разницу во времени ответа тем, что люди запоминают информацию на самом абстрактном уровне. Вместо того, чтобы запоминать конкретные свойства для каждой птицы (канарейки летают, дрозды летают, ласточки летают), люди запоминают, что канарейки — птицы, а птицы (обычно) имеют свойство летать. Таким образом, попытка вспомнить, может ли канарейка летать, занимает больше времени, чем воспоминание, может ли канарейка петь. Это происходит из-за того, что для получения ответа человек должен дольше путешествовать по иерархии структур памяти.
Недостатки семантических сетей:
— сетевая модель не дает (точнее, не содержит) ясного представления о структуре предметной области, поэтому формирование и модификация такой модели затруднительны;
— сетевые модели представляют собой пассивные структуры, для обработки которых необходим специальный аппарат формального вывода;
— проблема поиска решения в семантической сети сводится к задаче поиска фрагмента сети, соответствующего подсети, отражающей поставленный запрос. Это, в свою очередь, обуславливает сложность поиска решения в семантических сетях;
— представление, использование и модификация знаний при описании систем реального уровня сложности оказывается трудоемкой процедурой, особенно при наличии множественных отношений между ее понятиями.
В качестве иллюстрации последнего утверждения приведем выдержку из [25]:
Очень быстро семантические сети позволили воссоздать исходный ХАОС мироздания и снова загнать кибернетику в интеллектуальный тупик.
Возьмем самый элементарный пример: «Федя дал книгу Мане».
5.4. Концептуальные графы
Дальнейшим развитием графовых структур, моделирующих семантику естественного языка, являются концептуальные графы, предложенные Джоном Сова (1984г.).
Концептуальный граф – это двудольный ориентированный граф, состоящий из вершин двух типов: понятий (англ. concept) и концептуальных отношений (англ. conceptual relation). Напомним, что двудольный граф – это граф, множество вершин которого можно разбить на две части таким образом, что каждое ребро графа соединяет какую-то вершину из одной части с какой-то вершиной другой части, то есть не существует ребра, соединяющего две вершины из одной и той же части.
Рис.5.4. Двудольный граф
Понятия в концептуальных графах отображаются прямоугольниками, отношения между ними – эллипсами. В отличие от семантических сетей отношение между понятиями отображаются не именованной дугой графа, а вершиной соответствующего типа, которая связывает два понятия дугами без метки. Рассмотренный выше пример «Маша укрепила стул клеем» (см. рис.5.1) в виде концептуального графа будет выглядеть следующим образом.
Рис.5.5. Пример концептуального графа
При описании конкретных, но неименованных (анонимных) экземпляров, используется маркер «#». Например, «персона : #1234» или «собака : #4321». Использование анонимных экземпляров позволяет упростить описание и представление предметной области (базы знаний), как набора концептуальных графов. В частности, факт, что три собаки «Тузик», «Мухтар» и «Байкал» черного цвета можно описать вместо одного графа двумя.
Рис.5.6. Пример использования анонимных экземпляров
Вместо обращения к экземпляру по имени можно использовать маркер «*», обозначающий любой экземпляр типа. Т.о., имена понятий «собака» и «собака : *» являются эквивалентными.
Дополнительно к обобщающему маркеру «*» допускается использование переменных для более упрощенного и наглядного отображения графов. В частности, для минимизации пересечений и поворотов стрелок. Например, факт «Собака чешет лапой ухо» может выглядеть следующим образом.
Рис.5.7. Пример использования переменной
Как отмечено ранее, база знаний представляет собой набор концептуальных графов. Каждый отдельный граф представляет собой один факт (высказывание, правило) из предметной области, описываемый через ассоциативные отношения между понятиями. Для представления второго базового механизма структурирования знаний – обобщения понятий – в теории концептуальных графов используются иерархии типов. Отдельная иерархия представляется в виде решетки, описывающей таксономические отношения (отношения наследования) между понятиями, включая множественное наследование. Для представления иерархии типов в виде решетки в нее включается два специальных типа:
— универсальный тип (англ. universal type), являющийся супертипом для всех типов. Обозначается символом «┬»;
— абсурдный тип (англ. absurd type), являющийся подтипом для всех типов. Обозначается символом «┴».
На следующем рисунке приведен пример иерархии типов.
Рис.5.8. Пример иерархии типов геометрических фигур
Иерархии типов позволяют описать статическую составляющую предметной области, а непосредственно концептуальные графы как статическую, так и динамическую.
Теория концептуальных графов предусматривает четыре вида операций, позволяющие создавать новые графы на основе существующих. К ним относятся:
— объединение двух графов в один, если они имеют семантически общие вершины-понятия. Для графов, отображенных на рис.5.6, результат объединения выглядит следующим образом:
Рис.5.9. Пример объединения двух графов
— ограничение – замена вершины-понятия графа другой вершиной-понятием, представляющими его специализацию, или замена имени типа на имя подтипа (экземпляра). Пример применения операции для графов, отображенных на рис.5.6:
Рис.5.10. Пример применения операции «ограничение»
— упрощение – исключение дублирующих понятий или отношений. Дублирование часто возникает в результате операции объединения. Пример применения операции для графа, отображенного на рис.5.7:
Рис.5.11. Пример применения операции «упрощение»
В дополнение к возможности определения отношений между понятиями предметной области, выраженными в одном высказывании, с помощью концептуальных графов можно выражать отношения между высказываниями. Например, предложение: «Вася предполагает, что Маша любит мороженное». Здесь «предполагает» является отношением между субъектом «Вася» и высказыванием «Маша любит мороженное». Все предложение целиком является высказыванием о высказывании (метавысказыванием).
Рис.5.12. Пример метавысказывания
Помимо отображения высказываний в виде графов, наиболее наглядной и доступной для понимания форме, они могут быть выражены в т.н. линейной форме. При этом понятия заключаются в квадратные скобки, а отношения – в круглые. Например, граф, отображенный на рис. 5.12, в линейной форме выглядит следующим образом:
[персона : Вася] (объект) –>
[[персона : Маша] (объект) –> [мороженное]].
При наличии более, чем двух дуг, соединяющих понятие или отношение с другими, они перечисляются через «-». Например, для графа на рис. 5.5 линейная форма
Аналогичный подход используется, если в графе имеются контуры. Например, для графа на рис. 5.11 линейная форма
Семантическая сеть
Неправильно приравнивать друг другу понятия «Семантическая сеть» (англ. Semantic Network ) и «Семантическая паутина» (англ. Semantic Web ). Хотя эти понятия не эквивалентны, тем не менее, они связаны (см. ниже).
Содержание
История
Идея систематизации на основе каких-либо семантических отношений предлагалась ещё учёными ранней науки. Примером этого может служить биологическая классификация Карла Линнея 1735 г. Если рассматривать её как семантическую сеть, то в данной классификации используется отношение подмножества, современное AKO (от англ. «A Kind Of», «разновидность»).
Прародителями современных семантических сетей можно считать экзистенциальные графы, предложенные Чарльзом Пирсом в 1909 г. Они использовались для представления логических высказываний в виде особых диаграмм. Пирс назвал этот способ «логикой будущего».
Важным направлением в исследовании сетей стали работы немецкого психолога Отто Зельца 1913 и 1922 гг. В них для организации структур понятий и ассоциаций, а также изучения методов наследования свойств он использовал графы и семантические отношения. Исследователи Дж. Андерсон (1973), Д. Норман (1975) и другие использовали эти работы для моделирования человеческой памяти и интеллектуальных свойств.
Компьютерные семантические сети были детально разработаны Ричардом Риченсом в 1956 году в рамках проекта Кембриджского центра изучения языка по машинному переводу. Процесс машинного перевода подразделяется на 2 части: перевод исходного текста в промежуточную форму представления, а затем эта промежуточная форма транслируется на нужный язык. Такой промежуточной формой как раз и были семантические сети. В 1961 г. появилась работа Мастермана, в которой он, в частности, определял базовый словарь для 15000 понятий. Эти исследования были продолжены Робертом Симмонсом (1966), Уилксом (1972) и другими учёными.
Структура
Математика позволяет описать большинство явлений в окружающем мире в виде логических высказываний. Семантические сети возникли как попытка визуализации математических формул. Основным представлением для семантической сети является граф. Однако не стоит забывать, что за графическим изображением непременно стоит строгая математическая запись, и что обе эти формы являются не конкурирующими, а взаимодополняющими.
Графическое представление
Основной формой представления семантической сети является граф. Понятия семантической сети записываются в овалах или прямоугольниках и соединяются стрелками с подписями — дугами (см. рис.). Это наиболее удобно воспринимаемая человеком форма. [источник не указан 337 дней] Её недостатки проявляются, когда мы начинаем строить более сложные сети или пытаемся учесть особенности естественного языка. Схемы семантических сетей, на которых указаны направления навигационных отношений, называют картами знаний, а их совокупность, позволяющая охватить большие участки семантической сети, атласом знания.
Математическая запись
В математике граф представляется множеством вершин V и множеством отношений между ними E. Используя аппарат математической логики, приходим к выводу, что каждая вершина соответствует элементу предметного множества, а дуга — предикату.
Лингвистическая запись
В лингвистике отношения фиксируются в словарях и в тезаурусах. В словарях в определениях через род и видовое отличие родовое понятие занимает определённое место. В тезаурусах в статье каждого термина могут быть указаны все возможные его связи с другими родственными по теме терминами. От таких тезаурусов необходимо отличать тезаурусы информационно- поисковые с перечнями ключевых слов в статьях, которые предназначены для работы дескрипторных поисковых систем.
Классификация семантических сетей
Для всех семантических сетей справедливо разделение по арности и количеству типов отношений.
Помимо концептуальных графов существуют и другие модификации семантических сетей, это является ещё одной основой для классификации (по реализации). См. более подробно в соответствующем разделе ниже.
Семантические отношения
Количество типов отношений в семантической сети определяется её создателем, исходя из конкретных целей. В реальном мире их число стремится к бесконечности. Каждое отношение является, по сути, предикатом, простым или составным. Скорость работы с базой знаний зависит от того, насколько эффективно реализованы программы обработки нужных отношений.
Иерархические
Наиболее часто возникает потребность в описании отношений между элементами, множествами и частями объектов. Отношение между объектом и множеством, обозначающим, что объект принадлежит этому множеству, называется отношением классификации (ISA). Говорят, что множество (класс) классифицирует свои экземпляры. [3] (пример: «Шарик является собакой» = Шарик является объектом типа собака). Иногда это отношение именуют также MemberOf, InstanceOf или подобным образом. Связь ISA предполагает, что свойства объекта наследуются от множества. Обратное к ISA отношение используется для обозначения примеров, поэтому так и называется — «Example», или по-русски «Пример». Иерархические отношения образуют древовидную структуру.
Часто в семантических сетях требуется определить отношения синонимии и антонимии. Эти связи либо дублируются явно в самой сети, либо определяются алгоритмической составляющей.
Вспомогательные
В семантических сетях часто используются также следующие отношения [Гаврилова]:
Особенности использования некоторых типов отношений
В семантической сети в качестве понятий могут быть как экземпляры объектов, так и их множества. Использование одних и тех же отношений и для элементов, и для коллекций может привести к недоразумениям. Подобные ошибки в работе некоторых первых систем были описаны в статье Дрю Макдермотта «Искусственный интеллект сталкивается с естественной глупостью».
Рассмотрим пример — четыре предложения:
Для человека ясен смысл этих фраз и многие не задумываясь поставили бы во всех трёх случаях отношение есть отец. Однако это является ошибкой: в первом случае, действительно, описывается отношение между двумя экземплярами, но во втором и третьем — между экземпляром и множеством, а в четвёртом — отношение между представителями из двух множеств. В математической записи это выглядит так, соответственно для предложений 1—4:
Мы видим, что случаи IIа и IIб различаются только порядком следования переменных в предикате, однако для правильности сети это может сыграть важную роль. В примере перечислены лишь 4 рода отношений, всего же для бинарной сети их существует девять. Они различаются кванторами ∃ и ∀, а также порядком переменных.
Графически для отличия всех этих случаев применяют специальные форму пометок отношений на графе: например, отношения первого рода оставляют без изменений, второго — обводят прямоугольной рамкой из точек, третьего — тире, а четвёртого — тире-точка. Либо можно просто написать рядом индекс типа отношения.
Наиболее часто встречающаяся путаница возникает насчёт отношения ISA. Поэтому во многих современных работах принимается, что ISA обозначает связь между экземпляром и множеством (вышеописанный случай IIб): Мурка ISA кошка. Одиночная рамка при этом не используется. Если требуется определить отношение эквивалентности (случай I), для этого может вводиться специальное отношение (хотя для семантической сети нужда в нём небольшая). ISA можно использовать для обозначения вхождения элементов одного множества в другое (случай III), однако так делать не рекомендуется. Для обозначения подмножеств применяется ещё одно специальное отношение — AKO. Различие между «ISA в рамке» и AKO заключается в том, что последнее отвечает ещё и за наследование свойств самих множеств, а не только элементов.
Использование семантических сетей
Семантизация
Семантическая паутина
Концепция организации гипертекста напоминает однородную бинарную семантическую сеть, однако здесь есть существенное отличие:
Попытка создания семантической сети на основе Всемирной паутины получила название семантической паутины. Эта концепция подразумевает использование языка RDF (языка разметки на основе XML) и призвана придать ссылкам некий смысл, понятный компьютерным системам. Это позволит превратить Интернет в распределённую базу знаний глобального масштаба.
Семантическая сеть
Семантическая сеть — информационная модель предметной области, имеет вид ориентированного графа, вершины которого соответствуют объектам предметной области, а ребра задают отношения между ними. Объектами могут быть понятия, события, свойства, процессы.
Таким образом, семантическая сеть является одним из способов представления знаний.
В названии соединены сроки с двух наук: семантика в языкознании изучает смысл единиц языка, а сеть в математике является разновидностью графу — набора вершин, соединенных дугами (ребрами). В семантической сети роль вершин выполняют понятия базы знаний, а дуги (причем направленные) задают отношения между ними. Таким образом, семантическая сеть отражает семантику предметной области в виде понятий и отношений между ними.
Ни в коем случае нельзя смешивать понятия «Семантическая сеть» (англ. Semantic Network) и «Семантическая паутина» (англ. Semantic Web). Это несоответствие возникает как раз из-за неточного перевода. Хотя эти понятия не эквивалентны, однако, они связаны.
История
Идея систематизации на основе каких-либо семантических отношений предлагалась еще учеными ранней науки. Примером этого может служить биологическая систематика Карла Линнея 1735 Если рассматривать ее как семантическую сеть, то в данной классификации используется отношение подмножества, современное AKO.
Предками современных семантических сетей можно считать экзистенциальные графы, предложенные Чарльзом Пирсом в 1909 г. Они использовались для представления логических выражений в виде особых диаграмм. Пирс назвал этот способ «логикой будущего».
Важным начинанием в исследовании сетей стали работы немецкого психолога Отто Зельц 1913 и 1922 В них, для организации структур понятий и ассоциаций, а также изучение методов наследования свойств были использованы графы и семантические отношения. Исследователи дж. Андерсон (1973), д. Норман (1975) и другие использовали эти работы для моделирования памяти человека и его интеллектуальных возможностей.
Компьютерные семантические сети были детально разработаны Ричардом Риченс в 1956 году в рамках проекта кембриджского центра изучения языка по машинному переводу. Процесс машинного перевода подразделяется на 2 части: перевод исходного текста в промежуточную форму представления, а затем эта промежуточная форма переводится на язык. Такой промежуточной формой как раз и были семантические сети. В 1961 г.. Появилась работа Мастерман, в которой он, в частности, определял базовый словарь для 15 000 понятий. Эти исследования были продолжены Робертом Симмонсом (1966), Уилксом (1972) и другими учеными.
Большой интерес представляет работа Куиллиана (1967 г.).
Структура
Математика позволяет описать большинство явлений в окружающем мире в виде логических выражений. Семантические сети возникли как попытка визуализации математических формул. Основным способом представления для семантической сети является граф. Однако не стоит забывать, что за графическим изображением непременно стоит строгий математический запись, и обе эти формы являются, не конкурируют, а дополняют друг друга.
Графическое представление
Основной формой представления семантической сети является граф. Понятие семантической сети записываются в овалах или прямоугольниках и соединяются стрелками с подписями — дугами. Это удобная форма которая воспринимается человеком. Ее недостатки проявляются, когда мы начинаем строить более сложные сети или пытаемся учесть особенности естественного языка.
Математическая запись
В математике граф представляется множеством вершин V и множеством отношений между ними E. Используя аппарат математической логики, приходим к выводу, что каждая вершина соответствует элементу предметной множества, а дуга — предикату.
Классификация семантических сетей
Для всех семантических сетей справедливое разделение по арностью и количеством типов отношений.
По количеству типов, сети могут быть однородными и неоднородными. Однородные сети имеют только один тип отношений (стрелок), например, такова вышеупомянутая классификация биологических видов (с единственным отношением AKO). В неоднородных сетях количество типов отношений более двух. Классические иллюстрации данной модели представления знаний представляют именно такие сети. Неоднородные сети представляют больший интерес для практических целей, но и большую сложность для исследований.
По арностью, типичны сети с бинарными отношениями (связывающие ровно два понятия). Бинарные отношения, действительно, являются простыми и удобно выглядит на графе в виде стрелки между двумя понятиями. Кроме того, они играют исключительную роль в математике. На практике, однако, могут понадобиться отношения, связывающие более двух объектов — N-арные. При этом возникает сложность — как отразить подобную связь на графе, чтобы не запутаться. Концептуальные графы снимают это осложнения, представляя каждое отношение в виде отдельного узла.
Кроме концептуальных графов существуют другие модификации семантических сетей, это является еще одним основанием для классификации (за реализацией).
Семантические отношения
Количество типов отношений в семантической сети определяется ее разработчиком, исходя из конкретных целей. В реальном мире их количество стремится к бесконечности. Каждое отношение является, по сути, предикатом, простым или сложным. Скорость работы с базой знаний зависит от того, насколько эффективно сделанные программы обработки нужных отношений.
Иерархические
Чаще всего возникает потребность в описании отношений между элементами, множествами и частями объектов. Отношение между объектом и множеством, обозначающий, что объект принадлежит этому множеству, называется отношением классификации (ISA). Говорят, что множество (класс) классифицирует свои экземпляры. Название происходит от английского «IS A». Иногда это отношение называют также MemberOf или как-то похоже. Связь ISA предполагает, что свойства объекта наследуются от множества. Обратное к ISA отношение используется для обозначения примеров, поэтому так и называется — «Example», или Украинская «Например».
Отношение между надмножиною и опилками называется AKO — «A Kind Of» («разновидность»). Элемент подмножества называется гипонимом, а надмножины — гиперонимом, а именно отношение называется отношением гипонимии. Альтернативные названия — «SubsetOf» и «Опилки». Это отношение определяет, что каждый элемент первого множества входит и во второй (выполняется ISA для каждого элемента), а также логическую связь между самими подмножествами: которых не было больше второго и свойства первого множества наследуются второй.
Объект, как правило, состоит из нескольких частей, или элементов. Например, компьютер состоит из системного блока, монитора, клавиатуры, мыши и т. Д. Важным отношением является HasPart, описывающий части / составляющие объекты (отношение меронимии). Мерон — это объект, являющийся частью другого. Двигатель — это Мерон для автомобиля. Холоне — это объект, который влючает в себя другое. Например, у дома есть крыша. Дом — Холон для крыши. Компьютер — Холон для монитора. Мерон Холон — противоположные понятия.
Часто в семантических сетях нужно определить отношения синонимии и антонимии. Эти связи или дублируются явно в самой сети, или в алгоритмической составляющей.
Вспомогательные
В семантических сетях часто используются также такие отношения [Гаврилова]:
Этот список может сколько угодно продолжаться: в действительности количество отношений огромна. Например, между понятиями может использоваться отношение «совершенно разные вещи» или подобное: не_мають_відношення_між_собою(Сонце, Кухонний_чайник)
Использование семантических сетей
Семантическая паутина
Концепция организации гипертекста напоминает однородную бинарную семантическую сеть, однако здесь есть существенное отличие:
Попытка создания семантической сети на основе всемирной паутины получила название семантической паутины. Эта концепция подразумевает использование языка RDF (языка разметки на основе XML) и призвана добавить ссылкой смысл, понятный компьютерным системам. Это позволит превратить Интернет в распределенную базу знаний глобального масштаба.