Нечеткие нейронные сети
Содержание:
Введение.
1.Сеть Такаги-Сугено-Канга.
2.Сеть Ванга-Менделя.
3.Гибридный алгоритм обучения.
4.Нечеткие сети с самоорганизацией.
5.Алгоритм нечеткой самоорганизации C-means.
6.Алгоритм пикового группирования.
7.Алгоритм разностного группирования.
8.Заключение.
Список литературы.
Введение.
Сети данного типа получили
свое название в силу того, что для
аппроксимации зависимости
Нечеткие нейронные сети (fuzzy-neural networks) осуществляют выводы на основе аппарата нечеткой логики, однако параметры функций принадлежности настраиваются с использованием алгоритмов обучения НС. Поэтому для подбора параметров таких сетей применим метод обратного распространения ошибки, изначально предложенный для обучения многослойного персептрона. Для этого модуль нечеткого управления представляется в форме многослойной сети. Нечеткая нейронная сеть как правило состоит из четырех слоев: слоя фазификации входных переменных, слоя агрегирования значений активации условия, слоя агрегирования нечетких правил и выходного слоя.
Наибольшее распространение в настоящее время получили архитектуры нечеткой НС вида ANFIS и TSK. Доказано, что такие сети являются универсальными аппроксиматорами.
Быстрые алгоритмы обучения и интерпретируемость накопленных знаний – эти факторы сделали сегодня нечеткие нейронные сети одним из самых перспективных и эффективных инструментов мягких вычислений.
1.Сеть Такаги-Сугено-Канга
В сети Такаги-Сугено-Канга (сокращенно, TSK) выходной сигнал рассчитывается с помощью выражения
y(X)=sum[i=1:M](wi*yi (X))/
где yi(X)=pi0+sum[j=1:N](pij*x
Веса wi компонентов рассчитываются по следующей формуле (с использованием рациональной формы функции Гаусса)
wi=prod[j=1:N](wij(xj))=prod[
Приведенным выражениям соответствует пятислойная нейронная сеть, структурная схема которой представлена ниже.
Первый слой содержит N*M узлов, каждый из которых реализует расчет функции Гаусса с параметрами cij, sij и bij. С точки зрения нечетких систем это слой фуззификации входных переменных. Слой называется параметрическим, поскольку в процессе обучения сети подбору подлежат параметры этого слоя.
Второй слой параметров не содержит. С точки зрения нечетких систем это слой агрегирования левых частей продукций.
Третий слой - генератор (полиномиальных) функций TSK yi(X) и их умножитель на весовой коэффициент wi. Это параметрический слой, в котором в процессе обучения сети адаптации подвергаются коэффициенты pij, i=1,2 ,..., M, j=0,1 ,..., N. Общее количество коэффициентов pij в сети равно M*(N+1).
Четвертый слой составляют два нейрона-сумматора. Первый ряссчитывает взвешенную сумму сигналов yi(X), а второй - сумму весов wi, i=1,2 ,..., M. Это непараметрический слой.
Последний, пятый, слой осуществляет нормализацию весов. Это также непараметрический слой.
Из описания сети TSK следует, что она содержит два параметрических слоя (первый и третий), параметры которых подлежат подбору в процессе обучения. Параметры первого слоя будем называть нелинейными, так как они относятся к нелинейной функции, а параметры третьего слоя - линейными.
Общее количество параметров (линейных и нелинейных) сети TSK равно
M*3*N+M*(N+1)=M*(4*N+1).
Во многих практических приложениях
это чрезмерная величина, поэтому
часто для входных переменных x
2.Сеть Ванга-Менделя
В сети данного типа выходной сигнал рассчитывается с помощью выражения
y(X) = sum[i=1:M](ci*wi)/sum[i=1:M](w
= sum[i=1:M](ci*prod[j=1:N](muij
где ci - весовой коэффициент (с точки зрения нечетких систем это центр функции принадлежности правой части продукции), muij() - функция Гаусса (в экспоненциальном или рациональном виде) с параметрами центра cij, ширины sij и формы bij (с точки зрения нечетких систем muij() - функция принадлежности к нечеткому множеству).
Легко заметить, что выражение для y(X) в сети Ванга-Менделя является частным случаем аналогичного выражения в сети TSK, если в последней принять yi(X)=ci. Поэтому сеть Ванга-Менделя проще и имеет следующую трехслойную структуру.
В данной сети параметрическими являются первый и третий слои. Первый содержит M*N*3 нелинейных параметров функции Гаусса, а третий - M линейных параметров ci.
Нечеткие нейронные сети (как Ванга-Менделя, так и TSK) могут быть обобщены на случай многих выходных переменных. Их обучение, так же как и классических сетей, может проводиться как с учителем, так и без оного. Обучение с учителем основано на минимизации целевой функции, определяемой с использованием эвклидовой нормы
E=(1/2)*sum[k=1:p]((y(Xk)-dk)2
Обучение без учителя основано на самоорганизации сети, обеспечивающей кластеризацию входных данных.
3.Гибридный алгоритм обучения
Данный алгоритм применим к обеим описанным выше структурам, но рассмотрим его касательно сетей TSK, как более общих. Гибридный алгоритм обучения нечетких сетей можно считать вариантом гибридного алгоритма обучения радиальных сетей.
Алгоритм реализуется чередованием двух этапов:
при зафиксиронных значениях
нелинейных параметров cij, sij и bij перв
при зафиксиронных значениях
линейных параметров pij третьего
слоя уточняются нелинейные параметры cij, sij и bij перво
Этап 1. На данном этапе обучения нелинейные параметры фиксированы. Выходной сигнал определяется как
y(X)=sum[i=1:M](w'*(pi0+sum[j=
где
w'=vi=prod[j=1:N](muij(xj))/
Для K обучающих выборок <Xk,dk>, k=1, 2 , ..., K, получаем систему K линейных уравнений
A*P=D,
где P=[p10, p11, ..., p1N, ..., pM0, pM1, ..., pMN]T - вектор весов третьего слоя сети, а D=[d1, d2, ..., dk]T - вектор ожидаемых значений, составленный из всех K обучающих выборок. Матрица A представлена ниже:
v11 |
v11*x11 |
... |
v11*x1N |
... |
v1M |
v1M*x11 |
... |
v1M*x1N |
|
v21 |
v21*x21 |
... |
v21*x2N |
... |
v2M |
v2M*x21 |
... |
v2M*x3N |
|
. |
. |
. |
. |
. |
. |
. |
. |
. |
vk1 |
vk1*xk1 |
... |
vk1*xkN |
... |
vkM |
vkM*xk1 |
... |
vkM*xkN |
Количество строк K матрицы A значительно больше количества ее столбцов M*(N+1). Решение этой системы линейных алгебраических уравнений может быть получено за один шаг следующим образом:
P=A+*D,
где A+ - псевдоинверсия матрицы A.
Этап 2. Здесь фиксируются значения коэффициентов полиномов третьего слоя и осуществляется уточнение (обычно многократное) коэффициентов функции Гаусса для первого слоя сети стандартным методом градиента:
ck+1ij=ckij-nuc*дEk/дckij,
sk+1ij=skij-nus*дEk/дskij,
bk+1ij=bkij-nub*дEk/дbkij,
где k - номер очередного цикла обучения ( в режиме "онлайн" он совпадает с номером обучающей выборки). С технической точки зрения получение аналитических выражений для производных целевой функции по нелинейным параметрам проблем не представляет. Однако, здесь в силу громоздкости эти выражения не приводятся.
Поскольку в череде этапов этап уточнения нелинейных параметров функции Гаусса имеет много меньшую скорость сходимости, то в ходе обучения реализацию этапа 1, как правило, сопровождает реализация нескольких этапов 2.
4.Нечеткие сети с самоорганизацией
Сети данного типа на этапе обучения осуществляют группирование входных вектров Xk, k=1, 2, ..., p, в M кластеров, каждый из которых определяется своим центром Ci, i=1, 2, ..., M. На этапе классификации сеть отождествляет очередной входной вектор данных X с одним из ранее определенных кластеров.
Нечеткая сеть с самоорганизацией
имеет простую двухслойную
Нейроны первого слоя реализуют
обощенную функцию Гауcса в рациональной
форме:muij(xj)=1/(1+((xj-cij)/
Каждый нейрон второго
слоя характеризуется центром Ci=[ц1
5.Алгоритм нечеткой самоорганизации C-means.
В данном алгоритме подаваемый
на вход очередной обучающий вектор Xk
sum[i=1:M](uki)=1.
При этом значение uki тем больше, чем ближе Xk к Ci.
Погрешность соотнесения обучающих векторов Xk и центров Ci для всех p обучающих векторов может быть выражена следующим образом
E=sum[i=1:M](sum[k=1:p]((uki)m
где m - показатель, выбираемый из ряда 1, 2, 3, ... .
Цель обучения - подбор таких значений центров Ci, которые обеспечивают минимальное значение погрешности E при одновременном соблюдении условия
sum[i=1:M](uki)=1.
Решение этой задачи можно свести к минимизации функции Лагранжа в виде
LE=sum[i=1:M](sum[k=1:p]((uki)
где Lk, k=1, 2, ..., p - множители Лагранжа.
Доказано, что решение этой задачи можно представить в виде
Ci=sum[k=1:p]((uki)m*Xk)/sum[
uki=1/sum[l=1:M](((dki)2/(dkl)
где dki=|Xk-Ci|2 - эвклидово расстояние между Xk и Ci.
Алгоритм обучения, реализующий описанную выше идею, получил название C-means. Он носит итерационный характер и может быть описан следующим образом.
1. Выполнить случайный выбор коэффициентов uki из диапазона [0,1] при соблюдении условия sum[i=1:M](uki)=1.
2. Вычислить все M центров Ci по приведенной выше формуле.
3. Рассчитать значение погрешности E. Если это значение меньше установленного порога или незначительно изменилось относительно предыдущей итерации, то закончить вычисления. Иначе перейти к п. 4.
4. Рассчитать новые значения uki
Описанный выше итерационный алгоритм ведет к достижению минимума погрешности E, который, однако, необязательно будет глобальным минимумом. На вероятность отыскания глобального минимума влияет выбор начальных значений uki и Ci. Специально для подбора "хороших" начальных значений центров Ci разработаны процедуры инициализации, две из которых представлены ниже.
6.Алгоритм пикового группирования
Для отыскания "первого приближения" к наилучшему расположению центров Ci в данном алгоритме используются так называемые пиковые функции. При подаче на вход сети p обучающих векторов Xk создается равномерная сетка, покрывающая все пространство, занимаемое данными векторами.
Узлы сетки обозначим как Vl, для каждого из них рассчитывается значение пиковой функции
m(Vl)=sum[k=1:p](exp(-(|Xk-Vl|
где s - константа, индивидуально подбираемая для каждой задачи.
Значение m(Vl) пропорционально количеству обучающих векторов Xk, находящихся в окрестности потенциального центра Vl. Малое значение m(Vl) говорит о том, что Vl в области, где количество векторов Xk мало. Следует отметить, что коэффициент s оказывает незначитетьное влияние на соотношение значений Vl для разных узлов сетки, поэтому подбор его величины не является критичным.
После расчета m(Vl) для всех потенциальных центров (узлов сетки) отбирается узел, имеющий наибольшее значение пиковой функции. С этим узлом отождествляется первый центр C1. Для выбора аналогичным образом следующего центра из рассмотрения исключается центр C1 и соседние с ним узлы сетки. Это удобно сделать переопределением пиковой функции
mnew(Vl)=m(Vl)-m(C1)*exp(-(|Vl
где m(C1) - значение пиковой функции в центре C1.
Процесс последовательного отыскания центров C1, C2, C3, ... завершается после обнаружения центра CM.
Основной недостаток алгоритма пикового группирования - экспоненциальный рост сложности с увеличением размерности векторов входных данных Xk. Следовательно, он применим лишь при при небольшом количестве входных сигналов N. Представленный далее алгоритм также имеет экспоненциальный рост сложности, но это рост в зависимости от количества обучающих выборокp.
7.Алгоритм разностного группирования
В этом алгоритме в качестве
потенциальных центров
m(Xi)=sum[k=1:p](exp(-(|Xk-Xi|
где значение коэффициента r1 определяет размер сферы соседства. При большой плотности входных векторов вокруг Xi значение функции велико, и, напротив, малое значение m(Xi)свидетельствует о незначительном количестве соседей.
После расчета значений m(Xi) для всех входных векторов в качестве первого центра C1 принимается Xi с наибольшим значением пиковой функции.
Для отыскания второго центра используется модифицированная пиковая функция в виде
mnew(Xi)=m(Xi)-m(C1)*exp(-(|Xi
где r2 задает новый размер сферы соседства, обычно r2>=r1.
Пиковая функция mnew(Xi) принимает нулевое значение для Xi=C1.
8.Заключение.
Основным достоинством применения нейронных сетей является возможность решать различные неформализованные задачи. При этом можно очень просто моделировать различные ситуации, подавая на вход сети различные данные и оценивая выдаваемый сетью результат.
В ходе применения нейронных сетей
отмечен существенный недостаток: сложность
понимания процесса получения сетью
результата. Первым шагом к устранению
данной проблемы является разработка
новой технологии, которая позволяет
генерировать описание процесса решения
задачи нейронной сетью. Используя
таблицу экспериментальных
Список литературы
- Андрейчиков А.В., Андрейчикова О.Н. Интеллектуальные информационные системы. - М: Финансы и статистика, 2004.
- Рутковская Д., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы: Пер. с. польск. И. Д. Рудинского. – М.: Горячая линия – Телеком, 2004.- 452 с.
- Круглов В.В., Дли М.И., Голунов Р.Ю. Нечеткая логика и искусственные нейронные сети. 1999.

- Нешняя политика Российской Федерации на рубеже второго и третьего тысячелетий
- Нештатные аварийно-спасательные формирования
- Нещасні випадки на виробництві. Аспекти відшкодування моральної шкоди
- Нещасні випадки на кухні
- Неэмпирические методы квантовой химии
- Неэтичная реклама
- Неэффективная система социальной помощи пожилым в РФ
- Неценовая конкуренция
- Неценовая конкуренция в отрасли
- Неценовая экономика
- Неценовые методы стимулирования спроса на транспортные услуги
- Нечаева (Гегелина) могила
- Нечеткая логика
- Нечеткая логика: достоинства и недостатки