Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций.doc
Скачиваний:
108
Добавлен:
02.05.2014
Размер:
686.08 Кб
Скачать

2.8. Средства приобретения знаний

Тема извлечения знаний является основной при наполнении баз знаний экспертных систем.

Под извлечением знаний понимается выявление закономерностей в информации, характеризующей анализируемую предметную область, с целью построения формальной модели (формализованных знаний). Источниками этой информации могут быть:

  • специалисты в данной предметной области (эксперты);

  • документы;

  • базы данных.

Эксперты обычно хранят информацию о предметной области в форме совокупности различных эвристик (условий, приемов, подходов и т.д.).

Документы хранят информацию о предметной области в следующих основных формах:

  • тексты;

  • изобразительные средства (рисунки, схемы, графики и т.д.);

  • видеоматериалы;

  • звук (речь, музыка).

Помимо знаний выделяют понятие метазнания (знания о знаниях). К метазнаниям, в частности, относятся знания следующих научных областей:

  • системного анализа;

  • математики;

  • искусственного интеллекта (формальные модели знаний);

  • основ проектирования программных систем;

  • психологии (при работе с экспертом);

  • лингвистики (при работе с текстами);

  • изобразительного искусства (при работе с графикой);

  • музыки (при работе с музыкальным материалом).

Знания для загрузки в базу знаний ЭС могут приобретаться несколькими способами:

  1. инженер знаний получает знания эксперта в процессе интенсивного интервью и механически переносит их в базу знаний;

  2. инженер знаний сам становится экспертом, полагаясь на собственный анализ фраз эксперта, выполняемый им в процессе общения с экспертом. Он кодирует знания эксперта на выбранном им языке описания;

  3. эксперт самостоятельно загружает базу знаний ЭС с помощью специальной программы, в какой-то мере исполняющей функции инженера знаний;

  4. специальная программа анализирует источник знаний (например, базу данных) и сама преобразует их в форму, пригодную для хранения в базе знаний ЭС;

  5. специальная программа, способная воспринимать и анализировать текстовый источник (например, книгу), структурирует полученную информацию и помещает ее в базу знаний ЭС.

Возможно (чаще всего встречается) комбинирование указанных выше способов приобретения знаний.

Долгое время в ЭС основное внимание уделялось проблеме извлечения знаний из экспертов, а не из баз данных (1, 2 способы, частично 3 способ).

В последнее время в связи с падением цен на процессоры с одновременным увеличением их быстродействия, распространением клиент -серверной архитектуры (возможность выполнять наиболее трудоемкие процедуры обработки данных на высокопроизводительном сервере) появилась возможность обработки огромных массивов информации и получили развитие 4, 5 способы приобретения знаний.

Новая технология, Knowledge discovery in databases (KDD) (дословно, «обнаружение знаний в базах данных») – аналитический процесс исследования человеком большого объема информации с привлечением средств автоматизированного исследования данных с целью обнаружения скрытых в данных структур или зависимостей. Предполагается полное или частичное отсутствие априорных представлений о характере скрытых структур и зависимостей. KDD включает предварительное осмысление и неполную формулировку задачи (в терминах целевых переменных), преобразование данных к доступному для автоматизированного анализа формату и их предварительную обработку, обнаружение средствами автоматического исследования данных (data mining) скрытых структур или зависимостей, апробация обнаруженных моделей на новых, не использовавшихся для построения моделей данных и интерпретация человеком обнаруженных моделей.

Data mining (DM) (дословно, «разработка данных») – автоматизированный процесс аналитического исследования больших массивов информации с целью выявления определенных закономерностей и систематических взаимосвязей между переменными, которые затем можно применить к новым совокупностям данных; получение ранее неизвестных, нетривиальных, практически полезных и доступных для интерпретации знаний, необходимых для принятия решений в различных сферах человеческой деятельности. К основным методам DM относятся:

  • статистические методы;

  • деревья решений;

  • алгоритмы ограниченного перебора;

  • нечеткая логика;

  • нейронные сети;

  • эволюционное программирование;

  • генетические алгоритмы;

  • системы рассуждений на основе аналогичных случаев;

  • индуктивное обучение;

  • визуализация данных.

Статистические методы поддерживают процессы классификации, кластеризации и выявления образцов и аномалий в данных и включают набор процедур для проведения кластерного, дискриминантного, дисперсионного и факторного анализа, многомерного шкалирования, различных видов регрессии и т.п.

Деревья решений разбивают данные на группы на основе значений тех или иных переменных, используя подход, напоминающий игру в “вопросы”. В результате получается иерархия операторов “ЕСЛИ —> ТО”, которые классифицируют данные. В настоящее время наблюдается повышение интереса к программным продуктам, применяющим деревья решений. В основном это объясняется тем, что многие коммерческие проблемы решаются ими быстрее, чем алгоритмами нейронных сетей. К тому же они более просты и понятны для пользователей. В то же время нельзя сказать, что деревья решений всегда действуют безотказно: для определенных типов данных, например, при обработке непрерывных величин, они могут оказаться неприемлемыми. Помимо того, набор операторов “ЕСЛИ -> ТО” иногда бывает столь же непонятным, как и нейронная сеть, особенно если список условий длинный и сложный.

Алгоритмы ограниченного перебора вычисляют частоты комбинаций простых логических событий в подгруппах данных. Примеры простых логических событий: X = a; X < a; X > a; a < X < b и др., где X — какой либо параметр, “a” и “b” — константы. Ограничением служит длина комбинации простых логических событий (у М. Бонгарда она была равна 3). На основании анализа вычисленных частот делается заключение о полезности той или иной комбинации для установления ассоциации в данных, для классификации, прогнозирования и пр.

Механизмы нечеткой логики обеспечивают представление и использование ненадежных и слабоформализованных данных.

Нейронные сети представляют собой совокупность связанных друг с другом узлов, получающих входные данные, осуществляющих их обработку и генерирующих на выходе некоторый результат. Между узлами видимых входного и выходного уровней может находиться какое-то число скрытых уровней обработки. Такая сеть способна обучаться. Для нее имеется специальный набор данных, совокупность входных значений которых порождает заранее установленное множество выходных. Для каждого сочетания обучающих данных на входе выходные значения сравниваются с известным результатом. Если они различаются, то вычисляется корректирующее воздействие, учитываемое при обработке в узлах сети. Указанные шаги повторяются, пока не выполнится условие останова, например необходимая коррекция не будет превышать заданной величины. Нейронные сети реализуют непрозрачный процесс обучения и поиска решения. Это означает, что построенная в итоге модель не имеет четкой интерпретации, т.е. далеко не всегда понятно, на основе каких логических выводов получаются результаты.

В подходе, именуемом эволюционным программированием, гипотезы о виде зависимости целевой переменной от других переменных формулируются в виде программ на некотором внутреннем языке программирования. Процесс построения программ строится как эволюция в мире программ (этим подход немного похож на генетические алгоритмы). Когда система находит программу, более или менее удовлетворительно выражающую искомую зависимость, она начинает вносить в нее небольшие модификации и отбирает среди построенных дочерних программ те, которые повышают точность. Таким образом, система "выращивает" несколько генетических линий программ, которые конкурируют между собой в точности выражения искомой зависимости.

Другое направление эволюционного программирования связано с поиском зависимости целевых переменных от остальных в форме функций какого-то определенного вида. Например, в одном из наиболее удачных алгоритмов этого типа — методе группового учета аргументов (МГУА) зависимость ищут в форме полиномов.

Первый шаг при построении генетических алгоритмов — это кодировка исходных логических закономерностей в базе данных, которые именуют хромосомами. Весь набор таких закономерностей называют популяцией хромосом. Далее для реализации концепции отбора вводится способ сопоставления различных хромосом. Популяция обрабатывается с помощью процедур репродукции, изменчивости (мутаций), генетической композиции. Эти процедуры имитируют биологические процессы. Наиболее важные среди них: случайные мутации данных в индивидуальных хромосомах, переходы (кроссинговер) и рекомбинация генетического материала, содержащегося в индивидуальных родительских хромосомах (аналогично гетеросексуальной репродукции), и миграции генов. В ходе работы процедур на каждой стадии эволюции получаются популяции со все более совершенными индивидуумами.

Генетические алгоритмы удобны тем, что их легко распараллеливать. Например, можно разбить поколение на несколько групп и работать с каждой из них независимо, обмениваясь время от времени несколькими хромосомами.

Генетические алгоритмы имеют ряд недостатков. Критерий отбора хромосом и используемые процедуры являются эвристическими и далеко не гарантируют нахождения “лучшего” решения. Как и в реальной жизни, эволюцию может “заклинить” на какой-либо непродуктивной ветви. И, наоборот, можно привести примеры, как два неперспективных родителя, которые будут исключены из эволюции генетическим алгоритмом, оказываются способными произвести высокоэффективного потомка. Это особенно становится заметно при решении высокоразмерных задач со сложными внутренними связями.

Идея систем рассуждений на основе аналогичных случаев (case-based reasoning - CBR) заключается в следующем. Для того чтобы сделать прогноз на будущее или выбрать правильное решение, эти системы находят в прошлом близкие аналоги наличной ситуации и выбирают тот же ответ, который был для них правильным. Поэтому этот метод еще называют методом "ближайшего соседа" (nearest neighbour). В последнее время распространение получил также термин memory based reasoning, который акцентирует внимание, что решение принимается на основании всей информации, накопленной в памяти.

Системы CBR показывают неплохие результаты в самых разнообразных задачах. Главным их минусом считают то, что они вообще не создают каких-либо моделей или правил, обобщающих предыдущий опыт, — в выборе решения они основываются на всем массиве доступных исторических данных, поэтому невозможно сказать, на основе каких конкретно факторов CBR системы строят свои ответы.

Другой минус заключается в произволе, который допускают системы CBR при выборе меры "близости". От этой меры самым решительным образом зависит объем множества прецедентов, которые нужно хранить в памяти для достижения удовлетворительной классификации или прогноза.

Индуктивное обучение это процесс получения знаний путем выполнения индуктивного вывода из фактов, предоставляемых учителем или окружением. Существуют два различных способа индуктивного обучения: обучение по примерам, использующее "учителя" и обучение по наблюдениям (концептуальная кластеризация), которое имеет дело только с описанием исследуемой области и, возможно, ее контекстом.

Программы визуализации данных обеспечивают выявление в БД образцов, аномалий и т. д.; они не являются в полном смысле средствами анализа информации, поскольку только представляют ее пользователю в графическом виде. Тем не менее визуальное представление сразу нескольких переменных (например, пяти) достаточно выразительно обобщает очень большие объемы данных.