Теория нечетких множеств, основные идеи которой были предложены американским математиком Лотфи Заде более 35 лет назад, позволяет описывать качественные, неточные понятия и наши знания об окружающем мире, а также оперировать этими знаниями с целью получения новой информации. Основанные на этой теории методы построения информационных моделей существенно расширяют традиционные области применения компьютеров и образуют самостоятельное направление научно-прикладных исследований, которое получило специальное название – нечеткое моделирование.
Нечеткая логика более естественно описывает характер человеческого мышления и ход его рассуждений, чем традиционные формально-логические системы. Именно поэтому изучение и использование математических средств для представления нечеткой информации позволяет строить модели, которые наиболее адекватно отражают различные аспекты неопределенности, постоянно присутствующей в окружающей нас реальности [1].
Нечеткие модели, как правило, удобно представлять в виде нечетких сетей – сетевых структур, элементы или совокупности которых реализуют различные компоненты нечетких моделей и этапы нечеткого вывода. Одним из наиболее результативных примеров объединения формализмов модели и сети являются искусственные нейронные сети [2].
В данной работе будут использованы нейронные нечёткие сети, в которых на основе положений теории нечетких множеств осуществляется включение нечеткости в различные компоненты нейронных сетей [2], в частности в функции активации нейронов.
В работе представлена модель нейронечеткой сети, позволяющей изменять функции активации нечётких нейронов в соответствии с выбранной нечёткой алгеброй, и исследовать эффективность решения задачи классификации в зависимости от выбора той или иной алгебры.
В качестве модели сети была выбрана модификация нечёткой продукционной сети Ванга-Менделя с несколькими выходами.
Структура сети Ванга-Менделя
Рассмотрим традиционную структуру нечёткой сети Ванга-Менделя в классической топологии с одним выходом.
Рисунок 1 – Структура нечёткой нейронной сети Ванга-Менделя
Первый слой выполняет фуззификацию входных переменных xll=1,2,…,L, определяя для каждого i-го правила вывода значение коэффициента принадлежности μAixl в соответствии с применяемой функцией фуззификации. Это параметрический слой с параметрами (cli,σli,bli), подлежащими адаптации в процессе обучения.
Второй слой выполняет агрегирование значений активации условия, определяя результирующее значение коэффициента принадлежности wi=μAix для вектора x. Этот слой непараметрический.
Третий (линейный) слой осуществляет агрегирование N правил вывода (первый нейрон) и генерацию нормализующего сигнала (второй нейрон). Это параметрический слой, в котором адаптации подлежат пороговое значение v0 и линейные веса vi для i=1,2,…,N, интерпретируемые как центр ci функции принадлежности следствия i-го нечеткого правила вывода.
Четвертый слой состоит из одного выходного нейрона и выполняет нормализацию, формируя выходной сигнал yx. Это непараметрический слой [3].
Таким образом, нейронная сеть реализует функцию аппроксимации, которую можно записать в виде:
yx=1i=1Nl=1LμAixl∙v0+i=1Nvi∙l=1LμAixl |
Такая модель сети Ванга-Менделя способна эффективно решать задачу классификации при небольшом числе распознаваемых классов, так как в структуре сети есть только один выход. Поэтому была разработана модель сети с несколькими выходами, предложенная в [4], однако и она не позволяла изменять интерпретацию нечётких операций.
Модификации структуры с несколькими выходами
На рисунке 2 приведена предлагаемая для данной цели структура нейронной сети Ванга-Менделя с двумя входами, тремя правилами и двумя выходами. Данную структуру нетрудно обобщить и на произвольное число выходов.
Рисунок 2 – Структура нечёткой нейронной сети Ванга-Менделя с несколькими выходами
В первом слое данной сети выполняется фуззификация входного вектора x.
Второй слой выполняет агрегирование значений активации условия, используя одну из алгебр [5]:
a⊗b=a⋀b – конъюнкция Гёделя
a⊗b=a⋅b – конъюнкция Гогена
a⊗b=0⋁(a+b-1) – конъюнкция Лукасевича
В третьем слое заложена нечеткая импликация:
a→b=1, если a