
- •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 - агент поиска и выбора онтологий
5.2.2. Методы выявления конструктов Метод минимального контекста
Метод минимального контекста или метод триад наиболее часто используется для выявления конструктов. Элементы представляются в группах по три. Это минимальное число, которое позволяет определить сходство и различие.
Испытуемому предъявляются три элемента из всего списка, и предлагается назвать какое-нибудь важное качество, по которому два из них сходны между собой и, следовательно, отличны от третьего. После того как экспериментатор запишет ответ, испытуемого просят назвать, в чем конкретно состоит отличие третьего элемента от двух других (если испытуемый не указал, какие именно два элемента были оценены как сходные между собой, то его просят сделать это). Ответ на этот вопрос и представляет собой противоположный полюс конструкта. Испытуемому предъявляется столько триад элементов, сколько сочтет нужным экспериментатор. Специфических правил не существует. Все зависит лишь от величины выборки, то есть от числа конструктов, подлежащих исследованию.
Пример 5.3
Имеется список из названий фруктов. Берется триада «яблоко-груша-апельсин». Респондент выделяет два сходных объекта - «яблоко и груша»; качество, определяющее сходство, - «отсутствие аллергической реакции у респондента», отличие третьего объекта - «аллергичность». Так выявлен личностный конструкт «аллергичность/отсутствие таковой».
Другие методы выявления конструктов
Франселла и Баннистер [Франселла, Баннистер, 1987] описывают методы, которые также используют триады:
• последовательный метод;
• метод самоидентификации;
• метод ролевой персонификации.
В двух последних методах в триаду включается элемент «я сам».
Келли предложил использовать триады для выявления конструктов, поскольку этот метод отражал его теоретические представления о том, как конструкты впервые возникают. Однако в связи с тем, что у испытуемого выявляются уже сложившиеся конструкты, не обязательно использовать непременно три элемента. Триада не является единственным способом выявления противоположного полюса.
Для выявления конструктов можно использовать два элемента (выявление конструктов при помощи диад элементов) или более чем три, как это делается в методе полного контекста [Франселла, Баннистер, 1987].
Часто используемый метод - техника лестничного спуска Хинкла:
• конструкты извлекаются стандартным методом;
• по поводу отдельного конструкта задается вопрос, «К какому полюсу данного конструкта вы бы хотели быть отнесены?»;
• затем: «Почему вы предпочитаете этот полюс?», «Что противостоит этому?». Таким образом, получается новый конструкт, более обобщенный, чем исходный. Процесс повторяется, и выделяется иерархия конструктов.
5.2.3. Анализ репертуарных решеток
Анализ репертуарных решеток позволяет определить силу и направленность связей между конструктами респондента, выявить наиболее важные и значимые параметры (глубинные конструкты), лежащие в основе конкретных оценок и отношений, построить целостную подсистему конструктов, позволяющую описывать и предсказывать оценки и отношения человека.
Анализ единичной репертуарной решетки
Можно использовать форму кластерного анализа для группировки конструктов. Этот алгоритм структурирует конструкты в линейный порядок, так что конструкты, находящиеся близко в пространстве, также оказываются близки в порядке. Этот алгоритм имеет преимущество при демонстрации, так как представление просто реорганизует решетку, показывая соседства конструктов и элементов.
Таким образом, формируются две матрицы - одна для элементов, другая для конструктов. Кластеры определяются выбором наибольших значений в этих матрицах - то есть наиболее связанных составляющих матрицы, - до тех пор, пока все элементы и конструкты не оказываются включенными в кластерное дерево. Программа производит иерархическую кластеризацию системы конструктов эксперта и представляет извлеченные знания.
Кроме того, для каждого конструкта имеются численные значения в решетке как вектор величин, связанных с расположением элементов относительно полюсов данного конструкта. С этой точки зрения каждый конструкт может быть представлен как точка в многомерном пространстве, а его плоскость определяется числом связанных с ним элементов. Естественной мерой отношений между конструктами является, следовательно, расстояние между ними в этом многомерном пространстве. Два конструкта с нулевым расстоянием между ними - это конструкты, по отношению к которым элементы структурируются совершенно одинаково. Следовательно, можно считать, что они используются одинаково. В каком-то смысле это эквивалентные конструкты.
Для неэквивалентных конструктов можно анализировать их пространственные отношения, определяя ряд осей как проекцию каждого конструкта на ось, наиболее удаленную от них, проекцию на вторую ось, связанную с оставшимися расстояниями, и т. д. Это метод анализа главных компонент пространства конструктов. Он связан с факторным анализом семантического пространства, использованного в изучении семантического дифференциала. Метод анализа главных компонент позволяет представить элементы и конструкты так, что между ними могут быть выявлены взаимосвязи. Возможно, построить логический анализ репертуарной решетки, используя конструкты как предикаты относительно элементов.
Анализ нескольких репертуарных решеток
Довольно часто возникает ситуация, когда требуется сравнить несколько репертуарных решеток. Анализ серии репертуарных решеток, заполняемых одним и тем же человеком в разные моменты времени, позволяет следить за динамикой конструктов и оценок, строить траектории изменения состояния человека в системе его собственных субъективных шкал.
Проанализируем несколько репертуарных решеток, заполняемых разными людьми.
Анализ пар системных конструктов используется для измерения согласия и понимания между людьми. Для этого два эксперта, имеющие разные точки зрения, создают и заполняют решетки по общей области знаний. При этом каждый независимо от другого выбирает элементы, выявляет конструкты и оценивает их. Затем каждый делает две пустые копии своей решетки, оставляя элементы и конструкты без значений их оценки. Обе эти решетки заполняются партнерами. При этом одна заполняется так, как он сам себе это представляет, а вторая так, как он представляет себе заполнение оригинальной решетки ее автором. Сравнение пар решеток помогает достигнуть соглашения и понимания между двумя людьми.
Существуют три способа сравнения двух решеток.
1. Сцепление решеток, имеющих общие элементы, и их последующая обработка одним из описанных алгоритмов, как если бы они составляли одну большую решетку. Таким образом, можно исследовать взаимодействие идей через проверку смешанных кластеров конструктов из разных решеток.
2. Данный путь требует наличия двух решеток с одинаковыми именами элементов и конструктов и показывает расхождения между ними через измерение расстояния между одними и теми же именами. Результаты показывают согласие в понимании и выявляют различия между двумя решетками, основанными на одинаковых именах и конструктах.
3. Данный способ также использует две решетки с одинаковыми именами элементов и конструктов, находит наиболее сильно изменяющиеся элементы и конструкты и удаляет их из решетки. Таким образом, определяются базовые элементы и конструкты, которые показывают согласие и понимание.
Анализ групп системных конструктов. Анализируется серия репертуарных решеток, полученная от группы людей, использовавших одинаковые элементы. Сравнивается каждая пара и показывается «групповая сеть», которая отражает связи сходных конструктов внутри группы. Создается решетка, отражающая конструкты, которые понимаются большинством группы, и это служит основанием дальнейшего анализа. Каждый конструкт, неиспользованный в рамках группы, оценивается по силе связанности с другими конструктами.