Нечеткий MLP-подход для распознавания нелинейных систем
- Авторы: Марахимов АР1, Худайбергенов КК1
-
Учреждения:
- Национальный университет Узбекистана им. М. Улугбека
- Выпуск: Том 65, № 1 (2019): Современные проблемы математики и физики
- Страницы: 44-53
- Раздел: Новые результаты
- URL: https://journals.rudn.ru/CMFD/article/view/22240
- DOI: https://doi.org/10.22363/2413-3639-2019-65-1-44-53
Цитировать
Полный текст
Аннотация
В рассмотрении задач принятия решения распознавание нелинейных систем играет огромную роль. Распознавание нелинейных систем с помощью многослойного персептрона (MLP), обученного по алгоритму обратного распространения, становится значительно более сложным с увеличением количества входных данных, слоев, узлов и количества итераций в процессе вычисления. В этой работе мы предприняли попытку использования нечеткого MLP и его обучающего алгоритма для распознавания нелинейных систем. Предложили подход нечеткого MLP и его обучающего алгоритма, который позволяет ускорить процесс обучения, превышающего скорость такового в случае классического MLP. Результаты показывают значительное упрощение при поиске оптимальных параметров для нейронной нечеткой модели в сравнении с классическим MLP. Также было проведено сравнение показателей работы обучения классического MLP и предложенной нечеткой MLP-модели. Нами были проанализированы временная и пространственная сложности алгоритма. Также мы выяснили, что серьезно сократилось количество моментов, а показатели работы выросли в сравнении с классическим MLP.
Полный текст
ОГЛАВЛЕНИЕ Введение 44 Архитектура MLP 45 Нечеткие MLP для распознавания нелинейных систем 46 Детали эксперимента и результаты 48 Заключение 49 Список литературы 51 ВВЕДЕНИЕ Распознавание нелинейных закономерностей, т. е. построение их моделей по результатам иссле- дований, является одной из важных задач в технике, экономике, медицине и прочих прикладных областях [5]. В работах [2, 13] был описан метод распознавания нелинейных закономерностей с использованием нечеткой базы знаний. Распознавание нелинейных закономерностей с использо- ванием нечеткой базы знаний - это конструкция нечеткой базы знаний, которая, грубо говоря, представляет собой отношение между входными и выходными данными, используя лингвистиче- ские правила «ЕСЛИ-ТО» [3]. Эти правила были выработаны экспертами (также могут быть получены в результате выделения нечеткого знания из экспериментальных данных). Затем пара- метрическое распознавание переходит в изучение закономерностей путем нахождения таких весов лингвистических правил и таких функций принадлежности от нечетких параметров, что колебания результатов моделирования обучающих образов сводятся к минимуму. В последние годы был достигнут существенный прогресс в области искусственных нейрон- ных сетей (ANN). Упреждающие многослойные персептроны (MLP) наиболее широко изучены в работах [5, 6]. Комбинированная техника нечеткой базы знаний и нейронных сетей, названная нечеткими нейросетями, применяется для моделей в реальных задачах, например, при постановке медицинского диагноза [11]. В частности, данная техника была применена для задач распозна- вания образов. Новая модель была разработана А. П. Ротштейном и С. Д. Штовбой [13] для рас- познавания нелинейных закономерностей с нечеткими обучающими образами. Это управляемая нейросеть, названная нечеткой нейросетью и имеющая один скрытый слой в своей архитектуре. Кроме того, концепция нечеткого MLP была представлена в работах [7, 9, 10], в которых был Qc РОССИЙСКИЙ УНИВЕРСИТЕТ ДРУЖБЫ НАРОДОВ, 2019 44 успешно применен метод для распознавания многомерных закономерностей. Эта же работа со- средотачивает свое внимание на развитии нечеткой MLP-модели для распознавания многомерных закономерностей с различной архитектурой. Работа этой модели сравнивается с работой класси- ческой MLP-модели, разработанной для тех же задач. Следует отметить, что и классическая, и нечеткая MLP-нейросети построены на основе обучения по алгоритму обратного распростране- ния. Проблемы, освещенные в этой работе, также относятся и к другим нечетким нейросетевым моделям. Далее опишем общее содержание нашей работы: сводка предварительных сведений со- держится в разделе 2, описывающем концепцию классического MLP; раздел 3 знакомит читателя с ранее предложенной нечеткой MLP-моделью и соответствующим алгоритмом; в разделе 4 пред- ставлены детальные вычислительные результаты; выводы содержатся в разделе 5. В самом конце работы находится список литературы, относящейся к данной работе. АРХИТЕКТУРА MLP Архитектура многослойного персептрона состоит из нескольких слоев нейронов [8, 16]. Входные данные подаются на первый слой (входной слой-0), после чего эти входные данные передаются на входы слоя-1. В слое-0 не проводится никаких вычислений, и его можно считать сенсорным слоем. Последний слой - выходной - выводит обработанные данные. Количество скрытых слоев, находящихся между входным и выходным слоями, может быть увеличено или, наоборот, умень- шено в зависимости от задачи, для которой предназначается модель. Если строить сеть с большим количеством слоев, то после ее обучения модель будет построена чрезвычайно точно. Однако та- кие модели считаются переобученными и непригодными для использования. Мы же рассмотрим сеть с 3 слоями: входным слоем, скрытым слоем и выходным слоем (рис. 1). Следующие формулы описывают структуру архитектуры многослойного персептрона, изобра- женного на рис. 1: n ji netj = ) xiw(1) + bj, (2.1) i=1 ji где w(1) - веса входного слоя, bj - смещения входного слоя, zj = f (netj ), (2.2) m j net∗ = ) zjw(2) + b0, (2.3) j=1 ji где w(2) - веса выходного слоя, b0 - смещения выходного слоя, y = f (net∗) (2.4) j Δw(2) = ηEf (net∗)y, Δb0 = ηEf (net∗) (2.5) Δw(1) = ηEf ∗(netj )x(i)f ∗(net∗)w(2), Δbi = ηEf ∗(netj )f ∗(net∗)w(2) (2.6) ji j j где i = 1, n, j = 1, m, f (·) - одна из функций активации. Для многослойного персептрона мы используем функцию активации сигмоидального типа: 1 Псевдо-код для обучения MLP: f (x)= 1+ exp-x . Инициализация веса w(1), w(2) смещения b, b0, скорость обучения момент t =0 Задание среднеквадратичной ошибки MSE=0 и критерия сходимости do for размера итерационного образа // прямое распространение РИС. 1. Архитектура многослойного персептрона x ← произвольно выбирается обучающий образ for каждого скрытого нейрона Вычисление netj (формула (2.1)) Вычисление активации zj (формула (2.2)) end for Вычисление net∗ (формула (2.3)) Вычисление активации net∗ (формула (2.4)) Расчет ошибки, ERROR = Target - y; j // обратное распространение ошибки для обновления весов и смещений Вычисление Δw(2) и обновление выходных весов (формула (2.5)) Вычисление Δb0 и обновление выходного смещения (формула (2.5)) для каждого скрытого нейрона ji Вычисление Δw(1) и обновление входных весов (формула (2.6)) Вычисление Δbi и обновление входных смещений (формула (2.6)) end for end for while (критерий окончания) где Target - это соответствующая цель. НЕЧЕТКИЕ MLP ДЛЯ РАСПОЗНАВАНИЯ НЕЛИНЕЙНЫХ СИСТЕМ Рассматриваемая нами архитектура нечеткого MLP довольно схожа с архитектурой классиче- ского MLP, и состоит из так называемых нечетких (fuzzy) принадлежностей наподобие фаззи- фикации, дефаззификации и многослойного персептрона (рис. 3). В этой модели мы используем колоколообразную функцию принадлежности (рис. 2). Следует отметить, что мы рассматрива- ем функцию принадлежности именно такого типа в силу ее простоты. Однако для архитектуры нечеткого MLP можно применять и другие типы функций принадлежности. Колоколообразная функция принадлежности. Мы используем колоколообразную функ- цию принадлежности, как показано ниже. Главными преимуществами функции принадлежности данного типа являются простота и удобство в корректировке. 1 μ (x; a, c)= a 1+ x-c 2 где a и c - заданные параметры: a - это коэффициент концентрационного расширения функции, а c - это координата максимума функции (рис. 2). РИС. 2. График колоколообразной функции принадлежности РИС. 3. Архитектура нечеткого MLP Архитектура сети нечеткого MLP. Предлагаемая архитектура сходна с архитектурой классического многослойного персептрона; она показана на рис. 3. Процесс обучения нечеткой нейросети схож с процедурой обучения традиционных нейросетей, использующих правило «об- ратного распространения». Обучение этому алгоритму также состоит из двух этапов - прямого и обратного. Ввиду этого, здесь мы приводим только формулы, относящиеся к нечеткому MLP, в то время как остальные формулы содержатся в (2.1)-(2.6). Степени принадлежности входных значений вычисляются по формуле (3.1): 1 μj (xi)= x c j 2 a j 1+ i- i i , i = 1, n, j = 1, m. (3.1) Таким образом, коэффициенты ai и ci обновляются по дельта-правилу (Δ-правило) [13]. На выходе ядро метода гравитационной дефаззификации состоит в нахождении четкого значения. Считает- ся, что этот метод дефаззификации обеспечивает наибольшую точность и скорость регулировки нечеткой модели [15]. Псевдо-код для обучения нечеткого MLP: Инициализация веса w(1), w(2) скорость обучения α момент t =0 Задание среднеквадратичной ошибки MSE =0 и критерия сходимости ε фаззификация (введение нечеткости) исходного образа обучения с помощью колоколообразной ФП do // прямое распространение for размера итерационного образа ← x ← произвольно выбирается обучающий образ для каждого скрытого нейрона Вычисление netj (формула (2.1)) Вычисление активации zj (формула (2.2)) end for Вычисление net∗ (формула (2.3)) Вычисление активации net∗ (формула (2.4)) y = дефаззификация нечеткого умозаключения μy (y) Расчет ошибки, ERROR = Target - y; j // обратное распространение ошибки для обновления весов Вычисление Δw(2) и обновление выходных весов (формула (2.5)) для каждого скрытого нейрона ji Вычисление Δw(1) и обновление входных весов (формула (2.6)) end for для каждого из параметров функции принадлежности Вычисление Δai и обновление коэффициента ФП Вычисление Δci и обновление коэффициента ФП end for end for while (критерий окончания) где Target - это соответствующая цель. Временная и пространственная сложности одинаковы для предложенных алгоритмов. В модели для нечеткого MLP используется одна вспомогательная матрица, в которой хранятся нечеткие входные данные (образы). Следует отметить, что эта область памяти не влияет на скорость обуче- ния описанных алгоритмов, а для современных компьютеров пространство памяти (O (n × m)) и вовсе не является проблемой. В обеих моделях размер входных нейронов равен n; размер скрытых нейронов равен m, а размер выходных нейронов равен 1. Вычисление требует прямого и обратного распространения. В процессе прямого расчета вычисление ведется с входного (слой-0) к скрытому слою (слой-1) и требует O (n × m) вычислений. Следующее прямое вычисление идет из скрытого слоя к выходному (слой-2) и требует O (m) времени. Схожим образом идет и процесс обратного распространения - вычисления от выходного к скрытому слою и от скрытого ко входному слою требуют O (m) и O (m × n) времени, соответственно. И, наконец, чтобы получить выходное зна- чение, требуется лишь O (1) времени для обоих алгоритмов. Из этого следует, что временная сложность алгоритма может быть вычислена по следующей форме: T (n, m)= 2O (n × m)+ 2O (m)+ O(1), следовательно, T (n, m)= O (n × m) . ДЕТАЛИ ЭКСПЕРИМЕНТА И РЕЗУЛЬТАТЫ Мы рассматриваем объект с двумя входными x1, x2 ∈ [-2, 2] и одной выходной y закономерно- стями, приведенными ниже: 2 2 y = x1 × e(-x1-x2) (4.1) Необходимо провести обучение, основанное на вышеизложенных моделях, синтезировать нечеткую модель и отрегулировать ее в соответствии с нечетким обучающим образом. Пригодность нечеткой модели проверяется в следующем критерии: MSE = n 1 ) ( 2 i i yr - yd� 2 i=1 где yr - соответствующий выход обучающего образа, а yd - это желаемый выход модели. Срав- ним результаты распознавания с четким и нечетким обучающими образами. Обучающие образы РИС. 4. Эталонная закономерность (4.1) РИС. 5. Геометрические изображения объекта (4.1) показаны формулой (4.1) и на рис. 4. Прежде чем обучать предложенную модель, ее веса должны быть произвольно определены. В связи с этим предварительно приведена исходная форма модели (рис. 5a). После обучения нейросети получаем модель, геометрическое изображение характеристик которой в сравнении с ее эталоном приведено на рис. 5b. Графики функций принадлежности для нечетких членов входных переменных до и после корректировки показаны на рис. 7, а значения их параметров a и c приведены в табл. 2 и табл. 3, соответственно. Испытание четкой (рис. 6a) и нечеткой (рис. 6b) моделей указывает на приемлемое распозна- вание нелинейной закономерности (4.1). В табл. 1 показаны данные о сходимости для различных значений скорости обучения α. Из рис. 6b видно, что среднеквадратичная ошибка, полученная с помощью алгоритма для нечеткого MLP, достигает соответствующего минимума после 600-700 моментов. Исходя из результатов эксперимента, можно заключить, что предложенная нечеткая модель обладает лучшей сходимостью, чем четкая модель. ЗАКЛЮЧЕНИЕ Был разработан нечеткий MLP для распознавания нелинейных систем. Входные данные фаззи- фицируются с помощью колоколообразной функции принадлежности, а затем подаются в нечеткую MLP модель. После дефаззификации выход предложенного нечеткого MLP дает четкое значение. ТАБЛИЦА 1. Показатели работы моделей α Минимальная MSE Время (сек) MLP Fuzzy-MLP MLP Fuzzy-MLP 0,30 1,0161 0,0234 26,71 24,10 0,40 1,0145 0,0207 25,74 22,42 0,45 1,0754 0,0159 25,97 21,53 0,50 1,2273 0,0268 23,68 20,04 0,55 1,3205 0,0272 23,55 20,19 ТАБЛИЦА 2. Параметры функций принадлежности для членов от переменной x1 Terms A1 A2 A3 A4 A5 A6 до обучения a 0,3 0,3 0,3 0,3 0,3 0,3 c -1,9600 -1,2000 -0,4000 0,4000 1,2000 2,0000 после обучения a 0,4203 0,2297 0,4620 0,4519 0,2225 0,4247 c -1,9947 -1,1667 -0,4678 0,4538 1,2048 1,9823 ТАБЛИЦА 3. Параметры функций принадлежности для членов от переменной x2 Terms B1 B2 B3 B4 B5 B6 до обучения a 0,3 0,3 0,3 0,3 0,3 0,3 c -1,9600 -1,2000 -0,4000 0,4000 1,2000 2,0000 после обучения a 0,2281 0,4192 0,1911 0,1907 0,4293 0,2350 c -1,9941 -0,6719 -0,0760 0,0801 0,6851 2,0225 РИС. 6. Графики сходимости MLP (слева) и нечеткого MLP (справа) Полученные результаты показывают, что предложенная модель сходится к своей минимальной среднеквадратичной ошибке (MSE) при 600-700 моментах и достигает коэффициента сходимости в 93-95%. Из результатов проведенных вычислительных экспериментов можно сделать вывод, что предложенная нечеткая модель значительно опережает классическую MLP модель в смысле ско- рости обучения и точности. Также вычислительные эксперименты демонстрируют, что нечеткость в опытных данных не является препятствием для распознавания нелинейных закономерностей. Нечеткие обучающие образы и нечеткие нейромодели могут быть применены в системах управ- ления, медицине и многих других областях, в которых опытные данные для распознавания иссле- дуемых «входных-выходных» закономерностей построены на субъективной основе. РИС. 7. Графики функций принадлежности×
Об авторах
А Р Марахимов
Национальный университет Узбекистана им. М. Улугбека
Email: avaz.marakhimov@yandex.ru
Узбекистан, 100174, г. Ташкент, ВУЗ городок, ул. Университетская, д. 4
К К Худайбергенов
Национальный университет Узбекистана им. М. Улугбека
Email: kabul85@mail.ru
Узбекистан, 100174, г. Ташкент, ВУЗ городок, ул. Университетская, д. 4
Список литературы
- Борисов В. В., Круглов В. В., Федулов А. С. Нечеткие модели и сети. 2-е изд. - М.: «Горячая линия - Телеком», 2012.
- Митюшкин Ю. И., Мокин Б. И., Ротштейн А. П. Soft Computing: идентификация закономерностей нечеткими базами знаний. - Вiнниця: Унiверсум, 2002.
- Пегат А. Нечеткое моделирование и управление. - М.: БИНОМ. Лаборатория знаний, 2013.
- Штовба С. Д. Проектирование нечетких систем средствами MATLAB. - М.: «Горячая линия - Телеком», 2007.
- Galushkin A. I. Neural networks theory. - Berlin-Heidelberg: Springer-Verlag, 2007.
- Haykin S. Neural networks. A comprehensive foundation. 2nd ed. - New York: IEEE, 1999.
- Jose K. M., Fabio M. A. Nonlinear system identification based on modified ANFIS// Proc. 2015 12th Int. Conf. on Informatics in Control, Automation and Robotics (ICINCO), Colmar, France, 21-23 July 2015. - Colmar, 2015. - С. 588-595.
- Nikov A., Georgiev T. A fuzzy neural network and its matlab simulation// Proc. ITI99 21st Int. Conf. on Information Technology Interfaces, Pula, Croatia, June 15-18. - Pula, 1999. - С. 413-418.
- Qing-Song M. Approximation ability of regular fuzzy neural networks to fuzzy-valued functions in MS convergence structure// Proc. 32nd Chinese Control Conf., Xian, China, 26-28 July 2013. - Xian, 2013. - INSPEC Acc. Num. 13862419.
- Rakesh B. P., Satish K. Sh. Identification of nonlinear system using computational paradigms// Proc. Int. Conf. on Automatic Control and Artificial Intelligence, Xiamen, China, 3-5 March 2012. - Xiamen, 2012. - С. 1156-1159.
- Rotshtein A. P. Design and tuning of fuzzy if-then rules for medical diagnosis// В сб.: «Fuzzy and neural- fuzzy systems in medical and biomedical engineering». - Boca-Raton: CRC Press, 1998. - С. 243-289.
- Rotshtein A. P., Mityushkin Y. I. Extraction of fuzzy rules from experimental data using genetic algorithms// Cybernet. Systems Anal. - 2001. - № 3. - С. 45-53.
- Rotshtein A. P., Shtovba S. D. Identification of non-linear dependencies of fuzzy knowledge bases with fuzzy learning inputs// Cybernet. Systems Anal. - 2006. - № 2. - С. 17-24.
- Rumelhart D. E., Hinton G. E., Williams R. J. Learning internal representations by back-propagating errors// Nature. - 1986. - 323. - С. 533-536.
- Zimmermann H. J. Fuzzy set theory and its applications. - Dordrecht-Boston: Kluwer, 1991.
- Zongyuan Z., Shuxiang X., Byeong H. K., Mir M., Yunling L., Rainer W. Investigation and improvement of multi-layer perceptron neural networks for credit scoring// Expert Syst. Appl. - 2015. - 42, № 7. - С. 3508-3516.