- •Концептуальные графы
- •Иерархия классов в концептуальных графах
- •Операции обобщения и специализации
- •Метавысказывания
- •Связь концептуальных графов и логики
- •Теория нечетких множеств (fuzzy set theory)
- •Основные характеристики нечетких множеств
- •Основные типы функций принадлежности
- •Способы выбора функции принадлежности.
- •Лингвистические переменные
- •Нечеткие лингвистические высказывания
- •Правила нечетких продукций
- •Основные этапы нечеткого вывода
Концептуальные графы
Концептуальными графами представляют собой особого рода структуры, которые могут использоваться для представления знаний.
Наибольший вклад в развитие этого направления внес Джон Сóва (John F. Sowa), опубликовавший в 1984 г. обширное описание концептуальных графов и предложивший их использовать для выражения смысла высказываний на естественном языке.
Концептуальный граф является конечным, связным, двудольным графом. Вершины графа разбиты на два непересекающихся множества:
• понятия, или концепты (concepts) обозначаются прямоугольниками;
• концептуальные отношения (conceptual releations) обозначаются овалами.
Любое ребро концептуального графа соединяет две вершины из разных множеств.
В концептуальном графе вершины из множества понятий обозначают абстрактные или конкретные понятия из описываемой предметной области. Конкретные понятия (кошка, телефон) обладают возможностью формировать соответствующий мыслимый образ в нашем сознании – совокупность ощущений, воспринимаемых нашими органами чувств. Подчеркнем, что конкретное понятие включает в себя как общее понятие (например, кошка), так и вполне определенные сущности (например, кошка Мурка у бабушки Дуси). Абстрактные понятия не формируют четкий и однозначный образ в нашем сознании – это такие понятия как: великодушие, честь и др.
Вершины, являющиеся концептуальными отношениями, определяют некоторое отношение (или взаимосвязь) между несколькими понятиями в сознании человека. Выражение отношений между понятиями предметной области в виде вершин позволяет моделировать отношения любой арности (следующий рисунок).
«летает» − отношение арности 1
«цвет» − отношение арности 2
«родители» − отношение арности 3
Отдельный концептуальный граф определяет некоторое высказывание о сущностях описываемой предметной области. Например, второй граф на предыдущем рисунке определяет высказывание «собака имеет коричневый цвет».
Граф на следующем рисунке определяет более сложное высказывание: Мэри дала книгу Джону.
Обычно программная система должна одновременно содержать большое количество таких графов для описания различных свойств предметной области.
Авторы первых вариантов семантических сетей не уделяли должного внимания определению отношений вида «класс – член класса» и «класс – подкласс». В результате использование ранних вариантов семантических сетей нередко приводило к семантическим неоднозначностям и логической неадекватности. Например, отношение между индивидом и классом, к которому он принадлежит, отличается от отношения между родительским классом (класс хищники) и классом-предком (класс собака).
Хищники
Разные отношения
Собака
Собака Шарик
Похожая ситуация возникает, когда, наряду со свойствами, характеризующими отдельных индивидов, существуют свойства для характеристики класса как целого. Например, такие свойства, как наличие меха и любовь к костям из супа, присущи индивидуальным собакам, класс «собаки» как таковой подобных свойств не имеет. К классу «собаки» могут быть применимы такие свойства, как название класса по латыни и место в зоологической классификации.
При использовании формализма концептуальных графов возможность выражения различных видов отношений заложена в саму схему представления знаний, поэтому удается избежать логической неадекватности.
В концептуальном графе каждое понятие является уникальным индивидом из определенного класса, при этом, вместо понятия класс часто используется эквивалентное понятие тип. Поэтому любая вершина-прямоугольник, обозначающая понятие, снабжается меткой класса (или меткой типа) (type label), которая определяет класс или тип, к которому принадлежит индивид, представленный этой вершиной.
Вершина с меткой dog обозначает некоторого индивида из класса «собака». Используемые классы организованы в иерархию. Например, класс dog (собака) является подклассом класса carnivore (хищники), который является подклассом класса mammal (млекопитающее), и т.д.
Разумеется, что вершины с одной и той же меткой класса обозначают индивидов из одного класса, хотя и не обязательно эти индивиды совпадают. Для указания конкретного индивида, которого обозначает вершина, используется индивидуальная метка (individual label), отделяемая от метки класса символом «:». В качестве содержимого индивидуальной метки может выступать имя индивида. Например, концептуальный граф на следующем рисунке выражает утверждение: «собака Эмма коричневого цвета».
Формализм концептуальных графов также позволяет создавать высказывания, определяющие свойства конкретных, но безымянных индивидов. Пример такого высказывания − "я знаю, что у соседа есть коричневая собака, но ее имя мне неизвестно". Особый литерал, называемый маркером, служит для уникальной идентификации любого индивида и может быть использован в качестве индивидуальной метки, вместо имени. Маркер состоит из символа «#» и идущего вслед за ним числа. Маркер отличается от имени в том, что для каждого индивида он обязателен и уникален – индивиды могут иметь одно или несколько различных имен, могут быть безымянными, но обязательно имеют только один уникальный маркер (следующий рисунок).
Введение маркеров позволяет разрешить семантическую неоднозначность, появляющуюся при произвольном связывании имен и индивидов. Маркеры позволяют отделить индивида от имени. Если индивид из класса dog с маркером #1352 имеет имя Эмма, то мы можем явно выразить этот факт, используя концептуальное отношение name (имя), получив следующий граф:
Имя в этом случае вводится в кавычках, обозначающих, что это текстовая
строка.
Возможность отделения индивида от имени является важным свойством концептуальных графов. Например, это позволяет нам строить высказывания об именах как таковых, без связи с конкретным индивидом: если мы говорим, что мужское имя «John» очень часто встречается у англоговорящих, то опреде-
ляем свойство самого имени, а не какого-то конкретного индивида с именем John. У нас также появляется возможность естественным образом выразить факт наличия нескольких имен у одного и того же индивида.
Например, у американцев есть такое понятие как «middle name», то есть своего рода второе имя. Известного американского президента Франклина Рузвелта (Franklin Delano Roosevelt) в разных источниках могут называть следующим образом:
В концептуальных графах для обозначения вершин-понятий может использоваться также родовой маркер (generic marker) «*», который обозначает неопределенного (любого) индивидуума. Зачастую он не указывается, так что вершина с обозначением «dog» эквивалентна вершине с обозначением «dog:*». Для обозначения одного и того же неопределенного индивида могут применяться переменные (*X, *age и т.п.). С использованием переменных высказывание: «Собака чешет ухо лапой» (“the dog scratches its ear with its paw”) – будет выглядеть так, как показано на рисунке:
