Главная Обратная связь

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)


 

 

 

 



Объектно-ориентированное представление знаний фреймами



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

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

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

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

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

В общем случае структура данных фрейма может содержать более широкий набор информации, в который входят следующие атрибуты.

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

Имя слота.Оно должно быть уникальным в пределах фрейма. Обычно имя слота представляет собой идентификатор, который наделен определенной семантикой. В качестве имени слота мо­жет выступать произвольный текст. Примеры имен системных слотов: IS-A, HASPART, RELATIONS и т.д. Системные слоты служат для редактирования базы знаний и управления выводом во фреймовой системе.

Указатели наследования.Они показывают, какую информа­цию об атрибутах слотов из фрейма верхнего уровня наследуют слоты с аналогичными именами в данном фрейме. Указатели на­следования характерны для фреймовых систем иерархического типа, основанных на отношениях типа «абстрактное — конкрет­ное». В конкретных системах указатели наследования могут быть организованы различными способами и иметь разные обо­значения:

U (Unique) — значение слота не наследуется;

S (Same) — значение слота наследуется;

R (Range) - значения слота должны находиться в пределах интервала значений, указанных в одноименном слоте родитель­ского фрейма;

О (Override) — при отсутствии значения в текущем слоте оно наследуется из фрейма верхнего уровня, однако в случае опреде­ления значения текущего слота оно может быть уникальным. Этот тип указателя выполняет одновременно функции указате­лей U и S.

Указатель типа данных.Он показывает тип значения слота. Наиболее употребляемые типы: frame — указатель на фрейм; real - вещественное число; integer - целое число; boolean — логичес­кий тип; text — фрагмент текста; list — список; table — таблица; expression - выражение; lisp — связанная процедура и т.д.

Значение слота.Оно должно соответствовать указанному типу данных и условию наследования.

Демоны.Демоном называется процедура, автоматически за­пускаемая при выполнении некоторого условия. Демоны автома­тически запускаются при обращении к соответствующему слоту. Типы демонов связаны с условием запуска процедуры. Демон с условием IF-NEEDED запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IF-ADDED запускается при попытке изменения значения слота. Демон IF-REMOVED запускается при попытке удаления значения слота. Возможны также другие типы демонов. Демон является разно­видностью связанной процедуры.


Рис.1. Пример иерархии фреймов

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

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

Пример сети фреймов приведен на рис. 1.

В последние годы термин «фреймовый» часто заменяют тер­мином «объектно-ориентированный». Шаблон фрейма можно рассматривать как класс, экземпляр фрейма - как объект. Языки объектно-ориентированного программирования (ООП) предо­ставляют средства создания классов и объектов, а также средства для описания процедур обработки объектов (методы). Языки ООП, не содержащие средств реализации присоединенных про­цедур, не позволяют организовать гибкий механизм логического вывода, поэтому разработанные на них программы либо пред­ставляют собой объектно-ориентированные базы данных, либо требуют интеграции с другими средствами обработки знаний (на­пример, с языком PROLOG).

Существуют также специализированные языки представле­ния знаний на основе фреймовой модели, примерами которых являются: FRL (Frame Representation Language), KRL (Knowledge Representation Language), фреймовая «оболочка» Kappa и др. Из­вестны также экспертные системы фреймового типа- ANALYST TRISTAN, ALTERID, МОДИС.

Модель семантической сети

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

• множество - подмножество (типы отношений «абстрактное
— конкретное», «целое — часть», «род — вид»);

• индексы (свойства, имена прилагательные в языке и т.п.);

• конъюнктивные связи (логическое И);

 

• дизъюнктивные связи (логическое ИЛИ);
. связи по ИСКЛЮЧАЮЩЕМУ ИЛИ;

• отношения «близости»;

• отношения «сходства — различия»;

• отношения «причина — следствие» и др.

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

 

Рис.2. Пример семантической сети, показывающей взаимоотношения птицы и самолета

 

Для реализации семантических сетей существуют специаль­ные сетевые языки: NET, язык реализации систем SIMER+MIR и др. Широко известны экспертные системы, использую­щие семантические сети в качестве языка представления знаний: PROSPECTOR, CASNET, TORUS.

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



Просмотров 1625

Эта страница нарушает авторские права




allrefrs.su - 2025 год. Все права принадлежат их авторам!