
- •Глава 1
- •Искусственный интеллект
- •Фактуальное и операционное знание
- •Признаки иис
- •Системы с интеллектуальным интерфейсом
- •Экспертные системы
- •Самообучающиеся системы
- •Адаптивные информационные системы
- •Языки программирования для ии и языки представления знаний
- •Глава 2
- •Данные и знания
- •Модели представления знаний
- •Глава 3
- •Системы продукций
- •Стратегии поиска в пространстве состояний
- •Рекурсивный поиск
- •Глава 4
- •Введение в экспертные системы. Определение и структура
- •Классификация экспертных систем
- •Коллектив разработчиков
- •Технология проектирования и разработки
- •Глава 5
- •Поле знаний
- •Стратегии получения знаний
- •Теоретические аспекты извлечения знаний
- •Теоретические аспекты структурирования знаний
- •Технологии инженерии знаний
- •Глава 6
- •Задача классификации
- •Деревья решений
- •Искусственные нейронные сети
- •Глава 7
- •Способы аналитической обработки данных
- •Некоторые бизнес-приложения Data Mining
- •Типы закономерностей
- •Процесс нахождения нового знания
- •Глава 1 2
- •Глава 2 15
- •Глава 3 23
- •Глава 4 45
- •Глава 5 54
- •Глава 6 62
- •Глава 7 88
Экспертные системы
В конце 1960-х годов появились первые игровые программы, системы для элементарного анализа текста и решения некоторых математических задач (геометрии, интегрального исчисления). В возникавших при этом сложных переборных проблемах количество перебираемых вариантов резко снижалось благодаря применению всевозможных эвристик и «здравого смысла». Такой подход стали называть эвристическим программированием. Дальнейшее развитие эвристического программирования шло по пути усложнения алгоритмов и улучшения эвристик. Однако вскоре стало ясно, что существует некоторый предел, за которым никакое улучшение эвристик и усложнение алгоритма не повысит качества работы системы и, главное, не расширит ее возможностей. Программа, которая играет в шахматы, никогда не будет играть в шашки или карты.
Постепенно исследователи стали понимать, что всем ранее созданным программам недостает самого важного — знаний в соответствующей области. Специалисты, решая задачи, достигают высоких результатов благодаря знаниям и опыту; если программы смогут обращаться к знаниям и применять их, то они тоже будут работать несравненно лучше.
Это понимание, возникшее в начале 70-х годов, по существу, означало качественный скачок в работах по искусственному интеллекту.
Уже к середине 70-х годов появляются первые прикладные интеллектуальные системы, использующие различные способы представления знаний для решения задач — экспертные системы. Одной из первых была экспертная система DENDRAL, разработанная в Стэнфордском университете и предназначенная для порождения формул химических соединений на основе спектрального анализа.
Экспертные системы — это интеллектуальные программы, способные делать логические выводы на основании знаний в конкретной предметной области и обеспечивающие решение специфических задач на профессиональном уровне.
Основным компонентом экспертной системы является база знаний, аккумулирующая знания одного или нескольких экспертов в данной предметной области. Эти знания структурированы и представлены таким образом, чтобы на их основе можно было осуществлять рассуждения. Вопросы проектирования экспертных систем будут рассмотрены в следующих главах.
В настоящий момент экспертные системы строятся для решения широкого круга проблем в таких областях, как медицина, экономика, математика, химия, машиностроение, геология, вычислительная техника, законодательство, оборона и др. В настоящее время структура информационной среды предприятия зачастую включает экспертную систему.
Самообучающиеся системы
В основе самообучающихся систем лежат методы автоматической классификации примеров ситуаций реальной практики (обучения на примерах). Примеры реальных ситуаций накапливаются за некоторый исторический период и составляют обучающую выборку. Эти примеры описываются множеством признаков классификации. Причем обучающая выборка может быть:
«с учителем», когда для каждого примера задается в явном виде значение признака его принадлежности некоторому классу ситуаций (классообразующего признака);
«без учителя», когда по степени близости значений признаков классификации система сама выделяет классы ситуаций.
В результате обучения системы автоматически строятся обобщенные правила или функции, определяющие принадлежность ситуаций классам, которыми обученная система пользуется при интерпретации новых возникающих ситуаций. Таким образом, автоматически формируется база знаний, используемая при решении задач классификации и прогнозирования. Эта база знаний периодически автоматически корректируется по мере накопления опыта реальных ситуаций, что позволяет сократить затраты на ее создание и обновление.
Общие недостатки, свойственные всем самообучающимся системам, заключаются в следующем:
возможна неполнота и/или зашумленность (избыточность) обучающей выборки и, как следствие, относительная адекватность базы знаний возникающим проблемам;
возникают проблемы, связанные с плохой смысловой ясностью зависимостей признаков и, как следствие, неспособность объяснения пользователям получаемых результатов;
ограничения в размерности признакового пространства вызывают неглубокое описание проблемной области и узкую направленность применения.
Индуктивные системы
Обобщение примеров по принципу от частного к общему сводится к выявлению подмножеств примеров, относящихся к одним и тем же подклассам, и определению для них значимых признаков.
Процесс классификации примеров осуществляется следующим образом.
Выбирается признак классификации из множества заданных (либо последовательно, либо по какому-либо правилу).
По значению выбранного признака множество примеров разбивается на подмножества.
Выполняется проверка, принадлежит ли каждое образовавшееся подмножество примеров одному подклассу.
Если какое-то подмножество примеров принадлежит одному подклассу, т.е. у всех примеров подмножества совпадает значение классообразующего признака, то процесс классификации заканчивается (при этом остальные признаки классификации не рассматриваются).
Для подмножеств примеров с несовпадающим значением классообразующего признака процесс классификации продолжается, начиная с пункта 1. (Каждое подмножество примеров становится классифицируемым множеством.)
Нейронные сети
В результате обучения на примерах строятся математические решающие функции (передаточные функции или функции активации), которые определяют зависимости между входными и выходными признаками (сигналами).
Каждая такая функция, называемая по аналогии с элементарной единицей человеческого мозга нейроном, отображает зависимость значения выходного признака от взвешенной суммы значений входных признаков, в которой вес входного признака показывает степень влияния входного признака на выходной.
Решающие функции используются в задачах классификации на основе сопоставления их значений при различных комбинациях значений входных признаков с некоторым пороговым значением. В случае превышения заданного порога считается, что нейрон сработал и таким образом распознал некоторый класс ситуаций. Нейроны используются и в задачах прогнозирования, когда по значениям входных признаков после их подстановки в выражение решающей функции получается прогнозное значение выходного признака.
Обучение нейронной сети сводится к определению связей (синапсов) между нейронами и установлению силы этих связей (весовых коэффициентов).
Алгоритмы обучения нейронной сети упрощенно сводятся к определению зависимости весового коэффициента связи двух нейронов от числа примеров, подтверждающих эту зависимость.
Достоинство нейронных сетей перед индуктивным выводом заключается в решении не только классифицирующих, но и прогнозных задач. Возможность нелинейного характера функциональной зависимости выходных и входных признаков позволяет строить более точные классификации.
Системы, основанные на прецедентах
В этих системах база знаний содержит описания не обобщенных ситуаций, а собственно сами ситуации или прецеденты. Тогда поиск решения проблемы сводится к поиску по аналогии (абдуктивному выводу от частного к частному).
Так же, как и для индуктивных систем, прецеденты описываются множеством признаков, по которым строятся индексы быстрого поиска. Но в отличие от индуктивных систем допускается нечеткий поиск с получением множества допустимых альтернатив, каждая из которых оценивается некоторым коэффициентом уверенности. Далее наиболее подходящие решения адаптируются по специальным алгоритмам к реальным ситуациям. Обучение системы сводится к запоминанию каждой новой обработанной ситуации с принятыми решениями в базе прецедентов.
Системы, основанные на прецедентах, применяются как системы распространения знаний с расширенными возможностями или в системах контекстной помощи.
Информационные хранилища
В отличие от интеллектуальной базы данных информационное хранилище представляет собой хранилище извлеченной значимой информации из оперативной базы данных, которое предназначено для оперативного анализа данных. Извлечение знаний из баз данных осуществляется регулярно, например, ежедневно.
Типичными задачами оперативного ситуационного анализа являются:
определение профиля потребителей конкретного товара;
предсказание изменений ситуаций на рынке;
анализ зависимостей признаков ситуаций (корреляционный анализ) и др.
Применение информационных хранилищ на практике все в большей степени демонстрирует необходимость интеграции интеллектуальных и традиционных информационных технологий, комбинированное использование различных методов представления и вывода знаний, усложнение архитектуры информационных систем.