Фреймовая модель представления знаний. Описание модели. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Фреймовая модель представления знаний. Описание модели.



Формальная структура фрейма.

Теория представления знаний фреймами была разработана М.Минским в 70-е гг XX в. В ее основе лежит восприятие фактов посредством сопоставления полученной извне информации с конкретными элементами и значениями, а также с рамками, определенными для каждого объекта в памяти человека.

Под фреймом понимается абстрактный образ или ситуация. Например, слово "комната" вызывает у воспринимающего информацию человека образ: "помещение с четырьмя стенами, полом и потолком, площадью от 6 до 50 кв.м."

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

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

Описание:

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

Структура фрейма:

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

- имя фрейма (имя фрейма) – это идентификатор, присваиваемый фрейму. Фрейм должен иметь имя, единственное в данной фреймовой модели (уникальное имя);

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

- значение слота – значение, соответствующее типу данных слота и удовлетворяющее условиям наследования;

- демон – процедура, автоматически запускаемая при выполнении некоторого условия. Демоны запускаются при обращении к конкретному слоту фреймовой модели. Например, демон запускается, если в момент обращения к слоту его значение не было установлено, запускается при подстановке в слот значения, запускается при стирании значения слота.

Различают:

· фреймы-структуры, для обозначения объектов и понятий (заем, залог, вексель);

· фреймы-роли (менеджер, кассир, клиент);

· фреймы-сценарии (банкротство, собрание акционеров, празднование именин);

· фреймы-ситуации (тревога, авария, рабочий режим устройства) и др.

· фрейм-экземпляр – конкретная реализация фрейма, описывающая текущее состояние в предметной области;

· фрейм-образец – шаблон для описания объектов или допустимых ситуаций предметной области; фрейм-класс – фрейм верхнего уровня для представления совокупности фреймов образцов.

 


Применение фреймовых моделей.

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

Наследование базового фрейма позволит различным фреймам использовать одни и те же данные.

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

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

Вывод на фреймах осуществляется при помощи сопоставления с образцом.

По иерархии наследования ищется тот фрейм, который удовлетворяет запросу наибольшим образом. Если таких фреймов несколько, то используется механизм разрешения конфликтов.

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

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

 


ООП как модель представления знаний.

ООП с точки зрения проектирования БЗ также является моделью представления знаний.

Данная концепция содержит всё необходимое для описания предметной области аналогии и программной системы.

Выводом на такой БЗ будет создание объектов различных классов и передача сообщений между ними с целью получить результат работы программы.

ООП модель позволяет описывать предметную область виде совокупности классов, интерфейсов и отношений между ними.

Класс – это описание св-в общей группы объектов. Классы состоят из полей данных.

Классы бывают:

- перечисления

- абстрактные

-интерфейсные

Классы, связанные одной предметной областью объединяются в пакеты или пространство имён. Пакеты представляют ещё один уровень инкапсуляции, так как часть классов и интерфейсов можно скрыть внутри пакета, но они тем не менее будут являться деталью реализации. Множество пакетов открытых классов в них и открытых методов в классах составляют различный API(интерфейс прикладного программирования) системы.

API составляет всё множество доступной функциональности, мн-во точек входа в программную систему.

 


Процесс разработки API.

Под API понимается доступная функциональность по какой-нибудь задаче или предметной области виде какого-то модуля или группы модулей.

Мышление в терминах API повышает качество кода. Хорошие модули используются повторно. Как только модуль становится публичным, то у него появляются пользователи. Проблема в том, что как только появились пользователи, то API изменить нельзя.

У модуля должно быть как можно меньше программных пользователей, а с другой стороны наличие большого количества пользователей говорит о том, что ваш код хороший.признаки хорошего API:

· Легко изучать и использовать даже без документации

· Трудно использовать неправильно

· Легко читать и использовать код, который использует API

· Легко развивать

· Достаточно мощный, чтобы удовлетворять методам

· Соответственные аудитории

Последовательность разработки API:

1. Сбор сведений

Главная задача разработчика на этом этапе собрать реальное требование к системе. Важно не путать предлагаемые решения с реальными требованиями. Необходимо выделить истинные требования в виде примеров использования. Такие примеры использования – это краткое описание того, как ваша задача решается с помощью API.

2. Написание спецификаций

Спецификация – это описание требований. Собрав требования, напишите по нему спецификацию не более 1-2 листа.

Чем короче спецификация тем легче её переделывать. Далее спецификацию нужно показать как можно большему кол-ву людей, что бы оценить. Как только приобрели уверенность в спецификации – можно программировать.

3. Программирование API

Пишем API не обращая внимания на конкретную реализацию. Описывать API нужно как можно раньше и чаще. Начав реализовывать программу, переписывайте API раз за разом, это убережёт от большинства проблем во время тестирования и использования. Пишите комментарии.

Основные принципы проектирования API:

Цель:

API должен делать что-то одно и делать это хорошо. API должен быть минимален, но не меньше необходимого. Делать всё закрытым, открывать только то, что необходимо для решения данной задачи. Реализация не должна влиять на API. В документации должно быть описание программы.

Итоги:

На последнем этапе (Программирование API)должен получиться прототип API – каркас будущей системы, который состоит из интерфейсов, прототипов классов, методов с комментариями, тестов и примеров использования.


24. Семантические технологии Web (Semantic Web). Определение и общее назначение технологии. Преимущества семантических сетей для интернета.

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

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

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

Каноническими примерами поисковых запросов в семантическом вебе явл.: «Где ближайшая библиотека?» С каждым человеком будет ассоциироваться свой собственный поисковый агент, который, опираясь на смысловое содержание страниц будет выполнять замысловатые запросы.

Семантический веб будет использоваться для:

1) Семантический поиск – при таком поиске будут выдаваться не те страницы, где встретилось искомое ключевое слово, а лишь те, где есть искомое понятие.

2) Объединение знаний – если будут существовать возможности представления знаний, то интернет превратиться в глобальную БЗ.

3) Всепроникающие вычисления.

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

К семантическим технологиям Web относятся следующие:

1. Глобальная схема имен (URI);

2. Стандартный синтаксис описания данных (RDF);

3. Стандартные способы описания свойств данных (схема RDF);

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

Преимущества семантических сетей для интернета:

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

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



Поделиться:


Последнее изменение этой страницы: 2016-08-14; просмотров: 846; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.59.187 (0.025 с.)