Реферат Представления знаний
Работа добавлена на сайт bukvasha.net: 2015-10-28Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
от 25%
договор
Содержание
Введение. 3
Глава 1. Способы формального представления знаний. 5
1.1 История в информатике. 5
1.2 Связи и структуры.. 6
1.3 Проблемы создания систем знаний. 7
1.4 Виды знаний и способы их представления. 8
1.5 Требования к системам знаний. 10
1.6 Особенности знаний для их представления в ЭВМ.. 11
Глава 2. Модели представления знаний. 13
2.1 Логические модели. 13
2.2 Сетевые модели. 15
2.3 Продукционные модели (product (ion)) 16
2.3.1 Классификация ядер продукции. 17
2.4 Модель знаний с использованием фреймов. 19
(Фреймовая модель). 19
2.5. Представление знаний с помощью сценариев. 21
2.6 Другие методы представления знаний. 22
Введение
Проблема представления знаний в компьютерных системах - одна из основных проблем в области искусственного интеллекта. Решение этой проблемы позволит специалистам, не обученным программированию, непосредственно на языке “деловой прозы” в диалоговом режиме работать с ЭВМ и с ее помощью формировать необходимые решения. Таким образом, решение проблемы представления знаний в компьютерных системах позволит существенно усилить интеллектуальную творческую деятельность человека за счет ЭВМ.
Актуальность данной темы заключается в том, что содержимое памяти ЭВМ не равносильно человеческому знанию, которое является гораздо более сложным феноменом, но может служить удобной для коммуникации моделью этого знания. Этот принцип моделирования профессиональных знаний лежит в основе экспертных систем.
Каждая из интеллектуальных систем соотносится с определенной частью реального мира — сферой деятельности человека, выделенной и описанной в соответствии с некоторыми целями и называемой предметной областью. Описание предметной области представляет собой совокупность сведений:
а) обо всех предметах — объектах, процессах и явлениях, выделенных с точки зрения рассматриваемой деятельности;
б) об отношениях между выделенными предметами и/или их частями;
в) обо всех проявившихся и возможных взаимодействиях между предметами, их частями и отношениями, возникших в результате осуществления деятельности человека.
Цель данной курсовой работы состоит в том, чтобы в полной мере изучить методы, модели и типы представления знаний, операции над знаниями. Чтобы полностью охватить весь спектр данной темы необходимо решить следующие задачи:
1) Изучить способы формального представления знаний;
2) Рассмотреть модели представления знаний;
3)
Объектом исследования в данном курсовом проекте выступают методы представление знаний для ЭВМ. А в качестве предмета изучения принимается представление знаний в программе Prolog.
.
Глава 1. Способы формального представления знаний
1.1 История в информатике
В информатике (главным образом в области искусственного интеллекта) для структурирования информации, а также организации баз знаний и экспертных систем были предложены несколько способов представления знаний. Одно из них представление данных и сведений в рамках логической модели баз знаний, на основе языка логического программирования Пролог.
Под термином «Представление Знаний» чаще всего подразумеваются способы представления знаний, ориентированные на автоматическую обработку современными компьютерами, и в частности, представления, состоящие из явных объектов, и из суждений или утверждений о них. Представление знаний в подобной явной форме позволяет компьютерам делать дедуктивные выводы из ранее сохраненного знания.
В 1970-х и начале 1980-х были предложены, и с переменным успехом опробованы многочисленные методы представления знаний, например эвристические вопросно-ответные системы, нейронные сети, доказательство теорем, и экспертные системы. Главными областями их применения в то время были медицинская диагностика (к примеру Мицин) и игры (например шахматы).
В 1980-х годах появились формальные компьютерные языки представления знаний. Основные проекты того времени пытались закодировать (занести в свои базы знаний) огромные массивы общечеловеческого знания.
Эта работа привела к более точной оценке сложности задачи представления знаний. Одновременно в математической лингвистике, были созданы гораздо более объёмные базы языковой информации, и они, вместе с огромным приростом скорости и объёмов памяти компьютеров сделали более глубокое представление знаний более реальным.
Было разработано несколько языков программирования ориентированных на представление знаний. Пролог, разработанный в 1972, но получивший популярность значительно позже, описывает высказывания и основную логику, и может производить выводы из известных посылок. Ещё больше нацелен на представление знаний язык KL-ONE (1980-е).
В области электронных документов были разработаны языки, явно выражающие структуру хранимых документов, такие как SGML, а впоследствии XML. Они облегчили задачи поиска и извлечения информации, которые в последнее время всё больше связаны с задачей представления знаний. Web-сообщество крайне заинтересованно в семантической паутине, в которой основанные на XML языки представления знаний, такие как RDF, Карта тем и другие используются для увеличения доступности компьютерным системам информации, хранящейся в сети.
1.2 Связи и структуры
Одной из проблем в представлении знаний является, как хранить и обрабатывать знания в информационных системах формальным способом так, чтобы механизмы могли использовать их для достижения поставленных задач. Примеры применения здесь экспертные системы, Машинный перевод, компьютеризированное техническое обслуживание и системы извлечения и поиска информации (включая пользовательские интерфейсы баз данных).
Для представления знаний можно использовать семантические сети. Каждый узел такой сети представляет концепцию, а дуги используются для определения отношений между концепциями. Одна из самых выразительных и детально описанных парадигм представления знаний основанных на семантических сетях это MultiNet (акроним для Многослойные Расширенные Семантические Сети англ. Multilayered Extended Semantic Networks).
Начиная с 1960-х годов, использовалось понятие фрейма знаний или просто фрейма. Каждый фрейм имеет своё собственное имя и набор атрибутов, или слотов которые содержат значения; например фрейм дом мог бы содержать слоты цвет, количество этажей и так далее.
Использование фреймов в экспертных системах является примером объектно-ориентированного программирования, с наследованием свойств.
Фреймовые структуры хорошо подходят для представления знаний, представленных в виде схем и стереотипных когнитивных паттернов. Элементы подобных паттернов обладают разными весами, причем большие весы назначаются тем элементам, которые соответствую текущей когнитивной схеме. Паттерн активизируется при определённых условиях: Если человек видит большую птицу, при условии что сейчас активна его «морская схема», а «земная схема» - нет, он классифицирует её скорее как морского орлана, а не сухопутного беркута.
Фреймовые представления объектно-центрированы в том же смысле что и Семантическая сеть: Все факты и свойства, связанные с одной концепцией, размещаются в одном месте, поэтому не требуется тратить ресурсы на поиск по базе данных.
Script – это тип фреймов, который описывает последовательность событий во времени; типичный пример описание похода в ресторан. События здесь включают ожидание места, прочитать меню, сделать заказ, и так далее.
Различные решения в зависимости от их семантической выразительности могут быть организованы в так называемый семантический спектр (англ. Semantic spectrum).
1.3 Проблемы создания систем знаний
Система знаний – математическая модель некоторой области прикладного неформализованного знания.
Система понятий и отношений этой математической модели должны отображать систему понятий и отношений прикладного знания, а зависимости, существующие в этой модели, аппроксимируют соответствующие зависимости прикладного знания.
Разработанные модели должны быть зафиксированы в памяти ЭВМ и, использоваться, для решения прикладных программ.
Проблемы:
1. Формализация знаний. Решается с помощью математиков. Будет разработана концептуальная схема модели.
2. Представление знаний. Разработка формализованного аппарата для фиксации моделирующих знаний в памяти ЭВМ.
3. Использование знаний. Проводятся вычисления и преобразования в построенных ранее моделях.
4. Создание баз знаний и систем управления ими. Задачи для системных администраторов, которые закладываются в разработке средств программной поддержки моделирования.
1.4 Виды знаний и способы их представления
Знание – формализованная информация, на которую ссылается или которую используют в процессе решения задачи.
Знание о предметной области включает:
1. Описание объектов и их окружение, необходимых явлений и факторов;
2. Отношения между объектами.
Уровни формализации знания о предметной области:
1. Знание в памяти человека;
2. Знания в форме языковой модели в предметной области, зафиксированной на физических носителях;
3. Знания, формализованные для их представления в ЭВМ;
4. Фактографические сведения и данные.
Классификация знаний:
I. Знания как основные закономерности предметной области, позволяющие человеку решать конкретные, производственные, научные и другие задачи:
1) Фактические знания (факты, понятия, взаимосвязи, оценка, правила,
эвристики (догадки));
2) Стратегические знания (стратегии принятия решений в конкретной
области);
Факты – иногда излагаются как текстовые знания.
Эвристики – знания, основанные на индивидуальном опыте эксперта, накопленные в результате многолетней практики (способы использования нечетной информации; способы разрешения противоречий и т.п.).
II. Другой способ классификации знаний:
1) Декларативные – относятся все остальные знания (статьи в энциклопедиях, словарях, формулировки законов физики, химии.). Эти знания отвечают на вопрос: «Что представляет собой явление Х.» или «Какие связи есть между Х и У?»;
2) Процедурные – описывают последовательность действий, которые могут быть использованы для решения задач. («Как сделать устройство Х?»).
III. Знания делят на:
1) Экстенциональные знания – это данные, которые характеризуют конкретные объекты предметной области;
2) Интенсиональные знания – это знания, которые работают с абстрактными объектами предметной области.
IV. Знания бывают:
1) Глубинные – отражают понимание структуры предметной области (формулировки законов);
2) Поверхностные – касаются внешних эмпирических ассоциаций с каким либо феноменом предметной области.
V. Знания:
1) Жесткие – позволяют получать однозначно четкие рекомендации при заданных начальных условиях;
2) Мягкие – множественные, размытые решения (нечеткие) и различные варианты рекомендаций.
Задачи, которые приходится решать, делятся на:
1. Легко формализуемые задачи (связано с использованием жестких знаний);
2. Трудно формализуемые задачи (необходимость работы с мягкими знаниями).
Особенности трудно формализуемых задач:
1. Задача не может быть определена в числовой форме, т.е. требуется символьное представление;
2. Алгоритмическое решение задач неизвестно;
3. Задача, цель которой не может быть определена в терминах четко определенной целевой функцией.
Те системы, которые решают трудно формализуемые задачи относят к числу интеллектуальных систем.
Область применения систем искусственного интеллекта:
Там, где наука не может создать конструктивных определений, область этих определений меняется. Языковая (описательная) модель доминирует над алгоритмической.
1.5 Требования к системам знаний
1. Терпимость к противоречиям;
2. Обеспечение вывода, т.е. система значений должна быть способна к логическому выводу, как из имеющейся информации, так и из поступающей вновь.
Различают два типа вывода:
· свободный (вывод связан с поступлением новой информации);
· направленный (вывод связан с поступлением конкретного запроса).
3. Критичность к новой информации – способность проверить достоверность новой информации и согласовать её с имеющимися значениями.
4. Дробность системы знаний – знания в системе должны быть разбиты на фрагменты, каждый из которых может быть использован.
5. Обучаемость и способность к переструктуированию знаний.
1.6 Особенности знаний для их представления в ЭВМ
1. Внутренняя интерпретируемость – каждая информационная единица должна иметь уникальное имя, по которой бы информационная система находила ее, а также отвечала бы на запросы, в которой это имя упомянуто.
2. Структурированность знаний, т.е. информационные единицы должны обладать определенной структурой, это означает, что должны быть возможности для установления отношений типа: часть – целое или род-вид, или элемент-класс.
3. Связность – между информационными единицами должна быть возможность установления связей различного типа.
Типы связей:
a) функциональные связи (аргумент – функция), это пример процедур знания;
b) отношения структуризации;
c) казуальные отношения (причинно – следственные связи, «одновременно»);
d) семантические отношения (объединяют и представляют все ранее перечисленные связи).
Семантическая сеть – модель знаний, в вершинах – информационные единицы, а дуги характеризуют виды связи между информационными единицами. Если связи иерархичны, то они определяют отношение структуризации, а неиерархические связи будут определять отношения иных типов.
4. Семантическая метрика – отношение, которое характеризует близость информационных единиц, т.е. силу ассоциативных связей между ними;
5. Активность – данные – пассивные элементы, а команды – активные элементы по Фон Нейману. Появление новых данных может стать источником активности.
Нейрокомпьютеры понимают, прежде всего, символьные данные, а не цифровые.
Глава 2. Модели представления знаний
В интеллектуальных системах используют следующие способы описания знаний:
1. Логические модели;
2. Сетевые модели;
3. Продукционные модели;
4. Фреймовые модели;
5. Сценарии;
6. Другие методы представления знаний.
2.1 Логические модели
В основе модели лежит формальная система, которая на языке теории множеств описывается следующей четверкой множеств:
М = <Т, Р, А, В>
Т – это множество базовых элементов (тезаурус): термины из какого либо словаря, набор деталей из конструкции. Для этого множества существует некоторый способ определения принадлежности к этому способу: П(Т)
Р – это множество синтаксических правил, с помощью которых из элементов множества Т образуют синтаксически правильные совокупности.
А – элементы этого множества образуют аксиомы, определенных на множестве Р. П(А) – процедура, определяющая принадлежность к А.
В – множество правил вывода, которые применяются к элементам множества
В множестве А входят информационные единицы, которые введены в базу из вне, а с помощью правил вывода из множества В получают новые производственные знания. Таким образом, описанная система представляет собой генератор порождения новых знаний в данной предметной области.
Пример создания логической модели:
Когда температура в печи достигает 120˚ , и прошло менее 30 мин. с момента включения печи, то давление не превосходит критического. Если с момента включения прошло более 30 мин., то необходимо включить вентиль N2.
С помощью логики предикатов, это утверждение выглядит следующим образом:
1. Р( р = 120)»И» Т(t <30) → (D < Dкр.)
2. Р(р = 120)»И»Т(t >30)→ F(N2)
Р( р = 120) создает так называемый предикат, который становится истинным, когда температура достигается 120˚
Т(t <30) предикат, остающийся истинным в течение 30 мин. с начала процесса.
Т(t >30) становится истинным по истечении 30 мин.
(D < Dкр.) это утверждение о том, что давление ниже критического.
F(N2) команда открыть вентиль N2.
Логические знаки:
U - конъюнкция
^ - импликация
=> - логическое следование
1. Строка представляет собой описание декларативного знания
2. Строка описывает процедурные знания
Достоинства:
1. Возможность непосредственно запрограммировать механизм вывода высказываний
Языки логического типа использовались на ранних стадиях развития интеллектуальных систем, однако в последствие большее внимание стали уделять другим моделям, это связано с недостатками логической модели PROLOG.
Недостатки:
1. Отсутствие наглядности и удобочитаемости.
2. Громоздкость записи, которая приводит к трудности нахождения ошибок.
Область применения:
Задача формально описана и полностью известна
2.2 Сетевые модели
В основе этой модели лежит конструкция, которая называется семантической сетью, которая может быть описана на языке теории множеств:
Н = < I, C1, C2, …., Cn , Г >
I – множество информационных единиц
C1,C2,….,Cn – множество типов связей между I (информационными единицами)
Г – множество отображений между информационными единицами
В зависимости от типов связей, между информационными единицами, которые используются в данной модели, различают следующие типы сетей:
1. Классифицирующие сети – применяют отношение структуризации;
2. Функциональные сети – функциональные отношения между информационной единицей. Примером является вычисление, поэтому они могут выступать еще как вычислительные;
3. Сценарии.
Часто используются казуальные отношения между информационными единицами (причинно-следственные отношения). Кроме того, могут встречаться отношения следующих типов:
1. средство – результат;
2. орудие – действие.
Если в сетевой модели применяют отношения всех типов, то такую сеть называют семантической.
Пример представления декларативных знаний с помощью сетевой модели:
«Слева от станка расположен приемный бункер, расстояние до него = 2м. Справа от станка находится бункер готовой продукции, находящийся рядом со станком (0м.) Робот перемещается прямо параллельно станку и бункерам на расстоянии 1м.».
Рисунок 1 – Расположение станка по отношении других объектов.
Преимущество сетевых моделей:
1. Наглядность;
2. Понятность;
3. Удобство для представления в компьютере.
Недостатки сетевых моделей:
1. По мере роста сложности модели теряется её наглядность;
2. Область применения сетевых моделей ограничена.
2.3 Продукционные модели (product (ion))
Продукция – логическое выражение следующего типа:
(i); Q; P; A => B; N
(i) – имя продукции, с помощью которой данная продукция выделяется из всего множества (порядковый номер, некоторая фраза, некоторая совокупность слов или цифр).
Q – характеризует сферу применения продукции (предусловие).
A => B – ядро продукции, главный элемент может быть прочитан: если выполняется А, то следует В.
P – условие применимости ядра продукции. Обычно представляет собой логическое выражение типа предиката. Если Р – истина, то ядро продукции активируется, если Р – ложно, то ядро продукции не может быть использовано (условие).
N – описывает постусловие продукции. Оно активируется, когда ядро продукции реализовано. N – это действия и условия процедуры, которые могут быть выполнены после P.
Таким образом, продукционная модель хорошо применима для представления процедур знаний.
Имя продукции i – интерпретация результатов психологического тестирования.
Предусловие Q – использовать в первую очередь.
Условие P – шкала лжи L < 70.
Ядро A; => B - если (шкала ошибок – шкала коррекции) < - 11, то сообщение: «Результаты недостоверны».
Постусловие N - закончить интерпретацию результатов.
2.3.1 Классификация ядер продукции
Все ядра можно разделить на 2 большие группы:
1. Детерминированные (А=>В наступит с вероятностью 1);
2. Недетерминированные (если А выполняется, то возможно В).
Возможны различные оценки реализации ядра:
1. Вероятностная (если А, то с вероятностью Р реализуется В);
2. Лингвистическая (малая, меньшая). Если А, то с большой долей уверенности В.
Детерминированные продукции могут быть:
1. Однозначными (если А, то В)
2. Альтернативные (если А, то чаще В1, реже В2)
Продукции могут быть прогнозирующего типа (если А, то с вероятностью Р можно ожидать В).
Рисунок 2 – схема движения информации по ядрам продукции
Таблица 1 – классификация ядер продукции
А/В | О | Д | З | L |
О | | + | | + |
Д | + | + | + | + |
З | + | | + | + |
L | + | | + | + |
х; у; Ах => Ву
1. А3 => В3 (берутся исходные первоначальные значения и из них выводят новые З).
2. Ад => В3 (берутся данные – итог знания).
Продукционной называется система знаний, которая использует понятие продукции в качестве основного элемента.
В общем случае продукционная система знаний включает следующие компоненты:
1. Базу данных, содержащую множество фактов;
2. Базу правил, содержащую набор продукций;
3. Механизм логического вывода или решатель;
4. ЭВМ;
5. Система общения с внешней средой.
Продукционную систему делят на 2 типа:
1. С прямым выводом, т.е. рассуждения, идут от данных к гипотезе.
2. С обратным выводом, когда вначале выдвигается гипотеза, а потом для нее ищутся доказательства.
Достоинства продукционных систем:
1. модульность (5 основных модулей);
2. единообразие структуры (позволяет применять оболочку продукционных систем в различных проблемных областях);
3. естественность вывода знаний;
4. гибкость родовидовой иерархии понятий (изменение правил влечет изменения в иерархии).
Недостатки продукционных систем:
1. процесс вывода может быть менее эффективен, чем в других системах.
2. процесс вывода новых знаний трудно поддается управлению.
3. линейный рост объема базы знаний по мере включения новых фрагментов знаний. Если используются деревья решений, то изменения происходят по логарифмическому закону.
2.4 Модель знаний с использованием фреймов
(Фреймовая модель).
Frame (рамка) – единица представления знаний, детали которой могут изменяться в соответствии с текущей ситуацией.
Фреймы часто используют как структуру для представления стереотипных ситуаций. Структура фрейма такова, что он состоит из характеристик описаемых ситуаций и их значений, которые называются соответственно слотом и заполнителем слота.
Имя фрейма:
Имя слота 1 (Значение слота 1);
Имя слота 2 (Значение слота 2);
……………………
Имя слота k (Значение слота k).
Эта структура, пока она не заполнена какими-то значениями, называется протофреймом.
Значение слота: число, математическое выражение, текст на естественном языке, программа для ЭВМ, правила вывода, ссылки на другие слоты данного фрейма или других фреймов.
При заполнении фрейма, имени слота и значения слотов из протофрейма получают фрейм – экземпляр (экзофрейм).
Пример:
Список работников: Фамилия (значение слота 1);
Год рождения (значение слота 2);
………………………………
Стаж работы (значение слота k).
Список работников: Фамилия (Попов – Сидоров – Иванов);
Год рождения (1965 – 1946 – 1925);
……………………………….
Стаж работы (5 – 20 – 30).
Совокупность фреймов, которая моделирует какую либо предметную область, представляет собой иерархическую структуру, которую фреймы собирают с помощью родовидовых связей.
Фреймы обладают способностью наследовать значения характеристик своих родителей, находящиеся на более высоком уровне иерархии.
Полученная система фреймов может носить как статический, так и динамический характер. Системы программирования, основанные на фреймах, являются объектно-ориентированными.
Достоинства фреймовых систем:
1. позволяют манипулировать как декларативными, так и процедурными знаниями, т.е. значения любого слота может быть вычислено с помощью соответствующих процедур или найдено эвристическим методом;
2. экономное размещение базы знаний в памяти компьютера;
Недостатки фреймовых систем:
1. относительно высокая сложность этих систем, что приводит к уменьшению скорости работы механизма вывода;
2. целесообразная область применения там, где родовидовые связи меняется не часто, и предметная область имеет не много исключений.
2.5. Представление знаний с помощью сценариев
В системе представления знаний могут быть стереотипы знания, описывающие известные стандартные ситуации.
Сценарием – называется формализованное описание стандартной последовательности взаимосвязанных фактов, определяющих типичную ситуацию предметной области.
Область использования сценариев искусственного интеллекта:
1. процедуры обучения
2. процедуры принятия решений
3. процедуры понимания естественных текстов; и др.
Пример: сценарий изображен в виде сети, где в качестве связей между вершинами сети используется причинно–следственные отношения.
Рисунок 3 – пример сценария (изображен в виде сети)
В качестве вершин выступают следующие факты:
Ф1 – станок простаивает;
Ф2 – на рабочем месте нет рабочего;
Ф3 – станок неисправен;
Ф4 – в цехе нет заготовок;
Ф5 – обеденный перерыв;
Ф6 – рабочий покинул станок в рабочее время;
Ф7 – рабочий находится в столовой.
Область применения: сценарии могут рассматриваться как средства представления проблемно зависимых казуальных знаний и могут задаваться в виде фреймоподобных списочных структур. Значения слотов в этих структурах следующие: роли сценария; участники сценария, цели и мотивы деятельности участников; ключевые события сценария; место, время, и средства проведения сценария и т.д.
2.6 Другие методы представления знаний
1. Представление знаний по примерам.
В предметной области задаются примеры решения задач. На основе примеров строят базу знаний для решения других задач из этой области.
Достоинства: простота данного способа представления знаний, поскольку пользователь не может знать о логическом исчислении, фреймах и т.д. (предикаты).
Недостатки:пользователь такой базы знаний отстранен от создания базы знаний и не контролирует связи между понятиями в этой базе знаний.
2. Использование «доски объявлений»
С помощью доски объявления реализуется взаимодействие независимых источников знаний.