Научная статья на тему 'Функциональная подсистема рационального выбора архитектуры нейронной сети'

Функциональная подсистема рационального выбора архитектуры нейронной сети Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
85
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИСКУССТВЕННАЯ НЕЙРОННАЯ СЕТЬ / ARTIFICIAL NEURAL NETWORK / АРХИТЕКТУРА НЕЙРОННОЙ СЕТИ / NEURAL NETWORK ARCHITECTURE / АЛГОРИТМ ОБРАТНОГО РАСПРОСТРАНЕНИЯ ОШИБКИ / BACK ERROR PROPAGATION ALGORITHM

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Короткая Л.И.

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

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

FUNCTIONAL SUBSYSTEM OF RATIONAL CHOICE ARCHITECTURES OF THE NEURAL NETWORK

The information subsystem is developed in the work, which allows choosing the architecture of the layered neural network and determining its parameters: the number of layers, the activation function, the number of epochs, the network error, the learning step. The functions of the information system make it possible to obtain a learning sample for nonlinear systems, to introduce, if necessary, a nonstandard activation function and to perform its numerical differentiation for further use in the algorithm for back propagation of the error. It is possible to dynamically add neurons to the layer.

Текст научной работы на тему «Функциональная подсистема рационального выбора архитектуры нейронной сети»

УДК 004.42:004.032.26

Л.1. КОРОТКА

Державний вищий навчальний заклад "Украшський державний ммжо-технолопчний ушверситет"

ФУНКЦ1ОНАЛЬНА П1ДСИСТЕМА РАЦ1ОНАЛЬНОГО ВИБОРУ АРХ1ТЕКТУРИ НЕЙРОННОÏ МЕРЕЖ1

У poôomi розроблена iнформацiйна nidcucmeMa, яка дозволяе обрати архтектуру сло1сто1 нейронно1 мeрeжi та визначитися з ïï параметрами: юльюстю шaрiв, функцiею активацИ) юльюстю епох, похибкою мeрeжi, кроком навчання. ФункцШ iнформaцiйноï системи дозволяють отримувати навчальну вuбiрку для нелтшних систем, вводити за нeобхiдноcmi нестандартну функцт активацИ' та виконувати ïï чисельне дuфeрeнцiювaння для подальшого використання у aлгорumмi зворотного поширення помилки. Передбачена можливкть дuнaмiчного додавання нeйронiв у шaрi.

Ключовi слова: штучна нейронна мережа, архтектура нeйронноï мeрeжi, алгоритм зворотного розповсюдження помилки.

Л.И. КОРОТКАЯ

Государственное высшее учебное заведение "Украинский государственный химико-технологический университет"

ФУНКЦИОНАЛЬНАЯ ПОДСИСТЕМА РАЦИОНАЛЬНОГО ВЫБОРА АРХИТЕКТУРЫ НЕЙРОННОЙ СЕТИ

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

Ключевые слова: искусственная нейронная сеть, архитектура нейронной сети, алгоритм обратного распространения ошибки.

L.I. KOROTKA

State Higher Educational Institution "Ukrainian State University of Chemical Technology"

FUNCTIONAL SUBSYSTEM OF RATIONAL CHOICE ARCHITECTURES OF THE NEURAL NETWORK

The information subsystem is developed in the work, which allows choosing the architecture of the layered neural network and determining its parameters: the number of layers, the activation function, the number of epochs, the network error, the learning step. The functions of the information system make it possible to obtain a learning sample for nonlinear systems, to introduce, if necessary, a nonstandard activation function and to perform its numerical differentiation for further use in the algorithm for back propagation of the error. It is possible to dynamically add neurons to the layer.

Keywords: artificial neural network, neural network architecture, back error propagation algorithm.

Постановка проблеми

Сучасний стан розвитку шформацшних систем (IC) характеризуеться достатньо широким використанням Intemet/Intranet-технологш у синтез! з елементами штучного штелекту. Технологи обчислювального штелекту застосовуються у р1зних предметних областях, у тому числ1 штучш нейронш мереж (НМ), як елементи ще1 технологи. Використання НМ мае достатш переваги, але пов'язане з деякими труднощами, наприклад, навчанням мереж та вибором гх параметр1в.

Аналiз останшх дослщжень i публшацш

Автор не претендуе на вичерпний анал1з юнуючого програмного забезпечення, яке дозволяе проектувати, навчати та використовувати нейронш мереж1 для виршення р1зних прикладних задач. Звернемо увагу т1льки на те, що нейромережев1 середовища, як правило, не працюють одночасно з дешлькома НМ та не використовують нестандартш функци активаци.

Мета дослщження

Об'ектом дослщження е моделювання процесу навчання обчислювальних структур - штучних нейронних багатошарових мереж прямого розповсюдження при розв'язаннi систем нелiнiйних рiвнянь. Метою роботи е створення web-орiентовано! функцюнально! шдсистеми визначення рацюнально! архггектури нейронних мереж для розв'язання прикладних задач. Постановка задачi: необхiдно провести навчання дешлькох штучних нейронних мереж алгоритмом зворотного розповсюдження помилки (ЗРП) з неперервними функщями активацп (ФА) з метою вибору одше! з НМ для подальшого використання.

Математична постановка: нехай задано навчальну множину {у,уг-},7 = 1,к . Тут у е Я" та

у е Я1 - тут вщповщно вхвдний вектор та вектор вказiвок вчителя /-ого прикладу. Нейромережева модель задаеться функцiоналом:

1 к 1 г т2

4™)=2НУм-у-]. (1)

27=1- =1

Для навчання нейронно! мереж! застосовуеться алгоритм зворотного поширення помилки, який для налаштування вагових коефщенпв використовуе метод гращентного спуску:

м* = -п~. (2)

дм

У процес навчання необхвдно визначити вектор ваг м * такий, щоб функцiонал (1) приймав мiнiмальне значення:

м* = а^ шт 4(м), (3)

м>еЯе (3)

де у-- (м) - зразок, який виданий мережею; м - матриця синаптичних ваг; г/ - коефiцiент швидкосп навчання НМ, значення якого береться з штервалу 0 < г/ < 1; у- - еталонне значення.

Викладення основного матер1алу дослвдження

Для досягнення поставлено! мети та виходячи з постановки задачi, функци системи, як1 вона повинна виконувати, можна сформулювати наступним чином:

1. Отримати з файлу навчальну вибiрку {у, у7}, 7 = 1, к та зарезервувати третину тестових зразшв для нелшшно! системи рiвнянь.

2. Задати для подальшого визначення рацюнально! архггектури нейронно! мереж1 для кожно! з них параметри навчання, а саме: вид функци активацп, к1льк1сть шарiв, похибку мереж1, коефiцiент навчання, шльшсть вх1дних та вих1дних елементiв. Зауважимо, що система одночасно працюе з чотирма нейронними мережами.

3. Провести одночасне навчання НМ алгоритмом зворотного розповсюдження помилки.

4. Протестувати навчеш нейронш мережь

5. Задати (за необхiдностi) нестандартш ФА та виконати !х чисельне диференцшвання для подальшого використання у алгоритм! ЗРП.

6. Додавати у процеа навчання нейрони у прихованому шарi НМ.

7. Отримати за необхвдносп навчальну вибiрку для нелшшно! системи рiвнянь, причому передбачаеться можливють завдання системи безпосереднiм введенням рiвнянь з клавiатури.

Як вiдомо з теори нейронних мереж, вибiр топологи мереж1 визначаеться розв'язуваною задачею. Для апроксимацп функцiй багатьох змiнних достатньо добре зарекомендували себе сло!стi нейронш мереж! [1]. Щдкреслимо, щодо тополог!! розглянутих у робот штучних нейронних мереж, то було проведено процес навчання для сло!стих НМ. У якосп алгоритму навчання використано алгоритм зворотного поширення помилки.

Для досягнення поставлено! мети необхщно звернути увагу на деяк проблемш аспекти, з якими стикаеться кожний проектувальник нейронно! мереж1. Розглянемо !х детальшше. Вщ якосп навчально! виб!рки залежить як1сть навчання нейронно! мережь Дуже суттевим е об'ем виб!рки та !! зразки, яш повинш якомога краще описувати середовище. Тому у робот! ввдслвдковуються ситуацп достатньо! або недостатньо! шлькосп навчальних зразк1в [2-3]. Як ведомо при малому об'ем! виб!рки нейронна мережа, як правило, буде недостатньо навчена, а при дуже великш шлькосп навчальних зразшв може вщбутися так зване "перенавчання", тому доцшьно робити перев!рку об'ему виб!рки, наприклад, за формулою:

N > тот, (4)

8 нс

де то, т - вщповвдно розм!ри входного та вих1дного шар!в; енс - похибка мереж1; N - об'ем навчально! виб!рки.

Для попередження ситуацш перенавчання нейронно1' мережi у роботi використано меxaнiзм контрольно1' крос-перевiрки [3, 5].

Gцiнювaння шлькосп нейронiв Lw у приxовaниx шaрax однорiдниx нейронниx мереж визначаеться за формулою [4] :

m - N ( N Л /

-< Lw < ml--h 1 I-In + m +1)+m,

1 + log2 N у m J

де n - розмiрнiсть вxiдного сигналу; m- розмiрнiсть виxiдного сигналу.

Зауважимо, що зпдно теореми про повноту [4], у робот розглядаються тiльки одно- та двошaровi нейроннi мережi. Що стосуеться такт пaрaметрiв навчання, як коефщент навчання та поxибкa нейронно1' мереж^ то вони визначаються проектувальником нейронно1' мереж1. Значення коефiцieнтa можна варшвати у вiдомому дiaпaзонi. Очевидно, що невелике його значення сповшьнюе процес навчання, але й велике значення може призвести до того, що можливш локальний мiнiмум буде пропущено. нейронно1'

мережi безпосередньо залежить ввд об'ему вибiрки зпдно формули (3). Достатньо детально евристичнi моменти навчання нейронно1' мереж1 алгоритмом зворотного поширення помилки описaнi в [5].

Останшм аспектом, який буде розглянуто i який представляеться автору важливим при роботi з нейронними мережами, е вибiр ФА. Очевидно, що можна вибирати як стaндaртнi функци, так1 як логiстичнi (сигмощ або гiперболiчний тангенс), так i нестандартш (наприклад, у роботi використовуеться експонента та частина '^вилТ' синусоïди). Kрiм того передбачено введення з консолi користувачем нестандартно1' ФА, але слщ зауважити, що згвдно теореми про повноту, функщя aктивaцiï повинна бути диференцшованою. У роботi використовуеться чисельне диференщювання тaкиx ФА для подальшого використання у aлгоритмi ЗFП.

Шсля описaниx aспектiв, з якими обов'язково стикаються проектувальники HM та необxiдного математичного апарату, перейдемо до опису створювано1' IC.

Для функцiонaльноï тдсистеми було використано наступне програмне забезпечення:

- скриптова мова програмування для написання web-сторшок - JavaScript;

- бiблiотекa JavaScript з вiдкритим сирцевим кодом - jQuery;

- скриптова мова програмування для генерацп HTML-сторшок - php;

- вiдкритий web -сервер 1нтернет - Apache HTTP-сервер;

- мова для структурування та подання вмiсту - HTML;

- спещальна мова вiдобрaження web-сторiнок, написана мовами розмiтки дaниx - CSS3;

- вшьний нaбiр iнструментiв для створення сaйтiв та web-додaткiв - Twitter Bootstrap.

Перед безпосередшм використанням HM необxiдно навчити мережу узагальнювати отримaнi нею знання, але цей процес не е простим. Ввд проектувальника мережi, як зазначалося рашше, залежить багато фaкторiв, у тому числ вибiр aрxiтектури HM та ïï пaрaметрiв. Тому у робот е можливiсть працювати з дешлькома нейронними мережами та обирати рiзнi ФА (а саме чотири). Звюно, що е можливiсть вaрiювaння пaрaметрiв навчання.

Для нaочностi процесу навчання HM алгоритмом ЗРП будуються графши значень поxибки. Грaфiки дозволяють особ^ яка приймае рiшення, спостерiгaти процес навчання цт мереж. Саме грaфiки дають можливiсть бачити якiсть навчання мереж^ у тому числi i ïï перетренування.

Результати чисельних експерименпв. Як зазначалося рaнiше, у робоп використано чотири ФА: логiстичний сигмощ гiперболiчний тангенс, "xвилю" синусоïди на заданому iнтервaлi та експоненцiйну функцш. Було проведено навчання нейронниx мереж, результати якого наведено у табл. 1. У роботax показано, що [1, 3] сигмощальш функци активацп дають практично однaковi результати, а якщо порiвнювaти ïx ФА s-подiбного типу, то i результати будуть вiдрiзнятися. Cлiд зазначити, що вибiр тieï чи iншоï мережi залишаеться за особою, яка приймае ршення.

Таблиця 1

Fезультaти навчання нейронниx мереж алгоритмом ЗFП_

Aрxiтектурa HM Функщя активацп Юльшсть епоx HM

4-4-3 Лопстичний сигмощ 534 0,00043

4-6-3 Частина «xвилi» синуосовди на заданому iнтервaлi 176 0,00005

4-4-4-3 Гiперболiчний тангенс 341 0,00046

За результатами дослщження чисельниx експериментiв навчання нейронн^ мереж можна стверджувати, що розроблена тдсистема дозволяе:

- створювати вибiрку для нейронниx мереж будь-якоï склaдностi та об'ему;

- використовувати чисельне диференцшвання неперервних функцш активаци;

- створювати та налаштовувати штучш нейронш мереж1 р1зних архитектур, з р1зними параметрами навчання;

- здшснювати в1зуал1зац1ю процесу навчання нейронних мереж за допомогою графЫв змшення похибки навчання;

- додавати динам1чно нейрони у приховаш шари;

- визначати особ! яка приймае ршення, рацюнальну архитектуру НМ для розв'язання прикладних задач.

Слад зупинитись на головних етапах навчання нейронних мереж. В тому випадку коли задаш вс параметри для навчання мереж1, нормал1зовано вхдт даш та задано похибку навчання, можна безпосередньо перейти до процесу навчання мереж! Реал1зован1 функци 1С дозволяють будувати чотири графши, на яких вщображаеться динашчний процес навчання НМ та змшення значень похибки мереж1 у ход1 И навчання (рис. 1).

Шсля етапу навчання можна переходити до тестування мереж1. Цей етап дозволяе визначити насшльки НМ здатна до узагальнення. Функцюнальна подсистема дозволяе спостертати цей етап, будувати графши тестування НМ аналопчш, що представлен! на рис. 1 та виводити додаткову шформацш.

Результаты обучения НС

о.юо 0.100

0.075 |\}75

о.ю 0.160

0.025 0.025

Скрытый слой: | 1 |

0.15

о\|о \

0.05

100.И 200.00 30-0.00 400.00

Скрытый слой: [Т]

Скрытый слой: | \ |

0.1100

^075

о.ко

0.025

Скрытый слой: | 2 |

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

Отмена

Рис. 1. Вжно вибору навчено! НМ для тестування

Таким чином, головш етапи навчання нейронних мереж реал1зовано у web-орiентованiй шдсистем! Функци системи дозволяють одночасно працювати з шлькома нейронними мережами, але вибiр та переваги щодо конкретно! НМ залишаеться за спецiалiстом у данш предметнiй областi. Тiльки вiн може визначити насшльки та чи шша мережа здатна до яшсного узагальнення.

Як вщомо, навчена нейронна мережа володiе пам'яттю, заради яко! i потрiбен такий довгий та не простий шлях навчання. У робот передбачено збереження синаптичних вагових коефщенпв у окремий файл для подальшого використання.

Нейроннi мереж! як елемент технологи обчислювального iнтелекту, мають сво! переваги та недолiки, але вони дуже добре себе зарекомендували як унiверсальнi апроксимуючi системи.

Висновки

Щдсумовуючи вищевикладений матерiал можна вщмггити, що розроблений нейроемулятор дозволяе: створювати, проектувати та налаштовувати штучнi нейронш мереж1 р!зно! архiтектури; за необхвдносп отримувати вибiрку для нейронних мереж будь-яко! складностi та розмiру; використовувати чисельне диференцшвання неперервних функцш активаци; здшснювати вiзуалiзацiю процесу навчання та тестування нейронних мереж; визначатися особ! що приймае ршення, щодо рацюнально! арх1тектури мереж1.

Список використаноТ лггератури

1. Зеленцов Д.Г. Нейронные сети как средство модификации метода скользящего допуска / Д.Г. Зеленцов , Л.И. Короткая // Восточно-европейский журнал передовых технологий. - 2011. - № 4/4 (52). - С. 21-24.

2. Каллан Р. Основные концепции нейронных сетей / Р. Каллан. - М.: Издательский дом "Вильямс", 2001.

- 288 с.

3. Короткая Л.И. Использование нейронных сетей при численном решении некоторых систем дифференциальных уравнений / Л.И. Короткая // Восточно-европейский журнал передовых технологий.

- 2011. - № 3/4 (51). - С. 24-27.

4. Круглов В.В. Нечеткая логика и искусственные нейронные сети / В.В. Круглов, М.И. Дли, Р.Ю. Голунов. - М.: Физматлит, 2001. - 221 с.

5. Хайкин С. Нейронные сети: полный курс / С. Хайкин. - М.: Издательский дом "Вильямс", 2006. -1104 с.

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