Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Лекция 5. Семантические сети



Читайте также:
  1. В 1-3 ЛЕКЦИЯХ
  2. В 12-14 ЛЕКЦИЯХ
  3. В 15-20 ЛЕКЦИЯХ
  4. В 23-26 ЛЕКЦИЯХ
  5. В 4-5 ЛЕКЦИЯХ
  6. В 6-11 ЛЕКЦИЯХ
  7. Вторая лекция — 18 января 1965 г.

 

Термин «семантическая сеть» обозначает семейство представлений, основанных на графах. Эти представления отличаются главным образом именами вершин, связей и выводами, которые можно делать в этих структурах.

Под семантической сетью подразумевают систему знаний некоторой предметной области, имеющую определенный смысл в виде це­лостного образа сети, узлы которой соответствуют понятиям и объектам, а дуги - отношениям между объектами. При построе­нии семантической сети отсутствуют ограничения на число свя­зей и на сложность сети. Для того чтобы формализация оказалась возможной, семантическую сеть необходимо систематизировать.

Базовые структуры в этих моделях знаний могут быть представлены графом, множество вершин и дуг которого образуют сеть. Развитию моделей этого класса в большей степени послужили проблемы алгоритмизации понимания естественного языка. Семантические сети (СС) обычно используют для представления знаний общего характера.

Кроме общих исходных предпосылок различные СС существенно отличаются. Это объясняется тем, что конкретные типы СС разрабатываются для различных целей различных приложений.

Не всякий помеченный сетевой граф можно рассматривать как СС, поскольку семантичность не присуща графу априори. Для того, чтобы приписать графу некоторую семантику, необходимо тщательно определить:

1. Что обозначают вершины и дуги графа.

2. Как их можно использовать при обработке.

Создание СС – это реализация попытки обеспечить интегрированное представление данных, категорий (типов) данных, свойств категорий и операций над данными и категориями. Особенность СС заключается в целостности системы, выполненной на ее основе, т.е. возможности разделить базу знаний и механизм вывода, при этом интерпретация СС реализуется с помощью использующих эту сеть процедур.

При построении семантической сети отсутствуют ограниче­ния на число элементов и связей. Поэтому систематизация отно­шений между объектами в сети необходима для дальнейшей фор­мализации.

В СС нет четких различий между операциями над данными и операциями над схемой. СС позволяет в одинаковой мере манипулировать как данными, так и знаниями о них.

Рассмотрим основные концепции, реализуемые в СС:

1. Концепция одновременного рассмотрения в модели как «знака», так и «типа». Знак – это конкретное значение или конкретный экземпляр рассматриваемого объекта. Тип – это класс подобных знаков.

Обобщение знаков в типы – элементарная форма абстрагирования. Это обобщение необходимо для улучшения понимания сложных объектов. Например, общее понятие ВЕЛОСИПЕД - абстракция множества представлений о конкретных велосипедах.

Абстракция может быть многоуровневой, т.е. абстракция одного уровня может рассматриваться как объект абстракции другого уровня и т.д. (т.е. абстракция может быть использована для формирования нового типа из других типов).

2. Концепция иерархии типов. Обобщение позволяет соотнести множество знаков или множество типов с одним общим типом. Различают обобщения:

знак – тип – его называют классификацией;

тип–тип, которое собственно и носит название обобщения.

Процессом, обратным процессу классификации, является экземпляризация – порождение реализаций. Процессом, обратным процессу обобщения, – специализация.

Обобщение акцентирует внимание на сходстве объектов, абстрагируясь от различий. Общий тип обладает всеми свойства­ми, общими для базовых знаков и типов, т. е. все свойства обобщенного типа могут быть унаследованы базовыми типами. Однако при задании ограничений целостности в модели можно явно запретить наследование определенных свойств. Например, можно указать, что некоторые свойства характеризуют тип в целом и не наследуются подтипами или базовыми знаками.

Агрегация позволяет раскрыть структуру объектов. Допуска­ется многократное применение агрегации. Обратный процесс но­сит название пошаговой детализации.

Агрегация и обобщение могут применяться взаимодополняющим образом и выражать структурные и классификационные аспекты типизации. Структуру можно представить как агрегат базовых типов, а сам агрегат может служить объектом обобщения (классификации), см. пример на рис. 5.1, где _ _ _ _ - агрегация, ______ - обобщение, Классификация типов выражается иерархией обобщения, а структура – иерархией агрегации.

Агрегация соотносится с понятием ЕСТЬ – ЧАСТЬ и выражает тот факт, что тип объекта есть агрегат других типов (например, ФАМИЛИЯ ЕСТЬ – ЧАСТЬ СЛУЖАЩИЙ).

Обобщение соотносится с понятием ЕСТЬ – НЕК (есть некоторый) и выражает тот факт, что выполнено обобщение одним типом объекта другого типа объекта.

 
 

Рис. 5.1

 

В СС делается строгое различие между обобщениями ТИП–ЗНАК и ТИП–ТИП, что связано с необходимостью представления в модели данных обеих категорий. Кроме того, для иерархии типов точно специфицируются правила наследования свойств (атрибутов) и их значений. На рис. 5.2 приведен пример иерархии для типов ЛИЧНОСТЬ, СЛУЖАЩИЙ, СТУДЕНТ.

Так как тип ЛИЧНОСТЬ есть обобщение типов СЛУЖАЩИЙ и СТУДЕНТ, то последние наследуют атрибуты ФАМИЛИЯ, АДРЕС, ГОД – РОЖДЕНИЯ, если только это наследование явным образом не запрещено в описании модели.

3. Концепция «роли». Обобщение позволяет построить сложную систему категорий, причем ее структура не обязатель­но может быть древовидной, особенно если учитывается роль ис­пользуемых понятий в моделируемой ситуации.

 

 
 

Рис. 5.2

 

Например (рис. 5.3), ЛИЧНОСТЬ может выступать в роли СЛУЖАЩИЙ, либо в роли ОТПРАВИТЕЛЬ – ГРУЗА, либо в роли ПОЛУЧАТЕЛЬ – ГРУЗА. Получателем либо отправителем груза может быть и организация, выступающая еще также и в роли изготовителя деталей. Приведенная структура обобщения соотносится с концепцией роли.

 
 

Рис. 5.3

4 Концепция семантического расстояния. Концепция семантического расстояния широко используется в словарных системах, где одно слово истолковывается посредством других, а они, в свою очередь, посредством третьих и т. д., и в этом случае требуется использовать меру «семантической близости» взаимосвязанных понятий. В качестве меры семан­тической близости взаимосвязанных понятий, представленных в модели вершинами, может, например, выступать число дуг на пути от одной вершины к другой.

В некоторых СС вводится возможность явно подчеркнуть, что семантическое расстояние велико. В этом случае, когда требуется показать это, в СС используется понятие дуги «нерелевантности», отображающей отрицание взаимосвязи между двумя вершинами (рис. 5.4).

 
 

Рис. 5.4

 

5. Концепция разбиения. Суть этой концепции заключается в разработке механизмов ограничения доступа в сети. При формировании ответа системе должна быть доступна только та информация, которая релевантна решаемой задаче. Это очень важно для ограничения области поиска релевантных понятий в процессе вывода новых фактов из фактов заданных.

Рассмотрены наиболее важные концепции СС. Есть еще ряд других концепций, ориентированных на определенные аспекты представления знаний.

Базовым функциональным элементом семантической сети служит структура из двух компонентов: узлов и связывающих их дуг. Каждый узел представляет некоторое понятие, а дуга – отношение между парой понятий. Можно считать, что такое отношение представляет простой факт, например «Иванов П. Н. Работает в производственном отделе» представляется структурой на рис. 5.5.


Рис. 5.5

 

С позиции логики базовую структуру СС можно рассматривать в качестве эквивалента предиката с двумя аргументами. Эти два аргумента представлены узлами, а собственно предикат – направленной дугой, связывающей узлы:

РАБОТАЕТ – В/ИВАНОВ, ПРОИЗВОДСТВЕННЫЙ – ОТДЕЛ/.

Однако возможности выражения семантики с использованием только базовых структур весьма ограничены. Дальнейшее повы­шение выразительной силы семантических моделей обеспечива­ется дифференциацией вершин и дуг по категориям.

Пример. Рассмотрим модель, в которой предусматривается четыре категории вершин:

- концепты (понятия) - элементы ПО (приложения), для которой строится
представление;

- события-действия, наблюдаемые в ПО;

- характеристики (свойства) - вершины, соответствующие свойствам концепта;

- значения-вершины, соотносящиеся с областями значений, которые могут принимать характеристики.

Дуги, соединяющие вершины-события и вершины-концепты, соответствуют ролям концептов в событиях:

- дуга, указывающая вершину-концепт, которая играет роль агента в со­бытии (исполнителя, либо инициатора действия, обычно в предложении естест­венного языка, выражаемого глаголом);

- дуга, указывающая вершину-концепт, которая является объектом воздействия в событии.

Дуги, соединяющие вершины-концепты:

- дуга, соответствующая представлению утверждения.

Дуги, соединяющие вершины-концепты и вершины-характеристики:

- дуга, соответствующая представлению связи концепта с характеристикой.

Дуги, соединяющие вершины-характеристики и вершины-значения:

- дуга, соответствующая представлению связи характеристики со значением.

Построим с помощью данной модели представление следующей ситуации: «Иванов, 1980 года рождения, работает программистом в вычислительном центре, расположенном в корпусе А». Представим вначале эту ситуацию в виде одной из возможных совокупностей простых бинарных фактов (утверждений):

1. Иванов работает программистом.

2. Иванов работает в вычислительном центре.

3. Иванов 1980 года рождения.

4. Вычислительный центр расположен в корпусе А.

Выполним построение СС:

1. Вершины—события: РАБОТАЕТ.

2. Вершины—концепты:

ИВАНОВ;

ПРОГРАММИСТ;

ВЫЧИСЛИТЕЛЬНЫЙ-ЦЕНТР;

КОРПУС—А.

3. Вершины—характеристики:
ГОД—РОЖДЕНИЯ.

4. Вершины— значения: 1980.

5. Дуга, указывающая агента:

РАБОТАЕТ—ИВАНОВ.

6. Дуга, указывающая объект воздействия:

РАБОТАЕТ—ПРОГРАММИСТ..

7. Дуга, указывающая вершину-характеристику:
ИВАНОВ-ГОД-РОЖДЕНИЯ.

8. Дуга, указывающая вершину-значение:
ГОД—РОЖДЕНИЯ-1980.

9. Дуги, представляющие утверждения:

РАБОТАЕТ—В: ИВАНОВ—ВЫЧИСЛИТЕЛЬНЫЙ—ЦЕНТР;

РАСПОЛОЖЕН—В: ВЫЧИСЛИТЕЛЬНЫЙ—ЦЕНТР—КОРПУС/А.

Это один из возможных вариантов СС по данному фрагменту инфор­мации. Можно сделать иное назначение вершин и дуг и получить другой вариант модели для рассматриваемой ситуации. На рис. 5.6 приведено графи­ческое представление полученного варианта модели.

Как видно, проблема проектирования варианта (или выбора одного из возможных вариантов) СС еще более сложна, чем; проблема проектирования варианта инфологической модели базы данных, поскольку одну и ту же порцию информации можно представить еще большим количеством различных вариантов. В этом и достоинство, и недостаток СС.

 

 

 
 

Рис. 5.6

 

Рассмотрим теперь на данном примере получение вывода с помощью семантической сети. Обычно интерпретация семантической сети выполняется с помощью использующих эту сеть процедур управляющей системы. Существуют различные подходы к построению этих процедур. Рассмотрим наиболее, распространенный подход, основанный на сопоставлении частей сетевой структуры. Он заключается в следующем: вначале строится подсеть, соответствующая запросу, а затем выполняется сопоставление этой подсети с базой данных СС. Например, поступает запрос: «Кем работает Иванов?». Этот запрос система вначале, представляет в виде подсети (рис. 5.7). Затем управляющей системой проводится сопоставление, по результатам которого и формируется ответ на запрос.

 

 
 

Рис. 5.7

 

Дальнейшее повышение выразительной силы модели достига­ется введением различий между вершинами-концептами, представ­ляющими знаки, и вершинами-концептами, представляющими типы вершины — классы, причем концепт может принадлежать более чем одному классу. Различие между вершинами-концептами и вершинами-классами приводит к. необходимости выделения еще двух типов дуг:

1. Дуга между классом и концептом, отображающая порождение экземпляра.

2. Дуга между классами, характеризуемая как бинарное отношение, и, в частности, отношение ЕСТЬ – НЕК или ЕСТЬ – ЧАСТЬ.

Теперь в сети может быть построена иерархия типов в соот­ветствии со связями ЕСТЬ—НЕК или ЕСТЬ—ЧАСТЬ. В модели может присутствовать специальная вершина, являющаяся корнем иерархии (если это требуется),— класс классов. В некоторых моделях вводят специальные вершины — метаклассы, которые включают в себя в качестве экземпляров другие классы. Поскольку метаклассы есть классы, на них также могут быть построены иерархии ЕСТЬ—НЕК и ЕСТЬ-ЧАСТЬ. Иерархия, построенная на основе наследования свойств, обеспечивает эффективный способ упрощения представления знаний и сокращения объема информации, которую требуется запоминать для каждого конкрет­ного узла.

Концепция времени может быть введена следующим образом: каждому классу или событию приписывается два специальных атрибута, т. е. вершины-характеристики – «время включения» и «время удаления». Введение этих атрибутов позволяет полностью описывать соответствующие вершины и обеспечить ответы на соответствующие запросы.

В семантических сетевых моделях спецификация ограниче­ний целостности — часть полной спецификации сети, которая интегрируется с описанием сети. Ограничения — это некоторые данные, относящиеся к концепту или классу, т. е. ограничения описываются как факты, относящиеся к другим фактам. Ограни­чения наследуются аналогично другим свойствам, и опери­ровать ими можно так же, как и другими данными. Многие СС поддерживают язык исчисления предикатов для описания дуг, и этот же язык используется для задания явных ограни­чений целостности в сети.

В качестве основных операций над классами, и их экземпля­рами в семантических сетях используются следующие операции:

создания экземпляра некоторого класса;

установления принадлежности существующего экземпляра не­которого класса еще к одному классу;

устранения принадлежности экземпляра к некоторому классу или полного исключения этого экземпляра из сети;

выборки экземпляров, принадлежащих определенному классу;

определения принадлежности экземпляра указанному классу.

Эти операции выступают средствами манипулирования данны­ми сети. Как средство реализации запросов эти операции огра­ничены по своим возможностям. Поэтому в развитых СС в спе­цификацию сети вводят программы, реализующие соответствую­щие правила обработки декларативных знаний (вводятся в СС в виде вершин-программ). Эти, программы, по существу, представ­ляют собой обобщенные процедуры, аналогичные процедурам ба­зы данных. Программы вводятся в сеть как классы. Выполнение программы, называемое процессом, рассматривается как экземп­ляр конкретного класса.

В общем случае программа состоит из следующих разделов:

предпосылки;

действия;

состояние завершения.

В разделе «предпосылки» проверяется правильность вызова программы в виде выполнения совокупности проверок на удовлет­ворение заданных условий.

В разделе «действия» выполняется последовательность специ­фицированных в теле программы операций.

В разделе «состояние завершения» выполняется проверка ус­пешности завершения программы.

Для каждого возможного варианта успешного или неуспеш­ного завершения в программе специфицируются определенные действия.

При составлении программы предусматривается проверка ог­раничений целостности, заданных в сети.

СС, включающие в себя программы, поддерживают концеп­цию транзакций, т.е. могут устанавливать связи транзакций между собой и соотносить их с обрабатываемыми данными.

Управляющие структуры для СС очень разнообразны. В основном они являются зависимыми от предметной области (т.е. часть прикладных знаний перенесена в управляющую струк­туру (УС) в виде правил организации поиска данных, реле­вантных запросу) и реализованы в виде управляющей програм­мы, поддерживающей все основные функции экспертной системы.

При программировании СС широко используется алгорит­мический язык LISP, разрабатываются также специализирован­ные языковые средства.

Богатство структур семантической сетевой модели способству­ет реализации различных способов представления семантики, СС позволяет в одинаковой мере манипулировать как дан­ными, так и знаниями о них. Однако сложность создания и реализации этих средств выдвинула задачу поиска путей, позво­ляющих ввести некоторую регулярность в сеть для облегчения ее программирования. Одним из таких путей являются фреймы.

Для реализации семантических сетей существуют специаль­ные сетевые языки, например, NЕТ. Широко известны экспертные системы, использую­щие семантические сети в качестве языка представления знаний.

Систематизация отношений конкретной семантической сети зависит от специфики знаний предметной области и является сложной задачей. Особого внимания заслуживают общезначи­мые отношения, присутствующие во многих предметных облас­тях. Именно на таких отношениях основана концепция семанти­ческой сети. В семантических сетях, так же как при фреймовом представлении знаний, декларативные и процедурные знания не разделены, следовательно, база знаний не отделена от механизма вывода. Процедура логического вывода обычно представляет со­вокупность процедур обработки сети. Семантические сети полу­чили широкое применение в системах распознавания речи и экс­пертных системах.


Дата добавления: 2015-07-10; просмотров: 336 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.016 сек.)