
- •1. Введение в интеллектуальные системы.................................................................7
- •2. Разработка систем, основанных на знаниях ........................................................36
- •3. Теоретические аспекты инженерии знаний..........................................................55
- •4. Технологии инженерии знаний.............................................................................. 95
- •5. Новые тенденции и прикладные аспекты
- •6. Программный инструментарий разработки систем, основанных на знаниях............................................................................................................................194
- •7. Пример разработки системы, основанной на знаниях ................................….226
- •8. Представление данных и знаний в Интернете...................................................257
- •9. Интеллектуальные Интернет-технологии..........................................................300
- •1. Введение в интеллектуальные системы
- •1.1. Краткая история искусственного интеллекта
- •1.1.1. Предыстория
- •1.1.2. Зарождение нейрокибернетики
- •1.1.3. От кибернетики «черного ящика» к ии
- •1.1.4. История искусственного интеллекта в России
- •1.2. Основные направления исследований в области искусственного интеллекта
- •1.2.1. Представление знаний и разработка систем, основанных на знаниях (knowledge-based systems)
- •1.2.2. Программное обеспечение систем ии (software engineering for Al)
- •1.2.3. Разработка естественно-языковых интерфейсов и машинный перевод (natural language processing)
- •1.2.4. Интеллектуальные роботы (robotics)
- •1.2.5. Обучение и самообучение (machine learning)
- •1.2.6. Распознавание образов (pattern recognition)
- •1.2.7. Новые архитектуры компьютеров (new hardware platforms and architectures)
- •1.2.8. Игры и машинное творчество
- •1.2.9. Другие направления
- •1.3. Представление знаний и вывод на знаниях
- •1.3.1. Данные и знания
- •1.3.2. Модели представления знаний
- •1.3.3. Вывод на знаниях
- •1.4. Нечеткие знания
- •1.4.1. Основы теории нечетких множеств
- •123456789 10 Рис. 1.7. Формирование нечетких множеств
- •1.4.2. Операции с нечеткими знаниями
- •1.5. Прикладные интеллектуальные системы
- •2. Разработка систем, основанных на знаниях
- •2.1. Введение в экспертные системы. Определение и структура
- •2.2. Классификация систем, основанных на знаниях
- •2.2.1. Классификация по решаемой задаче
- •2.2.2. Классификация по связи с реальным временем
- •2.2.3. Классификация по типу эвм
- •2.2.4. Классификация по степени интеграции с другими программами
- •2.3. Коллектив разработчиков
- •2.4. Технология проектирования и разработки
- •2.4.1. Проблемы разработки промышленных эс
- •2.4.2. Выбор подходящей проблемы
- •2.4.3. Технология быстрого прототипирования
- •2.4.4. Развитие прототипа до промышленной эс
- •2.4.5. Оценка системы
- •2.4.6. Стыковка системы
- •2.4.7. Поддержка системы
- •3. Теоретические аспекты инженерии знаний
- •3.1. Поле знаний
- •3.1.1. О языке описания поля знаний
- •3.1.2. Семиотическая модель поля знаний
- •3.1.3. «Пирамида» знаний
- •3.2. Стратегии получения знаний
- •3.3. Теоретические аспекты извлечения знаний
- •3.3.1. Психологический аспект
- •3.3.2. Лингвистический аспект
- •3.3.3. Гносеологический аспект извлечения знаний
- •3.4. Теоретические аспекты структурирования знаний
- •3.4.1. Историческая справка
- •3.4.2. Иерархический подход
- •3.4.3. Традиционные методологии структурирования
- •3.4.4. Объектно-структурный подход (осп)
- •4. Технологии инженерии знаний
- •4.1. Классификация методов практического извлечения знаний
- •4.2. Коммуникативные методы
- •4.2.1. Пассивные методы
- •4.2.2. Активные индивидуальные методы
- •4.2.3. Активные групповые методы
- •4.3. Текстологические методы
- •4.4. Простейшие методы структурирования
- •4.4.1. Алгоритм для «чайников»
- •4.4.2. Специальные методы структурирования
- •4.5. Состояние и перспективы автоматизированного приобретения знаний
- •4.5.1. Эволюция систем приобретения знаний
- •4.5.2. Современное состояние
- •4.6. Примеры методов и систем приобретения знаний
- •4.6.1. Автоматизированное структурированное интервью
- •4.6.2. Имитация консультаций
- •4.6.3. Интегрированные среды приобретения знаний
- •4.6.4. Приобретение знаний из текстов
- •5. Новые тенденции и прикладные аспекты инженерии знаний
- •5.1. Латентные структуры знаний и психосемантика
- •5.1.1. Семантические пространства
- •5.1.2. Методы многомерного шкалирования
- •5.1.3. Использование метафор для выявления «скрытых» структур знаний
- •5.2. Метод репертуарных решеток
- •5.2.1. Основные понятия
- •5.2.2. Методы выявления конструктов Метод минимального контекста
- •5.2.3. Анализ репертуарных решеток
- •5.2.4. Автоматизированные методы
- •5.3. Управление знаниями
- •5.3.1. Что такое «управление знаниями»
- •5.3.2. Управление знаниям и корпоративная память
- •5.3.3. Системы omis
- •5.3.4. Особенности разработки omis
- •5.4. Визуальное проектирование баз знаний как инструмент познания
- •5.4.1. От понятийных карт к семантическим сетям
- •5.4.2. База знаний как познавательный инструмент
- •5.5. Проектирование гипермедиа бд и адаптивных обучающих систем
- •5.5.1. Гипертекстовые системы
- •5.5.2. От мультимедиа к гипермедиа
- •5.5.3. На пути к адаптивным обучающим системам
- •6. Программный инструментарий разработки систем, основанных на знаниях
- •6.1. Технологии разработки программного обеспечения - цели, принципы, парадигмы
- •6.1.1. Основные понятия процесса разработки программного обеспечения (по)
- •6.1.2. Модели процесса разработки по
- •6.1.3. Инструментальные средства поддержки разработки систем по
- •6.2. Методологии создания и модели
- •6.3. Языки программирования для ии и языки представления знаний
- •6.4. Инструментальные пакеты для ии
- •6.5. WorkBench-системы
- •7. Пример разработки системы, основанной на знаниях
- •7.1. Продукционно-фреймовый япз pilot/2
- •7.1.1. Структура пилот-программ и управление выводом
- •7.1.2. Декларативное представление данных и знаний
- •7.1.3. Процедурные средства языка
- •7.2. Психодиагностика – пример предметной области для построения экспертных систем
- •7.2.1. Особенности предметной области
- •7.2.2. Батарея психодиагностических эс «Ориентир»
- •7.3. Разработка и реализация
- •7.3.1. Архитектура системы и ее база знаний
- •7.3.2. Общение с пользователем и опрос испытуемых
- •7.3.3. Вывод портретов и генерация их текстовых представлений
- •7.3.4. Помощь и объяснения в эс «Cattell»
- •8. Представление данных и знаний в Интернете
- •8.1. Язык html и представление знаний 8.1.1. Историческая справка
- •8.1.2. Html - язык гипертекстовой разметки Интернет-документов
- •8.1.3. Возможности представления знаний на базе языка html
- •8.2. Онтологии и онтологические системы
- •8.2.1. Основные определения
- •8.2.2. Модели онтологии и онтологической системы
- •8.2.3. Методологии создания и «жизненный цикл» онтологий
- •8.2.4. Примеры онтологий
- •8.3. Системы и средства представления онтологических знаний
- •8.3.1. Основные подходы
- •8.3.2. Инициатива (ка)2 и инструментарий Ontobroker
- •Средства спецификации онтологий в проекте Ontobroker
- •Формализм запросов
- •Формализм представления и машина вывода
- •Аннотация Web-страниц онтологической информацией
- •8.3.3. Проект shoe - спецификация онтологий и инструментарий Общая характеристика проекта
- •Спецификации онтологий и инструментарий shoe
- •Формализм представления и машина вывода
- •Аннотация Web-документов на базе онтологии
- •Формализм запросов
- •8.3.4. Другие подходы и тенденции
- •9. Интеллектуальные Интернет-технологии
- •9.1. Программные агенты и мультиагентные системы
- •9.1.1. Историческая справка
- •9.1.2. Основные понятия
- •9.2. Проектирование и реализация агентов и мультиагентных систем
- •9.2.1. Общие вопросы проектирования агентов и mac
- •9.2.2. Инструментарий AgentBuilder
- •9.2.3. Система Bee-gent
- •9.3. Информационный поиск в среде Интернет
- •9.3.1. Машины поиска
- •9.3.2. Неспециализированные и специализированные поисковые агенты
- •9.3.3. Системы интеллектуальных поисковых агентов
- •Autonomy и Web compass - системы интеллектуального поиска и обработки информации
- •Проект системы marri
- •Прототип системы OntoSeek
- •(Onto)2 - агент поиска и выбора онтологий
3.1.2. Семиотическая модель поля знаний
Поле знаний Pz является некоторой семиотической моделью, которая может быть представлена как граф, рисунок, таблица, диаграмма, формула или текст в зависимости от вкуса инженера по знаниям и особенностей предметной области.
Особенности ПО могут оказать существенное влияние на форму и содержание компонентов структуры Pz.
Рассмотрим соответствующие компоненты Pz (рис. 3.2).
Рис. 3.2. Структура поля знаний
Синтаксис. Обобщенно синтаксическую структуру поля знаний можно представить как
П = (I, O, М),
где I - структура исходных данных, подлежащих обработке и интерпретации в экспертной системе;
О - структура выходных данных, то есть результата работы системы; М - операциональная модель предметной области, на основании которой происходит модификация I в О.
Включение компонентов I и О в Р обусловлено тем, что составляющие и структура этих интерфейсных компонентов имплицитно (то есть неявно) присутствуют в модели репрезентации в памяти эксперта. Операциональная модель М может быть представлена как совокупность концептуальной структуры Sk, отражающей понятийную структуру предметной области, и функциональной структуры Sf, моделирующей схему рассуждений эксперта:
М = (Sk, Sf).
Sk выступает как статическая, неизменная составляющая Р, в то время как Sf представляет динамическую, изменяемую составляющую.
Формирование Sk основано на выявлении понятийной структуры предметной области. Параграф 3.4. описывает достаточно универсальный алгоритм проведения концептуального анализа на основе модификации парадигмы структурного анализа [Yourdon, 1989] и построения иерархии понятий (так называемая «пирамида знаний»). Пример Sk и Sf представлен на рис. 3.3 и 3.4.
Рис. 3.3. Концептуальная составляющая поля знаний
Рис. 3.4. Функциональная составляющая поля знаний
Структура Sf включает понятия предметной области А и моделирует основные функциональные связи RA или отношения между понятиями, образующими Sk. Эти связи отражают модель или стратегию принятия решения в выбранной ПО. Таким образом, Sf образует стратегическую составляющую М.
Семантика. Семантика, придающая определенное значение предложениям любого формального языка, определяется на некоторой области. Фактически это набор правил интерпретации предложений и формул языка. Семантика L должна быть композиционной, то есть значение предложения определяется как функция значений его составляющих.
Семантика языка L зависит от особенностей предметной области, она обладает свойством полиморфизма, то есть одни и те же операторы языка в разных задачах могут иметь свои особенности.
Семантику поля знаний Pz можно рассматривать на двух уровнях. На первом уровне Pizg есть семантическая модель знаний эксперта i о некоторой предметной области Og. На втором уровне любое поле знаний Pz является моделью некоторых знаний, и, следовательно, можно говорить о смысле его как некоторого зеркала действительности. Рассматривать первый уровень в отрыве от конкретной области нецелесообразно, поэтому остановимся подробнее на втором.
Схему, отображающую отношения между реальной действительностью и полем знаний, можно представить так, как показано на рис. 3.5.
Рис. 3.5. «Испорченный телефон» при формировании поля знаний
Как следует из рисунка, поле Pijzg - это результат, полученный «после 4-й трансляции» (если говорить на языке информатики).
• 1-я трансляция (Ii,) - это восприятие и интерпретация действительности О предметной области gi-м экспертом. В результате Ii , в памяти эксперта образуется модель Мgi как семантическая репрезентация действительности и его личного опыта по работе с ней.
• 2-я трансляция (Vi) - это вербализация опыта i-гo эксперта, когда он пытается объяснить свои рассуждения Si, и передать свои знания Zi инженеру по знаниям. В результате Vi образуется либо текст Ti, либо речевое сообщение Сi.
• 3-я трансляция (Ij) - это восприятие и интерпретация сообщений Ti или Сi, j-м
инженером по знаниям. В результате в памяти инженера по знаниям образуется модель мира Мgj.
• 4-я трансляция (Кj) - это кодирование и вербализация модели Мgi в форме
поля знаний PijZg.
Более всего эта схема напоминает детскую игру в «испорченный телефон»; перед инженером по знаниям стоит труднейшая задача - добиться максимального соответствия Mgi и Pijzg. У читателей не должно возникать иллюзий, что Pzg отображает Og. Ни в коем случае, ведь знания - вещь сугубо авторизованная, следовало бы на каждой ЭС ставить четкий ярлык i-j, то есть «база знаний эксперта i в понимании инженера по знаниям j». Стоит заменить, например, инженера по знаниям j на h, и получится совсем другая картина.
Пример 3.1
Приведем пример влияния субъективных взглядов эксперта на Mgi и Vi. Реальность (Оg): два человека прибегают на вокзал за 2 минуты до отхода поезда. В кассы - очередь. В автоматических кассах свободно, но ни у того, ни у другого нет мелочи. Следующий поезд через 40 минут. Оба опаздывают на важную встречу.
Интерпретация 1-го эксперта (I1,): нельзя приходить на вокзал менее чем за 10 минут.
Интерпретация 2-го эксперта (I2): надо всегда иметь мелочь в кармане.
Вербализация 1-го эксперта (V1): опоздал к нужному поезду, так как не рассчитал время.
Вербализация 2-го эксперта (V2): опоздал, так как на вокзале неразбериха, в кассах толпа.
Последующие трансляции еще больше будут искажать, и видоизменять модель, но теперь уже с учетом субъективного восприятия инженеров по знаниям.
Таким образом, если считать поле знаний смысловой (семантической) моделью предметной области, то эта модель дважды субъективна. И если модель Mgi (см рис. 3.5) - это усеченное отображение Og, то само Pz - лишь отблеск Mgi через призму Vi, и Мgi.
Прагматика. В качестве прагматической составляющей семиотической модели следует рассматривать технологии проведения структурного анализа ПО, пользуясь которым инженер по знаниям может сформировать Pz по результатам стадии извлечения знаний.
Таким образом, под прагматикой будем понимать практические аспекты разработки и использования поля, то есть как от хаоса черновиков и стенограмм сеансов извлечения знаний перейти к стройной или хотя бы ясной модели.
Подробнее эти вопросы освещены в параграфах 3.4. и 4.4. Однако поле знаний, несмотря на все старания инженера по знаниям и эксперта, всегда будут лишь бледным отпечатком реально существующей предметной области, ведь окружающий нас мир так изменчив, сложен и многообразен, а то, что хранится в нашем сознании, так плохо поддается вербализации. Тем не менее, с точки зрения научной методологии без продуманного, четкого и красивого поля знаний не может идти и речи о создании базы знаний промышленной ЭС.