Научная статья на тему 'Оптимизация баз знаний экспертных систем с применением нечётких нейронных сетей'

Оптимизация баз знаний экспертных систем с применением нечётких нейронных сетей Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
201
31
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Бухнин А. В., Бажанов Ю. С.

В статье рассматривается проблема создания и структурно-параметрической оптимизации баз знаний экспертных систем. Описывается подход к ее решению, основанный на применении современных технологий искусственного интеллекта: нечёткой логики, искусственных нейронных сетей и эволюционных алгоритмов.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Бухнин А. В., Бажанов Ю. С.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

EXPERT SYSTEM KNOWLEDGE BASE OPTIMIZATION USING FUZZY NEURAL NETWORKS

The article deals with problem of creation and optimisation of expert system knowledge base. It describes an approach based on modern artificial intelligence technologies: fuzzy logic, artificial neural networks and evolutionary algorithms.

Текст научной работы на тему «Оптимизация баз знаний экспертных систем с применением нечётких нейронных сетей»

М.В. Лешин

Многокритериальная задача о ранце с дополнительными диапазонными ...

Список L4: ({0},(0,0,0),(0,0)), ({*,},(5,3,1),(2,1)), ({*2},(2,4,1),(1,4)),

({*,,х2},(7,7,2),(3,5)),({л:,,*3},(9,4,1),(5,3)), ({х4 },(6,2,1),(4,2)),

({*2 ’ *<»} > (8,6,2), (5,6))

Среди оценок (0,0,0), (5,3,1), (2,4,1), (7,7,2), (9,4,1), (6,2,1), (8,6,2) v-эффективными являются (7,7,2), (9,4,1), (8,6,2).

Список литературы

\.Веллман Р., Дрейфус С. Прикладные задачи динамического программирования. - М.: Наука, 1965.

2. Корбут А.А., Финкельштейн Ю.Ю. Дискретное профаммирование. - М.: Наука, 1969. 368 с.

3. Marlello S., Toth P. Knapsack Problems. — John Wiley & Sons, 1990.

4. Pisinger D. Core Problems in Knapsack Algorithms. Operations Research 47,1999, pp. 570-575.

5. БатищевД.И., КоганД.И., Лейкин MB. Вопросы синтеза совокупностей эффективных оценок в многокритериальной задаче о ранце Н Математическое моделирование и оптимальное управление: Вестник Нижегородского университета, вып.1 (25), 2002, с.21 i -223

6. Подиновский В.В., Ногин В.Д. Парето-оптимальиые решения многокритериальных задач.

- М.: Наука. 1982.

7. Ьатищес Д.И., Коган Д. И. Вычислительная сложность экстремальных задач переборного тина. Н.Новгород: Издательство Нижегородского университета, 1994.

8. Гэри М, Джонсон Д. Вычислительные машины и трудноретаемые задачи. М.: Мир. 1982. 416 с.

9. Меламед И.И., Сигал И.Х., Владимирова Н.Ю. Исследование линейной свертки критериев в бикритериальной задаче о ранце // Журнал вычислительной математики и математической физики. 1999. Т.39. №5. С.753-758.

10. Пападшлитриу X.. Стай глии К. Комбинаторная оптимизация, Алгоритмы и сложность.

- М.: Мир. 1985.

Нижегородский государственный университет Им. Н.И.Лобачевского.

603600. Нижний Новгород, пр. Гагарина, 23, e-mail: maxleikin@mail.ru.

MULTICRITERIA KNAPSACK PROBLEM WITH SPECIAL TYPES OF CRITERIONS

M. V. Lei kin

The algorithms which allows to synthesize the full set of effective estimators in mullicrileria multidimensional knapsack problem with special types of criterions: ranged and pointed cri-lerions are represented in the article. These algorithms based on generalization of multicriteria dynamic programming. The evaluations of computational complexity of stated algorithms are given.

УДК 519.72

ОПТИМИЗАЦИЯ БАЗ ЗНАНИЙ ЭКСПЕРТНЫХ СИСТЕМ С ПРИМЕНЕНИЕМ НЕЧЁТКИХ НЕЙРОННЫХ СЕТЕЙ

А. В. Бухнин, Ю. С. Бажанов

В статье рассматривается проблема создания и структурно-параметрической оптимизации баз знаний экспертных систем. Описывается подход к её решению, основанный на применении современных технологий искусственного интеллекта: чечёткой логики, искусственных нейронных сетей и эволюционных алгоритмов.

Введение

Экспертные системы нашли применение во многих областях человеческой деятельности: промышленности, медицине, экономике и т.д. Создание эффективной системы -дорогостоящий и продолжительный процесс, требующий привлечения специалистов различных направлений: программистов, инженеров по знаниям, экспертов в прикладной области. Множество проблем возникает при наполнении базы знаний системы правилами. Необходимо взаимопонимание между экспертом и инженером по знаниям. Не всегда специалист может объяснить, как он решает задачи в своей области.

Между тем, существуют прикладные области, по которым собрано большое количество статистической информации. Эти данные могут быть использованы для генерации правил или для оптимизации имеющейся базы знаний. Одно из решений данной задачи- применение искусственной нейронной сети, способной обучаться на примерах. Однако необходимо разработать способ формирования начальной сети из базы знаний и обратного преобразования оптимизированной сети в набор правил, а для стандартных нейросетей эта проблема не имеет простого решения. В работах 16), [7) рассматривается задача получения явных знаний из данных с применением нейронных сетей. Авторы предлагают с помощью так называемой процедуры "контрастирования" упрощать сеть, последовательно удаляя малозначимые нейроны и синапсы, приводя параметры нейросети к небольшому набору выделенных значений. В результате должна получиться логически прозрачная сеть, проанализировав которую, эксперт сможет сформулировать набор продукционных правил, описывающих решение задачи. Данный этап (вербализация знаний) описан авторами подхода только для случая крайних значений весов синапсов, что характерно для очень простых задач. В большинстве случаев параметры обученной сети принимают произвольные значения из возможного диапазона. При этом человеку крайне затруднительно дать логическую интерпретацию нелинейному преобразованию взвешенной суммы входных сигналов, реализуемому стандартным нейроном.

Выходом может быть использование нечёткой нейронной сети ([4]. [5]). Эта сеть состоит из нечётких нейронов, которые играют роль продукционных правил в сети логического вывода экспертной системы. Практически, нечёткая нейросеть и представляет собой сеть логического вывода, следовательно, преобразование "база знаний -> сеть" и обратное выполняются элементарно. Полученная нейросеть будет представлять собой многослойную синхронную сеть с перекрёстными связями.

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

Следует отметить, что в работах [8], [9] и [10] освещается задача извлечения знаний из данных при помощи самоорганизующихся нейронных сетей с логическими элементами в роли нейронов (логических сетей). Однако подход, основанный на применении нечётких нейронов, потенциально обладает большей гибкостью и далее рассматривается именно он.

Математическая модель нечёткого нейрона

Если интерпретировать входные сигналы нейрона как коэффициенты уверенности (КУ) посылок, а выходной - как КУ гипотезы, то можно считать, что при работе нейрона происходит логический вывод. Исходя из опыта построения обычных экспертных систем ([2], [3]) и учитывая, что нейроны играют роль продукционных правил, можно сформировать набор необходимых типов нейронов. Обязательными являются

нечёткие нейроны, реализующие комбинацию посылок по И и по ИЛИ. При этом посылка может браться с отрицанием, а также иметь некий вес, обуславливающий степень её влияния на заключение. Сам нейрон также должен иметь вес, который можно интерпретировать как степень доверия к правилу. Для применения аппарата нечёткой логики необходимо преобразование КУ (входных и выходных сигналов) в значение функции принадлежности некоторого нечёткого множества. Для этого на множестве значений КУ (интервал [0; 1]) задаётся нечёткое множество "Факт истинный" с функцией принадлежности:

11(КУ) = КУ (1)

Приведём один из возможных вариантов математической модели нечёткого нейрона типа "ИЛИ":

у = м■ тах(5(х!) ■ ■ к,,...,5(хп) ■-*>„), (2)

где у выход нейрона; и; вес нейрона; х,- входной сигнал; н>,- вес синапса; Б(х)-функция, возвращающая 1-х, если посылка взята с отрицанием и х в обратном случае.

Для нечёткого нейрона типа "И":

у = н'-тт^х^ + ы{,8(х2) + м2,...,8(хп) + м,,), (3)

где + означает операцию алгебраической суммы (х, + х2 = х, + х2 — я, • х2).

Подобные модели нечётких нейронов приводятся в [4].

Описание процесса создания и оптимизации базы знаний

Далее приводится описание процесса создания базы знаний на примере построения экспортной системы для прогнозирования риска заболевания кариесом беременных женщин. В качестве исходных данных имелись результаты обследования 97 пациенток (20 параметров, 1 зависимая переменная, принимающая одно из грех значений).

На основе анализа литературы и после применения статистических методов обработки данных были отобраны 6 прогностических факторов, наиболее сильно влияющих на активность кариеса зубов: уровень резистентности по Недосеко В.Б., резистентность эмали (КОСРЭ), вязкость, pH, МПС, буферная ёмкость. В дальнейшем эксперименты показали, что необходимо увеличить их число до 8 (добавились возраст пациентки и резус фактор крови).

Эксперт на основе своих знаний с использованием информации из литературных источников по предметной области произвел разбивку входных переменных на небольшое число интервалов (3 - 6 для одной переменной). Попадание значения параметра в конкретный интервал является элементарным событием, которое может входить в условную часть продукционных правил. Некоторые переменные затруднительно разбить таким образом, поэтому далее была использована программа \VizWhy предприятия \VizSoft (эта система предназначена для поиска логических закономерностей в данных методом огрниченного перебора, её описание приводится в [1]). В ней происходила автоматическая сегментация параметров, результаты которой корректировались экспертом.

На основе априорной информации о предметной области (знания эксперта, литературные источники) был сформирован начальный набор логических правил. Он был дополнен наиболее значимыми и безошибочными правилами, найденными системой \VizWhy (всего получилось порядка 20 правил). Система WizWhy имеет ряд недостатков, из-за которых она может использоваться лишь как вспомогательное средство:

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

- отсутствие иерархии правил, что приводит к громоздкости правил и увеличению их числа;

- ориентированность на большие объёмы обучающей выборки.

Затем была проведена структурно-параметрическая оптимизация набора правил (базы знаний) в оболочке для построения нечётких экспертных систем. Оптимизация происходила с применением эволюционных алгоритмов (более подробное описание структурной и параметрической оптимизации приводится в данной статье ниже). В начале этой процедуры число правил автоматически увеличилось до 50-60. По достижении предельных значений ошибки на обучающей выборке (когда ошибка перестала уменьшаться) произошло упрощение базы знаний за счёт отбрасывания незначащих правил и связей между правилами (посылок). В результате был получен набор из примерно 40 правил. В начале работы, когда успешной оптимизации не происходило, производилось уточнение сегментации и добавление новых входных параметров.

Далее, полученная база знаний была проанализирована с целью отбрасывания некоторых правил, не отражающих тенденцию или противоречащих знаниям о предметной области (такие правила обычно охватывают 1 - 2 случая из обучающего множества). Данная процедура позволяет избежать "переобучения” системы (то есть запоминания конкретных примеров вместо нахождения тенденции) в условиях малой выборки. При этом традиционные способы борьбы с "переобучением"- использование тестовой и контрольной выборок - не могут быть применены.

Уменьшенная база знаний, состоявшая из 31 правила, ошибалась дополнительно в нескольких случаях по сравнению с предыдущей, ко не содержала заведомо противоречивых правил. Ошибочно решаемых примеров 15 из 97, то есть точность прогноза составила 85%. Анализ ошибок приводит к выводу о необходимости введения дополнительных входных параметров или проведения более подробной сегментации для уменьшения ошибочности прогноза, но это ухудшит логическую прозрачность прогностической модели. База знаний содержит 4 уровня иерархии логических правил. Результаты прогноза, который строится на основе этих правил, эксперта удовлетворяют. Как минимум одно правило, отражающее явную тенденцию, вызвало затруднения при оценке экспертом. Однако оно не вступает в противоречие с априорными знаниями по предметной области, т.е. была найдена скрытая зависимость.

Алгоритм структурной оптимизации сети логического вывода

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

Затем исходная совокупность особей дополняется определённым числом "мутантов" ("мутант"- выбранная случайным образом и частично изменённая сеть). Тип применяемой мутации зависит от степени безошибочности сети: если сеть часто ошибается, то её структура усложняется путём добавления нейронов и связей. Если же сеть достаточно хорошо решает примеры, то её структура упрощается с целью получения более логически прозрачной сети.

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

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

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

1) ЕСЛИ е! И е2 И еЗ ТО е5;

2) ЕСЛИ е! И е2 И е4 ТО еб.

Условные части обоих правил содержат конъюнкцию посылок е/ и е2. Очевидно, это говорит о том, что совместное наступление соответствующих событий является закономерным. Поэтому стоит ввести ещё одно правило (узел сети), отвечающее за промежуточный вывод. Изменённая база знаний выглядит так:

1) ЕСЛИ е/ И е2 ТО <?7;

2) ЕСЛИ е7 И еЗ ТО е5,

3) ЕСЛИ е7 И е4 ТО еб.

Вероятно, эксперт сможет найти подходящее название для ситуации "е1 И е2", которое будет использовано при вербализации сети. Т.о. логическая прозрачность сети повысилась. Однако, число узлов после улучшения сети увеличилось с 6 до 7 ири неизменном количестве связей, т.е. стремление уменьшать число узлов и связей НС является оптимальным вариантом. Преимущества описанного подхода ещё очевиднее проявляются, если есть возможность выделить в дополнительный узел объединение нс двух, а трёх и более посылок или в случае использования промежуточного вывода в большем числе правил. Аналитически критерий сложности (0 может быть выражен формулой:

где /V- число узлов в сети, и . —- число исходящих связей I-го узла. Для рассмотренной исходной сети () = 10, а после оптимизации Q = 8.

В работе [6], посвящённой построению логически прозрачных нейронных сетей, предлагается ограничивать допустимое число входных сигналов каждого нейрона. Например, вводится требование, чтобы все узлы имели нс более трёх входных связей. Оценим эффективность данного подхода при структурной оптимизации нечёткой сети логического вывода. Рассмотрим сеть, имеющую четыре входа и один выход, которой соответствует единственное правило:

1) ЕСЛИ в/ И е2 И еЗ И е4 ТО е5.

Изменим её структуру в соответствии с введённым требованием:

1) ЕСЛИ е! И е2 И еЗ ТО еб;

2) ЕСЛИ еб И с4 ТО е5.

В результате увеличилось число узлов и связей, а «место выделения устоявшихся сочетаний посылок произошла случайная группировка входных сигналов. Это объединение не отражает реальные тенденции из прикладной области и может лишь запутать эксперта, оценивающего полученную сеть. Очевидно, что логическая прозрачность сети понизилась. Этот вывод поддерживает и изменение значения предложен-

(4)

ного выше критерия оптимальности с 4 до 5, то есть ограничение числа входных связей узлов при оптимизации сетей логического вывода не имеет смысла.

На заключительном этапе итерации эволюционного алгоритма из упорядоченной объединённой совокупности, содержащей особи текущего поколения и новые особи-"мутанты", формируется следующее поколение структурной эволюции. При этом заданное число "элитных" особей автоматически переводится в следующее поколение, а остальные члены популяции выбираются с применением рангового вероятностного отбора.

Критерием окончания эволюции служит достижение предельного числа поколений или повторение характеристик лучшей особи в течение определённого числа итераций.

Опыт показал, что в процессе эволюции структура сети сначала сильно усложняется, затем, по достижении допустимой величины ошибки, относительно быстро отбрасываются все малозначимые нейроны и связи. После окончания эволюции эксперту предоставляется несколько лучших сетей, из которых он может выбрать подходящую. Эта сеть преобразуется в набор правил, который можно корректировать и дополнять.

Генетический алгоритм параметрической оптимизации

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

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

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

Критерием окончания эволюции служит достижение предельного числа поколений или повторение характеристик лучшей особи в течение определённого числа итераций.

Перечислим все параметры приведённого генетического алгоритма: размер популяции, процент (от размера популяции) мутантов (число потомков в свою очередь определяется числом мугантов; отметим, что в результате каждой операции скрещивания получается два потомка), процент элитных особей, предельное число поколений и максимально допустимое количество повторений характеристик лучшей особи. Эксперименты на простых тестовых задачах показали, что оптимальное решение находится за 30-100 итераций при размере популяции 50-110 особей. Причём доля мутаций может варьироваться от 5% до 60%, а элитных особей - от 10% до 50% с сохранением примерно одинаковой успешности алгоритма. С усложнением решаемых задач необходимо увеличивать размер популяции, предельное число поколений и максимально допустимое количество повторений характеристик лучшей особи.

Список литературы

1 .Дюк В., Самойленко A. Data mining: учебный курс. СПб.: Питер, 2001. 368 с.

2. Корнеев В В., Гареев А. Ф., Васютин С.В., Райх В.В. Базы данных. Интеллектуальная об-работка информации. М.: Нолидж, 2000. 496 с.

3. Джексон П. Введение в экспертные системы.: Пер. с англ.: Уч. пос. М.: Издательский дом "Вильямс", 2001. 624 с.

4. Круглов В.В., Борисов В.В. Искусственные нейронные сети. Теория и практика. М.; Горячая линия - Телеком, 2001. 382 с.

5. Осовский С. Нейронные сети для обработки информации.: Пер. с польского. М.: Финансы и статистика, 2002. 344 с.

6. Горбанъ А.Н., Дунин-Барковский B.JJ., Кирдин А.Н. и др. Нейроинформатика. Новосибирск: Наука. Сибирское предприятие РАН, 1998. 296 с.

7. Горбань А Н.. Миркес Е.М. Логически прозрачные нейронные сети, Нейроинформатика и ее приложения: тезисы докладов 111 Всеросийского семинара , Красноярск: Изд-во КГТУ, 1995. С. 32.

8. Щетинин В.Г. Многослойная самоорганизация нейронных сетей оптимальной сложности // Автоматика и вычислительная техника. Рига. 1998. №4. С. 30-37.

9. Щетинин В.Г., Костюнин А.В. Принятие решений на нейронных сетях оптимальной сложности // Автоматизация и современные технологии. М. 1998. №4. С. 38—43.

10. Щетинин В.Г., Столярова О.В., Костюнин А.В. Синтез решающих правил на нейронных сетях для управления производством // Приборы и системы управления. М. 1999. №1. С. 72-77.

Нижегородский государственный технический университет.

603600, Нижний Новгород, ул. Минина, 24, e-mail: bav@mail.nnov.ru

EXPERT SYSTEM KNOWLEDGE BASE OPTIMIZATION USING FUZZY NEURAL NETWORKS A. V. Bukhnin, Y. S. Bazhanov

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

The article deals with problem of creation and optimization of expert system knowledge base.

It describes an approach based on modern artificial intelligence technologies: fuzzy logic, artificial neural networks ami evolutionary algorithms.

УДК 519.8

АЛЬТЕРНАТИВНОЕ РАСПРЕДЕЛЕНИЕ РЕСУРСОВ В СЕТЕВЫХ КАНОНИЧЕСКИХ СТРУКТУРАХ

Д. В. Вяхирев

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

Введение

Разнообразие производственных приложений задач распределения ресурсов в сетевых канонических структурах делает эти задачи очень актуальными. Однако существует целый ряд задач, которые по своему «внутреннему содержанию» и интерпретации очень похожи на задачи распределения ресурсов, но обладают существенными качественными особенностями, отражающими их специфику. Из-за этих особенностей такие задачи не могут быть поставлены, как задачи сетевого планирования в типичной постановке (см. [1]).

i Надоели баннеры? Вы всегда можете отключить рекламу.