Обучение на основе нейронных сетей.
Обучение на основе нейронных сетей, так же как и обучение на основе генетических алгоритмов, используется для нечеткой модели выбора операторов агрегирования информации. Отличие в применимости этих подходов состоит в том, что для данного подхода не требуется выполнения свойств монотонности, коммутативности и ассоциативности оператора агрегирования информации.
Здесь также, как и в рамках нечеткого подхода, предполагается, что известны значения на некоторых наборах значений . Эта информация представляется в виде логических высказываний вида “Если и ” для всех известных наборов
Задачу выбора адекватного ОАИ можно сформулировать как задачу его распознавания.
Будем считать, что объект описывается конечным набором признаков . Каждому признаку ставится в соответствие множество его “физических” значений и множество лингвистических значений (1 ≤ i ≤ n). Каждому такому лингвистическому значению ставится в соответствие функция принадлежности в универсальном множестве . Пусть, кроме этого, есть K классов . Информация о классах в терминологии [2] задана в виде совокупности r правил:
где объект О (правая часть правил) имеет значения признаков, перечисленных в левой части правил.
На вход классификатора подается вектор вещественных чисел (“физические” значения признаков объекта). Выходом является вектор , описывающий принадлежность объекта классам .
Для решения данной задачи использовалась следующая нейронная сеть
Входной слой состоит из нейронов (то есть каждому возможному значению подчиненной вершины соответствует один нейрон слоя). Нейроны во втором слое соответствуют четким правилам, задаваемым экспертом, то есть таким правилам, которые однозначно относят объект к тому или иному классу. Эти правила соответствуют строкам таблицы 1. Нейроны в третьем слое соответствуют значениям признака в вершине . Все нейроны первого слоя соединены с нейронами второго слоя, и все нейроны второго слоя - с нейронами третьего слоя.
Начальные веса задаются следующим образом. Нейроны первого слоя соединяются с нейронами во втором слое весом равным единице, если соответствующее правило содержит в себе это значение входа. То же самое верно и для весов идущих к последнему слою: если правило относит объект к тому или иному значению признака в вершине , то вес между соответствующими нейронами будет равен единице. Оставшиеся веса инициализируются маленькими числами порядка 0.1 (это необходимо, для того чтобы у них была возможность обучаться).
Функционирование происходит по следующим правилам. Для каждой входной переменной вычисляется степень принадлежности ее физического значения к множествам значений признака (это значение соответствующей функции принадлежности). Эти числа подаются на вход первого слоя. Нейроны во втором и третьем слоях вычисляют выход по формуле
Начальная обучающая выборка состоит из правил, задаваемые экспертом (аналог таблицы).
Таким образом, структура сети и начальной обучающей выборки моделирует ситуацию, в которой множества значений входных переменных определены четко.
Процедура обучения нейронной сети выглядит следующим образом.
1. Выбирается вектор Tk из обучающей выборки (1≤ k ≤ t) и подается на вход первого слоя;
2. По описанным выше правилам вычисляются выход второго слоя и выход сети ;
3. Вычисляется вектор ошибок
4. Вычисляется вектор ошибок второго слоя ,
5. Веса сети корректируются по формуле
Обучение происходит до тех пор, пока среднеквадратичная ошибка по всем элементам выборки не станет меньше заранее заданной величины
Вопрос6