- •1 Направления искусственного интеллекта и понятие иис – 2 ч. [1; 2; 9]
- •1.1 Основные направления искусственного интеллекта и их характеристика. (Гаврилова)
- •1.1.1 Основные направления искусственного интеллекта и их характеристика. (Андрейчикова)
- •1.2 Состояние работ в области экспертных систем и направлениям искусственного интеллекта. (Попов)
- •1.3 Понятие интеллектуальной информационной системы (иис). (Андрейчикова)
- •1.5 Классификация иис. (Андрейчикова)
- •2 Понятие экспертных систем. – 2 ч. [1; 2; 3; 9]
- •2.1 2.2 2.3 Экспертные системы (эс). Назначение экспертных систем. Формальные основы экспертных систем. (Попов)
- •Назначение экспертных систем
- •Формальные основы экспертных систем
- •3 Архитектура экспертных систем и этапы разработки - 2 ч. [2; 8; 9]
- •3.3 Этапы разработки экспертных систем. (Попов)
- •5 Методы и модели представления знаний. (Попов)
- •5.1 Формальная логическая модель представления знаний. (Попов)
- •5.2. Семантическая модель представления знаний. (Попов)
- •5.3 Фреймовая модель представления знаний. (Попов)
- •5.4 Продукционная модель представления знаний. (Попов)
- •5.6 Модель представления знаний: “прецеденты”.
- •5.5 Модель доски объявлений для представления знаний.
- •5.7 Гибридные модели представления знаний
- •6 Методы поиска решений в эс
- •7 Понятие и определение нечетких знаний – 2 ч. [3; 14]
- •7.1 Нечеткие знания
- •7.2 Понятие лингвистической переменной, определение ее значения
- •7.3 Понятие нечеткого множества
- •7.4 Определение нечеткого множества (через базовую шкалу и функцию принадлежности)
- •7.5 Понятие функции принадлежности
- •7.6 Операции с нечеткими знаниями
- •8 Стратегии получения знаний - 2 ч. [3]
- •8.1 Извлечение знаний из данных, приобретение знаний, формирование знаний. Теоретические аспекты извлечения знаний.
- •Теоретические аспекты извлечения знаний
- •Психологический аспект извлечения знаний
- •Лингвистический аспект извлечения знаний
- •Гносеологический аспект извлечения знаний
- •Теоретические аспекты структурирования знаний
- •Историческая справка
- •Иерархический подход
- •Традиционные методологии структурирования
- •Объектно-структурный подход (осп)
- •9 Проектирование экспертных систем - 2ч. [1; 3]
- •9.1 Этапы проектирования экспертной системы: идентификация, концептуализация, формализация, реализация, тестирование, опытная эксплуатация.
- •9.4 Технология проектирования и разработки промышленных эс.
- •9.5 Характеристика этапов разработки эс.
- •9.6 Технология быстрого прототипирования эс.
- •9.7 Характеристика стадий разработки прототипа эс.
- •10 Понятие нейроинформатики, история развития
- •Задача обучения нейронной сети на примерах.
- •12.1 Интерфейс вывода нейросетевого блока
- •12.2 Интерпретатор нейросетевого блока
- •12.3 Блок «Учитель» нейроимитатора
- •12.4 Блок «Оценка»
- •4.3.8. Конструктор нейронной сети
- •12.7 Блок «Констрастер»
- •4.3.9. Контрастер нейронной сети
- •42. Схема работы интеллектуального компонента прогнозирования временных рядов показателей.
- •44. Персептрон Розенблатта.
- •46.Карта самоорганизации Кохонена.
- •45 Многослойный перцептрон и его обучение
Объектно-структурный подход (осп)
Можно предложить в качестве базисной парадигмы методологии структурного анализа знаний и формирования поля знаний Pz обобщенный объектно-структурный подход (ОСП), последовательно разработанный от математического обоснования до технологии и программной реализации [Гаврилова, 1995].
Основные постулаты этой парадигмы заимствованы из ООП и расширены.
1. Системность (взаимосвязь между понятиями).
2. Абстрагирование (выявление существенных характеристик понятия, которые отличают его от других).
3. Иерархия (ранжирование на упорядоченные системы абстракций).
4. Типизация (выделение классов понятий с частичным наследованием - свойств в подклассах).
5. Модульность (разбиение задачи на подзадачи или "возможные миры").
6. Наглядность и простота нотации.
Использование пятого постулата ОСП в инженерии знаний позволяет строить глобальные БЗ с возможностью выделить локальные задачи с помощью горизонтальных и вертикальных сечений на отдельные модули пространства-описания предметной области.
Шестой постулат внесен в список последним, но не по значимости. В инженерии знаний формирование Рz традиционно является критической точкой [Гаврилова, Червинская, Яшин, 1988; Гаврилова, Червинская, 1992], так как создаваемая неформальная модель предметной области должна быть предельно ясной и лаконичной. Традиционно языком инженерии знаний были диаграммы, таблицы и другие графические элементы, способствующие наглядности представлений. Именно поэтому предлагаемый в данной работе подход к языку связан с возможной визуализацией процесса проектирования.
ОСП позволяет наглядно и компактно отобразить объекты и отношения предметной области на основе использования шести постулатов.
Объектно-структурный подход подразумевает интегрированное использование сформулированных выше постулатов от первой до последней стадий разработки БЗ интеллектуальных и обучающих систем. На основе ОСП предлагается алгоритм объектно-структурного анализа (ОСА) предметной области, позволяющего оптимизировать и упорядочить достаточно размытые процедуры структурирования знаний.
Стратификация знаний
Основы ОСА были предложены автором еще в работах [Гаврилова, 1989; Гаврилова, Красовская, 1990] и успешно применялись при разработке ЭС МИКРО-ЛЮШЕР [Гаврилова, Тишкин, Золотарев, 1989] и АВЭКС [Гаврилова, Минкова, Карапетян, 1992].
ОСА подразумевает дезагрегацию ПО, как правило, на восемь страт или слоев (табл. 2. и 3.).
Таблица 2. Стратификация знаний предметной области
s_1 |
ЗАЧЕМ -знания |
Стратегический анализ: назначение и функции системы |
s_2 |
КТО-знания |
Организационный анализ: коллектив разработчиков системы |
s_3 |
ЧТО-знания |
Концептуальный анализ: основные концепты, понятийная структура |
s_4 |
КАК-знания |
Функциональный анализ: гипотезы и модели принятия решения |
s_5 |
ГДЕ-знания |
Пространственный анализ: окружение, оборудование, коммуникации |
s_6 |
КОГДА-знания |
Временной анализ: временные параметры и ограничения |
s_7 |
ПОЧЕМУ-знания |
Каузальный или причинно-следственный анализ: формирование подсистемы объяснений |
s_8 |
СКОЛЬКО-знания |
Экономический анализ: ресурсы, затраты, прибыль, окупаемость |
Объектно-структурный анализ подразумевает разработку и использование матрицы ОСА (см. табл. 3.2), которая позволяет всю собранную информацию дезагрегировать последовательно по слоям-стратам (вертикальный анализ), а затем по уровням - от уровня проблемы до уровня подзадачи (горизонтальный анализ). Или наоборот - сначала по уровням, а потом по стратам.
Таблица 3. Матрица объектно-структурного анализа
Уровни Страты |
Уровень области u1 |
Уровень проблемы u2 |
Уровень задачи u3 |
Уровень подзадачи u4 |
... |
un |
Стратегический анализ s1 |
Е11 |
Е12 |
E13 |
Е14 |
|
E |
Организационный анализ s2 |
E21 |
|
|
|
|
|
Концептуальный анализ s3 |
E31 |
|
|
|
|
|
Функциональный анализ s4 |
E41 |
|
|
|
|
|
Пространственны и анализ s5 |
Е51 |
|
|
|
|
|
Временной анализ s6 |
E61 |
|
|
|
|
|
Каузальный анализ s7 |
E71 |
|
|
|
|
|
Экономический анализ s8 |
E81 |
|
|
|
|
|
... |
|
|
|
|
Eij |
|
Sm |
Em1 |
|
|
|
|
Emn |
При необходимости число страт может быть увеличено. В свою очередь знания каждой страты подвергаются дальнейшему ОСА и декомпозируются на составляющие
Emn
где m - номер уровня, n - номер страты, а етп принадлежит множеству К всех концептов (понятий) предметной области.
Emn = |
e11 |
... |
e1n |
(1) |
... |
... |
... |
||
em1 |
... |
emn |
Матрица (1) является матрицей над К. Пусть М (К) - совокупность всех Emn матриц над К. Тогда можно определить клеточную матрицу Е, в которой
m = ml + ... + mk,
n = nl + ... + nl,
где m и n - целые положительные числа. Е Mm,n (К), и ее можно представить в виде:
E = |
E11 |
... |
E1n |
(2) |
... |
... |
... |
||
Em1 |
... |
Emn |
где Еμv Мmμ (К), μ = l,...,k; v = 1,...,l.
Матрица Е является несимметричной, так как часть клеточных элементов Еμv могут подвергаться декомпозиции, а часть представляет некоторые базисные атомарные концепты из К, не подлежащие детализации.
Предлагаемый подход предполагает реализацию концепции последовательного генезиса ОСП через ОСА к объектно-структурной разработке (ОСР).
Алгоритм ОСА
Алгоритм ОСА (объектно-структурного анализа) предназначен для детального практического структурирования знаний ПО. В основе ОСА заложен алгоритм заполнения ОСА-матрицы Emn. Алгоритм содержит последовательность аналитических процедур, позволяющих упростить и оптимизировать процесс структурирования. Алгоритм разделяется на две составляющие:
А_I. Глобальный (вертикальный) анализ, включающий разбиение ПО на методологические страты (что-знания, как-знания и т. д.) на уровне всей ПО. В результате заполняется первый столбец матрицы (2).
А_II. Анализ страт (горизонтальный), включающий построение многоуровневых структур по отдельным стратам. Число уровней п определяется особенностями стратифицированных знаний ПО и может существенно отличаться для разных страт. С точки зрения методологии n<3 свидетельствует о слабой проработке ПО.
Первый уровень соответствует уровню всей ПО (уровень области). Второй -уровню проблемы, выделенной для решения. Третий - уровню конкретной решаемой задачи. Дальнейшие уровни соответствуют подзадачам, если имеет смысл их выделять.
При этом возможно как последовательное применение восходящей (bottom-up) и нисходящей концепций (top-down), так и их одновременное применение.
Глобальный анализ
Технология глобального анализа сводится к разбиению пространства основной задачи структурирования ПО на подзадачи, соответствующие особенностям ПО. Для разработки интеллектуальных систем существует минимальный набор s-страт, обеспечивающий формирование БЗ. Минимальный набор включает три страты:
s3 - формирование концептуальной структуры Sk;
s4 - формирование функциональной структуры Sf;
s7 - формирование подсистемы объяснений So.
Формирование остальных страт позволяет существенно оптимизировать процесс разработки и избежать многих традиционных ошибок проектирования. Страты s4 и s5 являются дополнительными и формируются в случаях, когда знания предметной области существенно зависят от временных и пространственных параметров (системы реального времени, планирование действий роботов и т. п.).
Алгоритм А_1 глобального анализа может быть кратко сформулирован следующим образом:
А_1_1. Собрать все материалы по идентификации задачи и по результатам извлечения знаний.
А_1_2. Выбрать набор страт N, подлежащих формированию (Nmin=3).
А_1_3. Отобрать всю информацию по первой выбранной страте (i-1, где i -номер из выбранного набора страт N).
А_1_4. Повторить шаг А_1_3 для i+1 для всех выбранных страт до i ← N.
А_1_5. Если часть информации останется неиспользованной, увеличить число страт и повторить для новых страт шаг А_1_3; иначе перейти к последовательной реализации алгоритмов горизонтального анализа страт А_2.
Анализ страт
Последовательность шагов горизонтального анализа зависит от номера страты, но фактически сводится к реализации дуальной концепции структурирования для решения конкретной подзадачи.
Ниже предлагается алгоритм ОСА для одной из обязательных страт s3 (ЧТО-анализ), результатом которого является формирование концептуальной структуры предметной области Sk.
А_2__3_1. Из группы информации, соответствующей ЧТО-страте, выбрать все значимые понятия и сформулировать соответствующие концепты.
А_2_3_2. Выявить имеющиеся иерархии и зафиксировать их графически в виде структуры.
А_2_3_3. Детализировать концепты, пользуясь нисходящей концепцией (top-down).
А_2_3_4. Образовать метапонятия по концепции (bottom-up).
А_2_3_5. Исключить повторы, избыточность и синонимию.
А_2_3_6. Обсудить понятия, не вошедшие в структуру Sf, с экспертом и перенести их в другие страты или исключить.
А_2_3_7. Полученный граф или набор графов разделить на уровни и обозначить - согласно матрице ОСА (1).
Аналогичные алгоритмы разработаны для всех страт и апробированы при разработке экспертных систем ПРОГОР и АВЭКС.
8.2 Методы практического извлечения знаний.
Подробно рассмотрев теоретические аспекты инженерии знаний, мы, однако, в явном виде не определили, каким практическим методом эти знания будут получены. В неявном виде предполагалось, что это некоторое взаимодействие инженера по знаниям и эксперта в форме непосредственного живого общения. Однако это не единственная форма извлечения знаний, хотя и довольно распространенная. В работах [Волков, Ломнев, 1989; Осипов, 1998; Boose, 1989; Cullen, Bryman, 1988; Gammack, Young, 1985; Hart 1986] упоминается около 15 ручных (неавтоматизированных) методов извлечения и более 20 автоматизированных методов приобретения и формирования знаний.
Рисунок 23. иллюстрирует предлагаемую классификацию методов извлечения знаний, в которой используются наиболее употребительные термины, что позволит инженерам по знаниям в зависимости от конкретной задачи и ситуации выбрать подходящий метод.
Из предложенной схемы классификации видно, что основной принцип деления связан с источником знаний.
Рис. 23. Классификация методов извлечения знаний
Коммуникативные методы извлечения знаний охватывают методы и процедуры контактов инженера по знаниям с непосредственным источником знаний - экспертом, а текстологические включают методы извлечения знаний из документов (методик, пособий, руководств) и специальной литературы (статей, монографий, учебников).
Разделение этих групп методов на верхнем уровне классификации не означает их антагонистичности, обычно инженер по знаниям комбинирует различные методы, например сначала изучает литературу, затем беседует с экспертами, или наоборот.
В свою очередь, коммуникативные методы можно также разделить на две группы: активные и пассивные. Пассивные методы подразумевают, что ведущая роль в процедуре извлечения как бы передается эксперту, а инженер по знаниям только протоколирует рассуждения эксперта во время его реальной работы по принятию решений или записывает то, что эксперт считает нужным самостоятельно рассказать в форме лекции. В активных методах, напротив, инициатива полностью в руках инженера по знаниям, который активно контактирует с экспертом различными способами - в играх, диалогах, беседах за круглым столом и т. д.
Следует еще раз подчеркнуть, что и активные и пассивные методы могут чередоваться даже в рамках одного сеанса извлечения знаний. Например, если инженер по знаниям застенчив и не имеет большого опыта, то вначале он может использовать пассивные методы, а постепенно, ближе знакомясь с экспертом, захватывать инициативу и переходить "в наступление".
Пассивные методы на первый взгляд достаточно просты, но на самом деле требуют от инженера по знаниям умения четко анализировать поток сознания эксперта и выявлять в нем значимые фрагменты знаний. Отсутствие обратной связи (пассивность инженера по знаниям) значительно ослабляет эффективность этих методов, чем и объясняется их обычно вспомогательная роль при активных методах.
Активные методы можно разделить на две группы в зависимости от числа экспертов, отдающих свои знания. Если их число больше одного, то целесообразно помимо серии индивидуальных контактов с каждым применять и методы групповых обсуждений предметной области. Такие групповые методы обычно активизируют мышление участников дискуссий и позволяют выявлять весьма нетривиальные аспекты их знаний. В свою очередь, индивидуальные методы на сегодняшний день остаются ведущими, поскольку столь деликатная процедура, как "отъем знаний", не терпит лишних свидетелей.
Отдельно следует сказать об играх. Игровые методы сейчас широко используются в социологии, экономике, менеджменте, педагогике для подготовки руководителей, учителей, врачей и других специалистов. Игра - это особая форма деятельности и творчества, где человек раскрепощается и чувствует себя намного свободнее, чем в обычной трудовой деятельности.
На выбор метода влияют три фактора: личностные особенности инженера по знаниям, личностные особенности эксперта и характеристика предметной области.
Одна из возможных классификаций людей по психологическим характеристикам [Обозов, 1986] делит всех на три типа:
мыслитель (познавательный тип);
собеседник (эмоционально-коммуникативный тип);
практик (практический тип).
Мыслители ориентированы на интеллектуальную работу, учебу, теоретические обобщения и обладают такими характеристиками когнитивного стиля, как поле-независимость и рефлексивность (см. параграф 3.3). Собеседники - это общительные, открытые люди, готовые к сотрудничеству. Практики предпочитают действие разговорам, хорошо реализуют замыслы других, направлены на результативность работы.
Для характеристики предметных областей можно предложить следующую классификацию:
хорошо документированные;
средне документированные;
слабо документированные.
Эта классификация связана с соотношением двух видов знаний Z1 и Z2, где Z1 - это экспертное "личное" знание, a Z2 - материализованное в книгах "общее" знание в данной конкретной области. Если представить знания Zпо предметной области как объединение Z1 и Z2, то есть Zпо = Z1EZ2, то рис. 24 наглядно иллюстрирует предложенную классификацию.
Рис. 24 Классификация предметных областей
Кроме этого, предметные области можно разделить по критерию структурированности знаний. Под структурированностью будем понимать степень теоретического осмысления и выявленности основных закономерностей и принципов, действующих в данной предметной области. И хотя ЭС традиционно применяются в слабо структурированных предметных областях, сейчас наблюдается тенденция расширения сферы внедрения экспертных систем.
По степени структурированности знаний предметные области могут быть:
хорошо структурированными - с четкой аксиоматизацией, широким применением математического аппарата, устоявшейся терминологией;
средне структурированными - с определившейся терминологией, развивающейся теорией, явными взаимосвязями между явлениями;
слабо структурированными - с размытыми определениями, богатой эмпирикой, скрытыми взаимосвязями, с большим количеством "белых пятен".
Введенные в данном параграфе классификации методов и предметных областей помогут инженеру по знаниям, четко определив свою предметную область, соотнести ее с предложенными типами и наметить подходящий метод или группу методов извлечения знаний. Однако, скорее всего, реальная работа полностью зачеркнет его выбор, и окажется, что его хорошо документированная область является слабо документированной, а метод наблюдений надо срочно заменять играми!
Такова реальная сложность процедуры извлечения знаний.