Научная статья на тему 'Розв'язування одновимірної задачі теплопровідності рекурентною нейронною мережею Джордана'

Розв'язування одновимірної задачі теплопровідності рекурентною нейронною мережею Джордана Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
282
42
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
рівняння теплопровідності / рекурентна нейронна мережа Джордана / метод Кранка-Ніколсона / метод "Зворотного поширення в часі" / уравнение теплопроводности / рекуррентная нейронная сеть Джордана / метод Кранка-Николсона / метод "Обратного распространения во времени"

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Н. О. Семенишин

Наведено методологію для розв'язання крайових задач, а саме одновимірного рівняння теплопровідності за допомогою штучної нейронної мережі Джордана. Подано результати моделювання. В основі функції вартості мережі лежить метод Кранка-Ніколсона. Архітектура представленої нейронної мережі має класичну рекурентну структуру, але з додатковим прихованим шаром, в якій вузли вихідного шару мають ефект на вузли попереднього шару. Для навчання рекурентної мережі використано розширення стандартного алгоритму зворотного поширення "Зворотного поширення в часі". Його отримано шляхом розгортання часових операцій мережі в багатошарову мережу прямого поширення, топологія якої розширюється на один шар на кожному часовому кроці. Мета навчання нейронної мережі є зведення до мінімуму неув'язки вихідного рівняння, яке описує проблему.

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

Решение одномерного уравнения теплопроводности с помощью рекуррентной нейронной сети Джордана

Приведена методология для решения краевых задач, а именно одномерного уравнения теплопроводности с помощью искусственной нейронной сети Джордана. Представлены результаты моделирования. В основе функции стоимости сети лежит метод Кранка-Николсона. Архитектура представленной нейронной сети имеет классическую рекуррентную структуру, но с дополнительным скрытым слоем, в котором узлы выходного слоя имеют эффект на узлы предыдущего слоя. Для обучения рекуррентной сети использовано расширение стандартного алгоритма обратного распространения "Back-propagation-through-time". Он получен путем развертывания временных операций сети в многослойную сеть прямого распространения, топология которой расширяется на один слой на каждом временном шаге. Фактически этот алгоритм подразумевает цепное правило дифференцирования, где производная от функции стоимости по выходам нейронов и их весам идет в обратном направлении через всю сеть. Целью рекуррентного обучения нейронной сети является сведение к минимуму невязки исходного уравнения, которое описывает проблему.

Текст научной работы на тему «Розв'язування одновимірної задачі теплопровідності рекурентною нейронною мережею Джордана»

УДК 519.63:004.02

РОЗВ'ЯЗУВАННЯ ОДНОВИМ1РНО1 ЗАДАЧ1 ТЕПЛОПРОВ1ДНОСТ1 РЕКУРЕНТНОЮ НЕЙРОННОЮ МЕРЕЖЕЮ ДЖОРДАНА

Н.О. СеменишиН

Наведено методологш для розв'язання крайових задач, а саме одновишрного ршнян-ня теплопровщност за допомогою штучно! нейронно! мереж1 Джордана. Подано результата моделювання. В основ1 функщ! вартост мереж1 лежить метод Кранка-Нжол-сона. Архггектура представлено! нейронно! мереж1 мае класичну рекурентну структуру, але з додатковим прихованим шаром, в якш вузли вихщного шару мають ефект на вуз-ли попереднього шару.

Для навчання рекурентно! мереж1 використано розширення стандартного алгоритму зворотного поширення - "Зворотного поширення в чаи". Його отримано шляхом роз-гортання часових операцш мереж1 в багатошарову мережу прямого поширення, тополо-пя яко! розширюеться на один шар на кожному часовому крощ. Мета навчання нейронно! мереж1 е зведення до мшмуму неув'язки вихщного ршняння, яке описуе проблему.

Ключовi слова: ршняння теплопровщносп, рекурентна нейронна мережа Джордана, метод Кранка-Нжолсона, метод "Зворотного поширення в чаи".

Вступ. Точш розв'язки крайових задач для piBHHHb з частинними похщни-ми, до яких зводиться дослiдження багатьох важливих проблем практики, вдаеться знайти тiльки для часткових випадюв. Тому, зазвичай, таю задачi розв'язують наближено. Серед ввдомих числових методов для розв'язування крайових задач особливо поширеними е метод сюнченних рiзниць (МСР) та метод скшченних елементiв (МСЕ). 1дея цих методов полягае в редукцп виндно!' диференцiальноí задачi до дискретно!': область змши неперервного аргументу замшяють дискретною множиною точок (вузлiв), ят називають сiткою. Згiдно з МСР, замкть функций неперервного аргументу розглядають функцп дискретного аргументу, визначеш у вузлах сiтки. Похiднi, що мiстять диференцiальнi рiв-няння i граничнi умови, замiняють рiзницевими спiввiдношеннями. Теоретичною основою МСЕ е варiацiйнi методи.

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

Мережа Джордана. В цш роботi розглядаемо одновишрну задачу теплоп-ровiдностi для iзотропних матерiалiв iз граничними умовами першого типу

du d2u „ т „ „ = a—-, 0 < х < L, 0 < t < T

dt dx2 u(0, t) = Ci u(L, t) = C2 u(x, 0) = C0(x), 0 < x < L

0 < t < T , (1)

1 шж. НО. Семенишин - НЛТУ Украши, м. Львгв

де: и - температура стрижня у дашй точцi х у певний момент часу г (градусш С); х i г - незалежнi змшш; а - коефiцieнт температуропровiдностi дорiвнюe а=к/ар (м2/с); де с - теплоемнкть матерiалу стрижня (Дж/кг-°С); р - густина матерiалу стрижня (кг/м3) i к - коефiцieнт теплопровщносп (Вт/(м-К)); С0(х) -початковий розподш температури у стрижнi; С, С2 температура на лiвому та правому тнщ стрижня вiдповiдно.

Для розв'язання ще'' задачi розглянуто рекурентну штучну нейронну мережу Джордана. Мережа за функщональнктю е дещо схожою на клiтинну [4, 5] з ткю вiдмiннiстю, що не використовуемо лопку задач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 г на рiвномiрну сiтку {(г,-,х/)}М=Мх_0 де

г, = ,Аг, х/ = /Ах, Аг = Т / Мг, Ах = Ь / Мх, тут Ах 1 Аг - крок розбиття областа по змiннiй х 1 г вiдповiдно. Побудуемо нейромережу, що складаеться iз Мх нейрошв вихiдного шару, яка буде давати на виходi нейрона / для часового кроку , значення температури и/ = и(г,-,х/), / = 1,...,Мх-1 на пiдставi вихщних значень нейронiв попереднього часового кроку. При цьому и0/ = и(0, х/) = С0(х); иг0 = и(,,0) = С1, иМх = и(г,Мх) = С2 — щ значення подаються мережi на першому крощ по часу. Для прихованого шару кшьккть нейронов N встановлюеться рiв-ною кiлькостi нейрошв вихiдного шару, проте це значення може вiдрiзнятись.

На кожному часовому крощ , отримуемо нове значення температури iз по-переднiх виходш за формулою

де: а - матриця ваг, що з'еднуе прихований шар з вихвдним; w - матриця ваг, що з'еднуе вихвдний шар попереднього часового кроку з прихованим шаром для да-ного моменту часу; « - функщя активацií, зазвичай сигмо'дного типу; N - кшьккть нейрошв прихованого шару. Автор [7] для кращо!' збiжностi радить обира-ти гiперболiчний тангенс з коефiцiентами

0 < г < мt,

(2)

(3)

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

Цiльова функцш. Вибiр цiльовоí функцií - ключовий момент при побудо-вi нейронно1 мереж! Наша цшьова функцiя (4) е складною квадратичною фун-кцiею, яка ставить у залежшсть виходи нейромережi для кожного моменту часу. Така структура функцп дае змогу використовувати методи оптишзацц нульового, першого чи, навiть, другого порядку.

Ы1 мх

J(и) = 11

1=0 у=0

г \2

иг,у-1 + иг,у + ии -+1 - и'-1, --1 - и'-1,] - и'-1, j+l -

Ш

а и1, j-l _ 2и1, j + и1, j+l + и1-1, j-l _ 2и1-1, j + Щ-\, у+1

(4)

V 2Ах2

Як бачимо, функщя е рiзницею лшо! i право! частини (1) iз замiною дифе-ренцiального оператора на синченно^зницевий методом Кранка-Школсона [10], шднесена до квадрату i просумована по вах точках областi. Ця функщя мiнiмiзуеться по а-к i ад. Важливою перевагою такого пiдходу е те, що може-мо навчити мережу для деяко! множини початкових i граних умов.

Навчання нейронно! мережг Для навчання мережi Джордана обрано алгоритм Зворотного поширення похибки в час1 по епохах (ЕросИ'шзе Васк-ргора-gation ТЬто^И Тте) - алгоритм навчання нейронних рекурентних мереж, який е розширенням стандартного алгоритму зворотного поширення [6]. Вш може бути отриманий шляхом розгортання часових операцiй мережi в багатошарову мережу прямого поширення, тополопя яко! розширюеться на один шар для кожного кроку часу.

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

Отже, наша мережа е, по суп, мережею прямого поширення iз матрицею ваг, що повторюеться кожного моменту часу. Вiдповiдно, i метод навчання е дещо подiбним до методу Зворотного поширення похибки [6]. Для цього методу шукаемо похвдну вщ цiльовоí функцií по кожнш синаптичнiй вазi. Тому для опису методу виведемо поняття Впорядкованог похгдног [8], яке за своею суттю е звичайним ланцюговим правилом i використовуеться для того, щоб уникнути обчислення складних формул при виведенш пох1дно1. Достошством такого шд-ходу, на думку автора [6], е гомогенне трактування прямих i рекурентних зв'яз-кiв, тобто збшьшення виразу при прямому поширеннi веде до вщповщного збшьшення виразу при зворотному поширеннi.

У випадку нашо1 мережi обчислюемо i зберiгаемо локальний градiент, тобто похiдну вщ (4) по виходу для кожного нейрона, щоб передати його при зворотному проходженш шшим нейронам для аналопчних обчислень.

д+J дJ М д+J ди

^ = ^ + ^^^^^. (5)

ди-- диу к=о димк ди--

У рiвняннi (5) лший член означае явну похвдну, а правий неявну. Для кра-щого розумiння розглянемо такий приклад:

= 4 • 23 = 3 • 2\ + 5 • .

Частинна похвдна х3 по доршнюе 3 - це явна похвдна (прямий вплив). Проте впорядкована похндна дорiвнюе 23 завдяки непрямому впливу через 22. На пiдставi (5) та (2) виведемо формули для навчання нашо1 мережi.

Локальне тдуковане поле нейрона [6] прихованого та вихiдного шару ввд-поввдно, дорiвнюе

Ых N

пвг& = £ щт-и, 1 < к < N х,к = я(пвик); иу = £ аукхк, 1 < у < Мх. (6)

1=1 к=1

1з формули (6) маемо вихвдш сигнали всiх нейронiв. Перейдемо до виве-дення формул у зворотному режим! Тут i надалi у формулах префiкс означае похвдну вiд функцií (4) по змшнш, яка йде пiсля цього префжса.

Л *

J _ ; (7) оиу

л N

J _ту = J_иР+ £щ *_х,+1к Мх > У >1 к=1 .

Мх '

* _ пС^ = £ аук ** _ иу N > к > 1

У=1

(8)

* _ хк = ^ \netk) * * _ пвгк N > к > 1. (9)

Формули (8) i (9) обчислюють похвдну згiдно з ланцюговим правилом ди-ференцдавання вiд (4), щоб визначити вплив кожного нейрона на формування

л

вихiдного сигналу. Тут * _ игу - явна похвдна ввд (4) по виходу нейрона у тiльки у вихвдному шарi мережi для кроку часу г, а * _иу - впорядкована похiдна нейрона у вихвдному шарi. Далi обчислюемо похвдну вiд (4) по синаптичних вагах

М, М,

* _ аку = _ игк * ху; * _ щ = _ х,+1к * иу. (10)

=1 =1

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

Дщу = ], 0 <]< 1, (11)

Эщ,

де ] - множник, що задае швидккть змiни щ.

Зрозумiло, що = * _ щу iз формули (10). Залишаеться вiдкритим питан-

Эщ,

ня про те, в який споаб мае змiнюватись щ, щоб в (4) було досягнуто певного 408 Збiрник науково-техшчних праць

"кращого" мшмуму. Найпростiшим таким способом е Метод найшвидшого спуску

New _ Wi, j = wu j - h • J _ Щ, j, (12)

де New _ wi,j - це нове значення синаптичних ваг. Але цей метод мае дуже зви-вистий характер, рух майже перпендикулярний дну заглиблення, тодi як треба рухатись уздовж. Тому рекомендують вибирати ефективнiшi методи наприклад рiзновид методу Спряжених градieнтiв - Флетчера-Pieca [1].

Wk+1 = Wk + hPk, Pk = gk + PPk-1; P0 = g0, Pk = —^^^, (13)

(gk -l, gk-1)

де gk = -—. Тут варто зазначити, що k - номер глобально! ^ерацп навчання dw

нейронно'1 мережi i gk присвоюються новi значення iз (10) для кожно! тако! ^е-рацп вщповщно, доки змiни не стануть достатньо малими або похибка (4) до-сягне малого рiвня.

Аналогiчнi обчислення виконують i для матрицi a з единою вiдмiннiстю dJ

gk = . da

Результати моделювання. Щоб дослiдити властивостi апроксимацп на-шо! мережi, розглянемо приклад одновишрно! задачi теплопровiдностi (1).

px

Дат початковi умови u(0, x) = 0,4sin(—), 0 <= x <= L, L =2; 0 <= t <=T,

T=0,05; At = 0,005; Ax = 0,2; u(t,0) = 0, u(t, L) = 0; коефщент температуропровщ-ностi (a) = 2,4094 (м2/с);

-ap2t

- px

Точний розв'язок u(t, x) = 0,2e l2 2 sin(—).

Рис. Температурний розподт задач1 в середовищ1 Matlab

(3nieaрезультат нейронноЧ мережi, справа точний розв'язок)

На графках видно зображення точно!' функцií - права поверхня та графiк функцп апроксимовано!' нашою мережею - лша поверхня. Обидва графiки майже щентичш. Середньоквадратична похибка дорiвнюe 0,0042 для вас!' по-верхнi (рис.).

Висновки:

1. Проведено аналiз особливостей застосування нейромережевого пiдходу при

побудовi наближених розв'язк1в крайових задач для рiвнянь параболiчного

типу. Розглянуто важливу для практики задачу теплопроводности

2. Пдабрано архiтектуру рекурентно'1 нейронно'1 мережi зi зворотним зв'язком

(мережа Джордана) для розв'язування задачi теплопровiдностi.

Результати моделювання дають змогу виявити переваги та недолши нейромережевого шдходу. До недолiкiв можна вiднести те, що метод скiнченних рiз-ниць дас значения шукано!' функцц у деякш скiнченнiй множинi точок. Це можна виправити, використавши другу мережу (чи метод) для жерполяцп.

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

Лггература

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

1. Васильев А.Н. Нейросетевое моделирование. Принципы. Алгоритма:. Приложения / А.Н. Васильев, Д.А. Тархов. - СПб. : Изд-во Государственный Политехнический Университет, 2009. - С. 34-42.

2. Горбаченко В.И. Распараллеливание нейросетевого алгоритма решения краевых задач математической физики на многоядерных процессорах NVIDIA / В.И. Горбаченко, Н.О. Матвеева, Е.И. Гурин, 2012. - М. : Изд-во "Наука". - 342 с.

3. Горбаченко В.И. Нейрокомпьютеры в решении краевых задач теории поля / В.И. Горбаченко. - К. : Изд-во "Лыбидь", 2003. - 336 с.

4. Нестеренко Б.Б. Асинхронш паралельш алгоритми нейронних мереж / Б.Б. Нестеренко, М.А. Новаторський. - М. : Изд-во "Вершина". - 238 с.

5. Новотарський М.А. Штучш нейроны мережа обчислення / М.А. Новотарський, Б.Б. Нестеренко // Прайд 1н-ту математики НАН Украши. - К. : Вид-во 1н-ту математики НАН Украши. - 2004. - Т. 50. - 408 с.

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

7. LeCun Y. Efficient BackProp / Y. LeCun, L. Bottou, Orr, G. and K. Muller (Eds), Neural Networks: Tricks of the trade, Springer, 1998. - 322 p.

8. Werbos P.J. Backpropagation through time: what it does and how to do it / P.J. Werbos // Proceedings of the IEEE, No. 10, October. - 1990. - Vol. 78. - Pp. 1550-1560.

9. [Electronic resource]. - Mode of access http://en.wikipedia.org/wiki/Crank%E2 %80%93 Ni-colson_method

Надтшла доредакцп 22.10.2016р.

Семенишин Н.О. Решение одномерного уравнения теплопроводности с помощью рекуррентной нейронной сети Джордана

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

ка-Николсона. Архитектура представленной нейронной сети имеет классическую рекуррентную структуру, но с дополнительным скрытым слоем, в котором узлы выходного слоя имеют эффект на узлы предыдущего слоя.

Для обучения рекуррентной сети использовано расширение стандартного алгоритма обратного распространения - "Back-propagation -through-time". Он получен путем развертывания временных операций сети в многослойную сеть прямого распространения, топология которой расширяется на один слой на каждом временном шаге. Фактически этот алгоритм подразумевает цепное правило дифференцирования, где производная от функции стоимости по выходам нейронов и их весам идет в обратном направлении через всю сеть. Целью рекуррентного обучения нейронной сети является сведение к минимуму невязки исходного уравнения, которое описывает проблему.

Ключевые слова: уравнение теплопроводности, рекуррентная нейронная сеть Джордана, метод Кранка-Николсона, метод "Обратного распространения во времени".

Semenyshyn N.O. Solving Heat Equation in One Dimension Using Jordan Recurrent Neural Network

The author has presented a methodology to solve boundary value problems, namely heat equation in one dimension using Jordan artificial neural networks. The results of simulation are presented. A recurrent neural network has been constructed for the implementation of the Crank - Nicolson method, which is the basis for constructed networks cost functions. The architecture of the presented Jordan neural network has almost classical recurrent structure where nodes of output layer have effect to nodes of former layer. The difference is that such a network contain additional hidden layer. This architecture was used to get better rate of convergence of neural network training method and also to have possibility to obtain output value from previous time step. For training a recurrent network an extension of the standart back-propagation algorithm was used referred to as "Back-propagation -through-time". It is derived by unfolding the temporal operation of the network into a layered feedforward network, the topology of which grows by one layer at every time step. In fact this algorithm imply simple chain rule of differentiation, where derivative of cost function with respect to neurons outputs and weights going backwards through the whole network. The purpose of the recurrent neural network training is to minimize the discrepancy of the original equation, which describe the problem.

Keywords: heat equation, Jordan recurrent neural network, Crank - Nicolson method, "back-propagation -through-time" method.

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