Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях
Проведено огляд результатів, що стосуються паралельної організації масових обчислень у нейронних мережах. Розглядаються дво- і три-вимірні багатошарові мережі прямого поширення з проективними та латеральними зв’язками. Побудовано паралельні та паралельно-конвеєрні алгоритми, орієнтовані на виконання...
Збережено в:
| Дата: | 2008 |
|---|---|
| Автори: | , |
| Формат: | Стаття |
| Мова: | Українська |
| Опубліковано: |
Інститут програмних систем НАН України
2008
|
| Теми: | |
| Онлайн доступ: | https://nasplib.isofts.kiev.ua/handle/123456789/322 |
| Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
| Назва журналу: | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
| Цитувати: | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях / А.В. Анисимов, М. С. Яджак // Пробл. програмув. — 2008. — N 1. — С. 17-25. — Бібліогр.: 28 назв. — рос. |
Репозитарії
Digital Library of Periodicals of National Academy of Sciences of Ukraine| _version_ | 1859592007736885248 |
|---|---|
| author | Анисимов, А.В. Яджак, М.С. |
| author_facet | Анисимов, А.В. Яджак, М.С. |
| citation_txt | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях / А.В. Анисимов, М. С. Яджак // Пробл. програмув. — 2008. — N 1. — С. 17-25. — Бібліогр.: 28 назв. — рос. |
| collection | DSpace DC |
| description | Проведено огляд результатів, що стосуються паралельної організації масових обчислень у нейронних мережах. Розглядаються дво- і три-вимірні багатошарові мережі прямого поширення з проективними та латеральними зв’язками. Побудовано паралельні та паралельно-конвеєрні алгоритми, орієнтовані на виконання відповідно на обчислювальних системах, які реалізують SIMD-режим і квазісистолічні обчислювальні структури.
Сделан обзор результатов, касающихся параллельно организации массовых вычислений в нейронных сетях. Рассматриваются дву- и трехмерные многослойные сети прямого распространения с проективными и латеральными связями. Построены параллельные и параллельно-конвейерные алгоритмы, ориентированы на выполнение соответственно на вычислительных системах, реализующих SIMD-режим и квазисистолические вычислительные структуры.
The review of results go into problems of parallel organize mass calculations within neural networks is presented. Two- and three-dimensional multilayer networks of direct propagation path with projective and lateral links are considered. Parallel and parallel-pipeline algorithms have oriented on implementation on computing systems, which realize SIMD regime and quasisystolic calculating structures are constructed.
|
| first_indexed | 2025-11-27T16:21:49Z |
| format | Article |
| fulltext |
Моделі та засоби паралельних і розподілених програм
© А.В. Анисимов, М.С. Яджак, 2008
ISSN 1727-4907. Проблеми програмування. 2008. № 1 17
УДК 519.681.5
А.В. Анисимов, М.С. Яджак
ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ВЫПОЛНЕНИЯ МАССОВЫХ
ВЫЧИСЛЕНИЙ В НЕЙРОННЫХ СЕТЯХ
Сделан обзор результатов, касающихся параллельно организации массовых вычислений в нейронных сетях.
Рассматриваются дву- и трехмерные многослойные сети прямого распространения с проективными и лате-
ральными связями. Построены параллельные и параллельно-конвейерные алгоритмы, ориентированы на
выполнение соответственно на вычислительных системах, реализующих SIMD-режим и квазисистоличе-
ские вычислительные структуры.
Введение
Нейронные сети (НС) – удобный инст-
румент для решения многих практически
важных задач [1–5]. Среди разнообразия
используемых на практике двумерных
сетей весьма распространёнными являются
многоуровневые клеточные сети [6] для
обработки изображений. Структурно их
можно представить как трёхмерные мно-
гослойные. В отдельных случаях реализа-
ция НС осуществляется в последователь-
ном режиме. Это имеет смысл, когда сеть
состоит из небольшого числа нейронов и
решение задачи можно получить за прием-
лемое время. Поэтому разработан ряд про-
граммных имитаторов НС для ПЭВМ [7–
9]. Однако, если количество нейронов сети
составляет десятки тысяч и больше или,
если задачу необходимо решать в режиме
реального времени, тогда возникает про-
блема оптимизации нейросетевых вычис-
лений. Иногда от решения данной про-
блемы удавалось «уходить», используя
различные аппаратные средства ускорения
и реализации нейровычислений [10–13].
Но, ввиду специфики решаемых с их по-
мощью задач и высокой стоимости, дан-
ные средства пока не стали широко
распространёнными для выполнения
массовых вычислений. Поэтому, напри-
мер, отсутствует информация о том, в
какой из прикладных отраслей каждый из
разработанных нейрочипов [13, 14] может
быть особенно полезным. Следовательно,
одним из перспективных путей решения
проблемы оптимизации по времени нейро-
сетевых вычислений является использова-
ние возможностей распараллеливания об-
работки информации [15]. Данное направ-
ление имеет значительные резервы по усо-
вершенствованию существующих и разра-
ботке новых методов и средств выполне-
ния массовых вычислений в зависимости
от типа используемой сети. Некоторые
общие подходы к параллельной реализа-
ции НС рассмотрены в [16–18], где пред-
ложены способы распараллеливания
вычислений как на внутринейронном
(используя потоковые схемы или однород-
ные вычислительные среды), так и на
междунейронном уровнях. Однако, ориен-
тация на конкретные типы сетей требует и
более конкретных рекомендаций, вплоть
до готовых алгоритмов, учитывающих
параллелизм обоих уровней. Осуществить
это позволяет установленная в [19]
взаимосвязь между вычислениями, выпол-
няемыми в НС и при решении задачи циф-
ровой фильтрации (ЗЦФ). В работах [20–
22] для решения ЗЦФ рассматриваются и
анализируются различные параллельные
методы организации вычислений (син-
хронный, асинхронный, гиперплоскостей
Лемпорта, параллельно-конвейерный). В
работе [23] подчёркивается конвейерный
характер информационных процессов,
протекающих в многослойных сетях. На
основании изложенного естественным
выглядит развитие параллельных методов
решения ЗЦФ для эффективной орга-
низации массовых вычислений в НС.
Нами рассматриваются дву- и трёх-
мерные многослойные сети двух типов: 1)
прямого распространения (полностью и
частично связанные); 2) с проективными и
латеральными связями. В сетях первого
типа синаптические связи существуют
Моделі та засоби паралельних і розподілених програм
18
только между нейронами соседних слоёв, а
в НС второго типа, кроме некоторого ко-
личества синаптических связей между
нейронами разных слоёв, существует за-
данное число связей между нейронами
одного и того же слоя, т.е. латеральных.
Решаемая проблема состоит в развитии
параллельных методов организации вы-
числений в одно- и двухмерной ЗЦФ для
эффективного выполнения массовых вы-
числений в дву- и трёхмерных много-
слойных НС прямого распространения и с
проективными и латеральными связями, а
также в разработке соответствующих па-
раллельных алгоритмов, ориентированных
на реализацию на современных и перспек-
тивных высокопроизводительных вы-
числительных системах.
1. Организация параллельных
вычислений в НС прямого
распространения
В работах [20–22] рассматривается
ЗЦФ, которая в общем случае состоит в
выполнении некоторого числа пересчётов
сглаживания массива значений перемен-
ных через плавающее окно заданного раз-
мера. Один из анализируемых в данных
работах параллельных методов её решения
– синхронный состоит: для вычислений на
v-ом шаге, необходимые значения пере-
менных берутся исключительно из (v-1)-го
шага. Предлагаемые для реализации дан-
ного метода алгоритмы используют
параллельный цикл типа SIM [15]. Если,
учитывая результаты [19], в данных алго-
ритмах количество пересчётов сглажива-
ния, число пересчитанных на j-ом шаге
значений переменных и размер плаваю-
щего окна заменить соответственно на ко-
личество слоёв сети S, число нейронов jN
в j-ом слое, количество синаптических
связей нейрона, а также для каждого ней-
рона произвольного слоя ввести активаци-
онную функцию, то получим параллель-
ные алгоритмы выполнения массовых вы-
числений в многослойных НС прямого
распространения. Для двумерной сети
такой алгоритм имеет вид [24]:
DOSjFOR ,1=
SIMDONiFOR j,1=
;0=ip
DONkFOR j 1,1 −= (1)
;1−∗+= j
k
j
kiii xwpp
( )i
j
i
j
i px ϕ= .
В приведённом алгоритме j
kiw – вес,
соответствующий связи между i -м нейро-
ном j -го слоя и k -м нейроном )1( −j -го
слоя; j
iϕ – активационная функция i -го
нейрона j -го слоя; ( )0
0 ,1 Nlxl = ,
( )S
S
m Nmx ,1= – сигналы, поступающие
соответственно на вход и выход сети;
j
ix – значение активационной функции, вы-
численное i -м нейроном j -го слоя. В
конструкции (1) считается, что количество
синаптических связей нейронов j -го слоя
равно числу нейронов )1( −j -го слоя, т.е.
НС является полностью связанной. В слу-
чае линейных нейронов последний опера-
тор в конструкции (1) примет вид: i
j
i px = .
Для гомогенной НС имеет место тожде-
ство
,...
......
S
N
S
2
S
1
1
N
1
2
1
1
S
1
Φ≡ϕ≡≡ϕ≡
≡ϕ≡≡ϕ≡≡ϕ≡ϕ
поэтому этот оператор в данном случае
трансформируется в ( )i
j
i px Φ= .
На практике применяются и двумер-
ные частично связанные НС прямого рас-
пространения. Такая архитектура позво-
ляет заложить в сеть априорные сведения
об желаемом законе обработки сигналов.
Чтобы это учесть, необходимо в (1) заме-
нить четвёртый оператор на
DOGkFOR j
i
1−∈ ,
где 1−j
iG – некоторое упорядоченное мно-
жество и { }111
1 ,1: −
− =⊂ j
j
i NkkG .
Согласно приведённых алгоритмов
распараллеливание вычислений в сетях
осуществляется в основном на междуней-
ронном уровне. Дальнейшее ускорение
вычислительного процесса возможно
вследствие распараллеливания вычисления
Моделі та засоби паралельних і розподілених програм
19
значения активационной функции в ней-
ронах. Известно, что процедуру взвешен-
ного суммирования можно распараллелить
в режиме, близком к полному двоичному
дереву, который во многих ситуациях
является оптимальным по времени. Од-
нако, отходя от концепции неограничен-
ного параллелизма, в отдельных случаях
весьма эффективным может оказаться
подход, состоящий (применительно к
полностью связанным сетям) в удалении
третьего и замене пятого оператора в (1)
фрагментом:
BEGIN
,
)1( 1
11
i
j
i
jj
i
j
i
pxELSE
xwTHENkIFx
+
∗== −
1
1,1
−
++ ∗= j
k
j
iki xwp
END .
Здесь операторы ...=j
ix и ...=ip ,
разделённые запятой, выполняются син-
хронно.
Для применения такого подхода к час-
тично связанным сетям необходимо в (1)
после удаления третьего оператора заме-
нить пятый оператор на фрагмент:
BEGIN
,pxELSE
xwTHEN)dk(IFx
i
j
i
1j
d
j
id1
j
i 11
+
∗== −
1
, 1010
−∗= j
d
j
idi xwp
END .
Здесь 1d – первый элемент 1−j
iG , а 10d
– элемент данного множества, следующий
за элементом, определяемым значением
переменной k .
В многослойных НС прямого распро-
странения с большим количеством нейро-
нов доля процедуры реализации активаци-
онной функции простого вида (линейная,
пороговая) в общем времени выполнения
нейросетевых вычислений является незна-
чительной. Если используются более
сложные функции активации нейронов
(сигмоидная, гиперболический тангенс,
арктангенс, синус), то: 1) согласно [25] их
можно представить в виде степенного ряда
и использовать в дальнейшем лишь четыре
его члена; время реализации такого выра-
жения можно уменьшить путём его
распараллеливания; 2) для быстрой реали-
зации таких функций подключать специ-
альные аппаратные средства.
Параллельный алгоритм организации
массовых вычислений в трёхмерных пол-
ностью связанных многослойных НС пря-
мого распространения выглядит таким
образом:
DOStFOR ,1= ,
{ }
SIMDO
MjNijijiFOR tt
1
1
1
111 ,1;,1:),(),( ==∈
DONrFOR t
1
1,1 −= ,
DOMsFOR t
1
1,1 −= ,
BEGIN (2)
.
)11(
1
11,11
ji
t
ji
tt
ji
t
ji
pxELSE
xwTHEN
srIFx
+
∗
=∧==
−
1
1,1
1
11,11
1
1)(
−
++
−
++−
∗
∗==
t
sr
t
jisr
t
r
t
jirtji
xwELSE
xwTHENMsIFp
;END
).( t
ji
t
ji
t
ji xx ψ=
В приведённой конструкции количе-
ство нейронов t-го слоя 11
ttt MNN ⋅= ;
t
jisrw , – вес, отвечающий связи между
),( sr -м нейроном )1( −t -го слоя и ),( ji -м
нейроном t -гослоя;
( ) ,,1;,1 1
0
1
0
0 MmNlx ml == ( ;,1 1
S
S
uc Ncx =
)1,1 SMu = – сигналы, подающиеся соот-
ветственно на вход и выход сети; t
jix –
значение активационной функции, вычис-
ленное ),( ji -м нейроном t -го слоя; t
jiψ –
активационная функция ),( ji -го нейрона
t -го слоя. В конструкции (2) операторы
Моделі та засоби паралельних і розподілених програм
20
...=t
jix и ...=jip , разделённые запятой,
выполняются синхронно.
Аналогично, как и для двумерных се-
тей, строится параллельный алгоритм
организации массовых вычислений в
трёхмерных частично связанных НС пря-
мого распространения, который детально
описан в [26].
Приведённые алгоритмы ориентиро-
ваны на выполнение на параллельных вы-
числительных системах типа SIMD, т.е.
последние наиболее естественно могут
реализовать рассмотренные типы НС пря-
мого распространения. Однако, если име-
ется механизм имитации SIMD-режима,
это возможно и на любых других ЭВМ,
включая и обычные последовательные.
2. Вычисления в НС с проективными и
латеральными связями
В работах [20–22] предлагаются и ана-
лизируются параллельно-конвейерные
методы решения ЗЦФ. Согласно этих
методов вычисления задаются в виде неко-
торого числа сдвинутых между собой
ветвей. Каждая ветвь взаимодействует с
определённым количеством своих соседей.
Параллельно-конвейерные алгоритмы
(ПКА), построенные на основе данных
методов, используют параллельный цикл
типа SYNCH [15]. Если в этих алгоритмах
количество пересчитываемых значений пе-
ременных, число пересчётов сглаживания,
размер плавающего окна заменить со-
ответственно на { }j
Sj
NN
≤≤
=
1
0 max ;
некоторый вспомогательный масив, опре-
деляющий структуру сети; количество
синаптических связей, а также ввести для
каждого нейрона активационную функцию
и учесть количество тактов её реализации
в операторах задержки DELAY, то получим
ПКА организации массовых вычислений в
многослойных НС с проективными и лате-
ральными связями. Для двумерной сети
такой алгоритм имеет вид [24]:
SYNCHDONiFOR 0,1= ;
));1()2(( −⋅+ iDDELAY
DOSjFOR i,1= ;
BEGIN ;
DOMkFOR j,1= ;
BEGIN ;
)3()1( iii
j
iii pxELSExvTHENkIFx +∗==
),(),,( jj mkhi
j
imkhii xvp ++ ∗=
;END
( )iji xfx =
i
j
i xy =
;)2( 1+⋅+ jmDDELAY
END .
В конструкции (3) величина D – время
реализации функции активации нейронов;
( )0,1 NiSi = – вспомогательный массив, к
{ }i
Ni
SS
01
max
≤≤
= ; jM – количество синапти-
ческих связей нейронов j -го слоя, к
12 += jj mM , где Ν∈jm ; операторы
...=ix и ...=ip , разделённые запятой,
выполняются синхронно; j
inv – вес,
соответствующий связи между n -м нейро-
ном )1( −j -го слоя и i -м нейроном j -го
слоя, если in ≥ , а также связи между n -м
и i -м нейронами j -го слоя, если in < ;
( )0,1 Nlxl = , ):( SSiy i
S
i =∀ – соответ-
ственно входной и выходной сигналы НС;
j
iy – значение активационной функции i -
го нейрона j -го слоя; функция ),( jmkh –
условный оператор
[ ]( )2/2/ kkIF = , THEN , 12/ −− jmk ,
2/)1( +kELSE ; jf – активационная
функция нейронов j -го слоя. Запись ][a
обозначает целую часть числа a .
Рассмотрим пример архитектуры НС,
вычисления в которой могут быть выпол-
нены с помощью (3).
Для ,3,1;6 5261
0 ===== SSSSN
;443 == SS ,51 =M 3432 === MMM
она показана на рисунке.
Моделі та засоби паралельних і розподілених програм
21
1
x
2
x
3
x
4
x
5
x
6
x
4
3
y
4
4
y
Рисунок
Согласно алгоритму (3) распараллели-
вание обработки информации в сети осу-
ществляется как на междунейронном, так
и на внутринейронном уровнях.
В работе [27] решена проблема органи-
зации параллельных вычислений в дву-
мерной многослойной НС с проективными
и латеральными связями в случае, когда
время реализации активационной
функции каждого из нейронов слоя, во-
обще говоря, является разным. Тогда алго-
ритм (3) немного изменится, прежде всего
операторы задержки.
Первый выглядит так:
))1()2(( 1 −⋅+ iDDELAY ,
второй – THENDDIFDELAY jj )(( 1 >+
)(2 1
1
jj
j
j DDmD −+⋅+ +
+ )( 1+−⋅ jIi
))()(
2
1
1
1
iPDD
mDELSE
jjj
j
j
−⋅−+
+⋅+
+
+
+
.
Здесь
}}:'{:max{:),1( ' jSiiDDSjj i
j
i
j ≥∈==∀ ,
где j
iD – время реализации активационной
функции i-го нейрона j-го слоя; j
j PI , –
соответственно минимальный и максима-
льный номера нейронов j -го слоя. Отме-
тим, что данный оператор задержки при-
веден при условии 01
1 ≤+− +
+
jj
j PPm .
Кроме этого, десятый оператор в (3) будет
выглядеть таким образом: ( )i
j
ii xgx = , где
j
ig – активационная функция i-го нейрона
j-го слоя.
Для организации массовых вычисле-
ний в трёхмерной НС с проективными и
латеральными связями предлагается сле-
дующий ПКА [26]:
{ }
SYNCHDO
NjNijijiFOR 211111 ,1;,1:),(),( ==∈
))1()2(
)1())1(24((
−⋅++
+−⋅⋅+++
jD
iDnnDELAY
DOSkFOR ji,1=
BEGIN
DOVlFOR k,1=
BEGIN
,jipjixELSE
jixk
ji,jivTHEN
)1l(IFjix
+
∗
==
(4)
)n,l(pj)n,m,l(hi
k
ij),n,l(pj)n,m,l(hi rk
xvpij ++∗++=
;END
)( jikji xfx =
ji
k
ji xy =
;)2)1(( 1 +⋅++⋅⋅ + nDnmDDELAY k
END .
Здесь операторы ...=jix и ...=jip ,
разделённые запятой, выполняются в син-
хронном режиме. Кроме этого,
21
0 NNN ⋅= , где },1:max{ 1
1 StNN t == ,
},1:max{ 1
2 StMN t == ;
),1;,1( 21 NjNiS ji == – вспомогательный
массив, определяющий структуру сети, к
},1;,1:max{ 21 NjNiSS ji === ;
)12()12( +⋅+= nmV kk , где Ν∈nmk , ;
k
srjiv , – вес, соответствующий связи ме-
жду ),( ji -м и ),( sr -м нейронами k -го
слоя, если { ;:),(),( 111 rijiji ≤∈
} Usj <1 { }sjriji ≥< 2222 ;:),( , или же
связи между ),( ji -м нейроном )1( −k -го и
Моделі та засоби паралельних і розподілених програм
22
),( sr -м нейроном k -го слоя при условии,
что { } Usjrijiji ≥≥∈ 1111 ;:),(),(
{ :),( 22 ji }sjri <> 22 ; ; ( ;,1 1Nix ji =
) ( )SSjiyNj ji
S
ji =∀= :,,,1 2 – соответстве-
нно входной и выходной сигналы НС; k
jiy
– значение активационной функции ),( ji -
го нейрона k -го слоя. Функции ),,( nmlh k
и ),( nlp – соответственно такие условные
операторы:
;)]24()22([
)]24()1([])2/[2/(
+++
−+−=
nnlELSE
mnlTHENllIF k
THENllIF )]2[2( =
)]24()1([)12(12 +−⋅+−−− nlnnl
/)22[()12(5.02 ++⋅+−+ nlnlELSE
)]24( +n .
В алгоритме (4) считается, что актива-
ционные функции нейронов различных
слоёв имеют одинаковое время реализа-
ции. В противном случае этот алгоритм
можно использовать, приняв
},1:max{ SjDD j == , где jD – количество
тактов, необходимых для выполнения jf .
Приведённые ПКА (3), (4) работают
при условии, что :)1,1( −=∀ Sjj
jj NN ≤+1 . Они ориентированы на реализа-
цию на специализированных вычисли-
тельных системах – квазисистолических
структурах. В работе [28] такие структуры
приведены для реализации массовых
вычислений в двумерных многослойных
НС с проективными и латеральными свя-
зями. Главное их отличие от чисто сис-
толических состоит в том, что допускается
одновременная передача данных из одной
«инстанции» сразу в несколько «точек
приёма». При этом учитываются различ-
ные типы и способы задания активацион-
ных функций нейронов.
3. Анализ параллельных вычислений
Будем считать, что время реализации
операций сложения и умножения одина-
ково и равно одному такту. Выполнение
вычислений в полностью связанных мно-
гослойных дву- и трёхмерной НС прямого
распространения в последовательном ре-
жиме требует соответственно
∑ ∑
= =
−
+⋅
S
j
N
i
j
ijj
j
TNN
1 1
12 и
∑ ∑∑
= = =
−−
+⋅⋅⋅
S
t
N
i
M
j
t
jitttt
t t
UMNMN
1 1 1
111
1
1
1
1 1
2 (5)
тактов, где j
iT , t
jiU – времена реализации
активационных функций i-го нейрона j-го
слоя в двумерной сети и ),( ji -го нейрона
t-го слоя в трёхмерной НС. Используя
алгоритмы (1), (2), оценки (5) можно
уменьшить соответственно до
( )∑
=
− +
S
j
j
j tN
1
12 и ( )∑
=
−− +⋅
S
t
t
tt DMN
1
0
1
1
1
1 , (6)
где },1:max{ j
j
i
j NiTt == ,
},1;,1:max{ 11
0 tt
t
ji
t MjNiUD === .
Если предположить, что каждый слой
сети содержит eN нейронов, а время
реализации активационной функции ней-
ронов j-го слоя равно j
et , то на основании
(5), (6) получим, что ускорение алгоритма
(1) равно eN , а ускорение (2) равно eN2
(эта оценка получена при условии, что
jj (∀ e
j
e NtS <<= :),1 ). Приведённые оцен-
ки ускорения будут иметь место и в слу-
чае, когда количество синаптических свя-
зей jK нейронов j-го слоя сети меньше
1−jN , т.е. когда НС уже не полностью, а
частично связанная. При этом будем счи-
тать, что :),1( Sjj =∀ j
ej tK >> .
Если для полностью связанной НС
прямого распространения предположить,
что =∀ jj ( j
j NNS 2/:),1 0= , причём
SN 20 ≥ , а время реализации активацион-
ной функции нейронов равно 0t , причём
00 Nt << , то в этом случае ускорения алго-
ритмов (1), (2) будут соответственно равны
3/0N и 3/2 0N (здесь 1
0
1
00 MNN ⋅= ).
Моделі та засоби паралельних і розподілених програм
23
Если в (1), (2) для распараллеливания
процедуры взвешенного суммирования
использовать режим, близкий к полному
двоичному дереву, то оценки (6) умень-
шатся соответственно до
( )∑
=
− ++
S
j
j
j tNS
1
1log и
( )∑
=
−− +⋅+
S
t
t
tt DMNS
1
0
1
1
1
1 )log( .
Алгоритмы (3), (4) для своего выпол-
нения требуют соответственно
)(
)2()2(
1
1
1∑
−
=
+⋅++
+++−+⋅+
S
j
jj
S
mDM
DMSAD
и
+++−⋅+
+−⋅⋅+++
DV)1J()D2(
)1I()D)1n()2n4((
S
(7)
( )∑
−
=
+ ++⋅+⋅++
1
1
1 2)1()1(
S
k
kk nmDV
тактов. Здесь }:max{ SSiA i == , а также
j∃ такое, что }:'max{ ' SSiI ji == и i∃
такое, что }:'max{ ' SSjJ ji == .
Последовательное выполнение вычисле-
ний в дву- и трёхмерной многослойных
НС с проективными и латеральными свя-
зями требует соответственно
∑∑
==
−+
iS
j
j
N
i
DM
11
)12(
0
и
∑∑∑
= = =
−+
1 2
1 1 1
)12(
N
i
N
j
S
k
k
ji
DV
(8)
такта.
Для двумерной сети, в которой
300,10000 == SN и iiSi == )300,1( ,
SiS i == )700,301( ,
iSi ( 1)1000,701 0 +−== iN в предположе-
нии, что jj (∀ MMS j == :),1 при ,1=D
3=M на основании первых оценок в (7),
(8) получим, что ускорение алгоритма (3)
равно 300.64, а при 11,7 == MD оно не-
сколько уменьшается и равно 258.68. С
увеличением числа синаптических связей,
например, при 21=M ускорение немного
увеличится и будет равно 278.63. Рас-
смотрим сеть, в которой количество ней-
ронов больше, чем в предыдущих при-
мерах:
=0N 2000,10000 =S , iiSi == )2000,1( ,
SiSi == )8000,2001( , == )10000,8001(iSi
10 +−= iN . При 3,1 == MD получим,
что ускорение алгоритма (3) в данном
случае равно 2526.83. Следовательно, с
увеличением количества нейронов сети
ускорение ПКА, реализующего в ней
массовые вычисления, тоже увеличива-
ется.
В работе [26] приведены численные
оценки ускорения алгоритма (4) для при-
меров трёхмерных многослойных НС с
проективными и латеральными связями.
Эти оценки подтверждают эффективность
предложенного ПКА выполнения массо-
вых вычислений.
Заключение. В работе развиты парал-
лельные методы решения ЗЦФ для органи-
зации вычислений в дву- и трёхмерных
многослойных НС прямого распростране-
ния и с проективными и латеральными
связями. В результате предложены парал-
лельные алгоритмы, ориентированы на
реализацию на вычислительных системах,
реализующих или имитирующих SIMD-
режим, и квазисистолических вычисли-
тельных структурах.
Целесообразность использования
предложенных алгоритмов подтверждена
оценками их ускорения.
1. Дубровин В.И., Морщавка С.В., Пиза Д.М.
и др. Распознавание растений по результа-
там дистанционного зондирования на ос-
нове многослойных нейронных сетей //
Математичні машини і системи. – 2000. –
№ 2/3. – С. 113–119.
2. Куссуль Э.М., Касаткина Л.М., Байдык
Т.Н. и др. Нейросетевые технологии рас-
познавания рукописных текстов // Управ-
ляющие системы и машины. – 2001. – № 2.
– С. 64–83.
3. Годич О., Щербина Ю. Застосування штуч-
них нейронних мереж до розв’язування
нелінійних задач про найменші квадрати //
Вісн. Львів. ун-ту. Сер. прикл. математика
та інформатика. – 2003. – Вип. 6. –
С. 182–190.
Моделі та засоби паралельних і розподілених програм
24
4. Chen K.-z., Leung Y., Leung K.S., Gao X.-b. A
Neural Network for Solving Nonlinear Pro-
gramming Problems // Neural Computing and
Applications. – 2002. – 11. – P. 103–111.
5. Valensa M., Ludermir T. Constructive neural
networks for function approximation // Proc.
of Internat. conf. on inductive modelling
ICIM. – Lviv; 20–25 May 2002. – 4. – P. 22–
27.
6. Aizenberg N.N., Aizenberg I.N. CNN–like
networks based on multi–valued and universal
binary neurons: learning and application to
image processing // Proc. of Third IEEE Inter.
Workshop on Cellular Neural Networks and
Their Applications, Rome, 1994, IEEE94
TH0693–2. – P.153–158.
7. Горбань А.Н., Россиев Д.А., Бутакова Е.В.
и др. Медицинские и физиологические
применения нейроимитатора «MultiNeu-
ron» // Нейроинформатика и её приложе-
ния: Материалы III Всерос. семинара, 6–8
октября 1995. – Красноярск: КГТУ, 1995. –
Ч. 1. – С. 101–113.
8. Резник А.М., Калина Е.А., Сычёв А.С. и др.
Многофункциональный нейрокомпьютер
NEUROLAND // Математичні машини і
системи. – 2003. – № 1. – С. 36–45.
9. Гриценко В.И., Мисуно И.С., Рачковский
Д.А. и др. Концепция и архитектура про-
граммного нейрокомпьютера SNC //
Управляющие системы и машины. – 2004.
– № 3. – С. 3–14.
10. Перспективные системы обработки инфор-
мации / Под ред. Я.А. Дуброва. – Львов,
1990. – 59 с. – (Препр. / АН УССР. Ин-т
прикладных проблем механики и матема-
тики;90–6).
11. Егоров В.М. Трёхмерные нейроподобные
оптические вычислительные структуры //
Автометрия. – 1993. – № 3. – С. 38–43.
12. Борисов Ю., Кашкаров В., Сорокин С. Ней-
росетевые методы обработки информации
и средства их программно-аппаратной
поддержки // Открытые системы. – 1997.–
№ 4. – С. 38–40.
13. Логовский А. Технология ПЛИС и её
применение для создания нейрочипов //
Открытые системы. – 2000. – №10.
http://www.osp.ru/os/2000/10/019.htm).
14. Шахнов В., Власов А., Кузнецов А.
Элементная база параллельных вычисле-
ний // Открытые системы. – 2001. – № 5/6.
http://www.osp.ru/os/2001/05-06/017.htm).
15. Вальковский В.А. Распараллеливание алго-
ритмов и программ. Структурный подход.
– М.: Радио и связь, 1989. – 176 с.
16. Вальковський В.О., Курбацький О.М.,
Полєтаєв С.М. Тотальне розпаралелю-
вання обчислень у нейронних мережах //
Волинський математичний вісник. – 1997.
– Вип. 4. – С. 22–24.
17. Вальковський В.О., Фарід Т.М. Про багато-
варіантну обробку сигналів у нейроні //
Вісник Держ. ун-ту «Львів. політехніка».
Комп’ютерна інженерія та інформ. техно-
логії. – 1998. – № 349. – С. 39–45.
18. Hrytsyk V.V., Aizenberg N.N., Bun R.A. and
others. The neural and neural-like networks:
synthesis, realization, application and future //
Information technologies and systems. –
1998. – N 1/2. – P. 15–55.
19. Вальковский В.А. К проблеме взаимосвязи
между нейронными сетями и задачей циф-
ровой фильтрации // Нейронные сети и мо-
дели: Тр. междунар. науч.-техн. конф.
«Нейронные, реляторные и непрерывноло-
гические сети и модели», Ульяновск, 19-21
мая 1998. – Т. 1. – С. 39–41.
20. Val’kovskii V.A. An optimal algorithm for
solving the problem of digital filtering // Pat-
tern Recognition and Image Analysis. – 1994.
– 4, N 3. – P. 241–247.
21. Вальковский В.А., Яджак М.С. Оптималь-
ный алгоритм решения двумерной задачи
цифровой фильтрации // Проблемы управ-
ления и информатики. – 1999. – № 6. –
С. 92–102.
22. Яджак М.С. Об оптимальном в одном
классе алгоритме решения трёхмерной за-
дачи цифровой фильтрации // Там же. –
2000. – № 6. – С. 66–81.
23. Захаров И.С., Лопин В.Н. Конвейерные
информационные процессы в многослой-
ных нейронных сетях // Радіоелектроніка,
інформатика, управління. – 1999. – № 1. –
С. 53–56.
24. Яджак М. Застосування алгоритмів
розв’язування задач цифрової фільтрації
для реалізації обчислень у нейронних ме-
режах // Вісн. Львів. ун-ту. Сер. прикл. ма-
тематика та інформатика. – 2003. – Вип. 6.
– С. 227–232.
25. Бодянский Е.В., Кулишова Н.Е., Руденко
О.Г. Обобщённый алгоритм обучения
формального нейрона // Кибернетика и
системный анализ. – 2002. – № 5. –
С. 176–182.
Моделі та засоби паралельних і розподілених програм
25
26. Вальковський В.О., Яджак М.С. Про
організацію паралельних обчислень
у нейронних мережах // Відбір і обробка
інформації. – 2003. – Вип. 19(95). –
С. 138–144.
27. Яджак М.С. Паралельна організація обчис-
лень у нейронних мережах одного
типу // Вісн. Львів. ун-ту. Сер. прикл. ма-
тематика та інформатика. – 2004. – Вип. 9.
– С. 204–210.
28. Яджак М.С. Моделювання нейронних ме-
реж з проективними та латеральними
зв’язками на квазісистолічних структурах
// Відбір і обробка інформації. – 2005. –
Вип. 23(99). – С. 122–127.
Получено 10.01.2008
Об авторах:
Анисимов Анатолий Васильевич,
доктор физико-математических наук,
профессор, декан факультета кибернетики,
Яджак Михаил Степанович,
кандидат физико-математических наук,
старший научный сотрудник.
Место работы авторов:
Киевский национальный университет
имени Тараса Шевченко
03187, Проспект Академика Глушкова 2,
корп. 6, к. 29.
Тел.: 8(044)521 3554;
Е-mail ava@unicyb.kiev.ua
Институт прикладных проблем механи-
ки и математики НАН Украины
им. Я.С. Постригача
79053, Львов, ул. Троллейбусная,
буд. 14, кв. 125.
Тел.: 8(032)239 9969; 239 9914.
е-mail: dept@iapmm.lviv.ua
yadzhak@zadarma.com
|
| id | nasplib_isofts_kiev_ua-123456789-322 |
| institution | Digital Library of Periodicals of National Academy of Sciences of Ukraine |
| issn | 1727-4907 |
| language | Ukrainian |
| last_indexed | 2025-11-27T16:21:49Z |
| publishDate | 2008 |
| publisher | Інститут програмних систем НАН України |
| record_format | dspace |
| spelling | Анисимов, А.В. Яджак, М.С. 2008-03-31T13:04:15Z 2008-03-31T13:04:15Z 2008 Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях / А.В. Анисимов, М. С. Яджак // Пробл. програмув. — 2008. — N 1. — С. 17-25. — Бібліогр.: 28 назв. — рос. 1727-4907 https://nasplib.isofts.kiev.ua/handle/123456789/322 519.681.5 Проведено огляд результатів, що стосуються паралельної організації масових обчислень у нейронних мережах. Розглядаються дво- і три-вимірні багатошарові мережі прямого поширення з проективними та латеральними зв’язками. Побудовано паралельні та паралельно-конвеєрні алгоритми, орієнтовані на виконання відповідно на обчислювальних системах, які реалізують SIMD-режим і квазісистолічні обчислювальні структури. Сделан обзор результатов, касающихся параллельно организации массовых вычислений в нейронных сетях. Рассматриваются дву- и трехмерные многослойные сети прямого распространения с проективными и латеральными связями. Построены параллельные и параллельно-конвейерные алгоритмы, ориентированы на выполнение соответственно на вычислительных системах, реализующих SIMD-режим и квазисистолические вычислительные структуры. The review of results go into problems of parallel organize mass calculations within neural networks is presented. Two- and three-dimensional multilayer networks of direct propagation path with projective and lateral links are considered. Parallel and parallel-pipeline algorithms have oriented on implementation on computing systems, which realize SIMD regime and quasisystolic calculating structures are constructed. uk Інститут програмних систем НАН України Моделі та засоби паралельних і розподілених програм Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях Parallel algorithms of executing mass computations in neural networks Article published earlier |
| spellingShingle | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях Анисимов, А.В. Яджак, М.С. Моделі та засоби паралельних і розподілених програм |
| title | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях |
| title_alt | Parallel algorithms of executing mass computations in neural networks |
| title_full | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях |
| title_fullStr | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях |
| title_full_unstemmed | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях |
| title_short | Параллельные алгоритмы выполнения массовых вычислений в нейронных сетях |
| title_sort | параллельные алгоритмы выполнения массовых вычислений в нейронных сетях |
| topic | Моделі та засоби паралельних і розподілених програм |
| topic_facet | Моделі та засоби паралельних і розподілених програм |
| url | https://nasplib.isofts.kiev.ua/handle/123456789/322 |
| work_keys_str_mv | AT anisimovav parallelʹnyealgoritmyvypolneniâmassovyhvyčisleniivneironnyhsetâh AT âdžakms parallelʹnyealgoritmyvypolneniâmassovyhvyčisleniivneironnyhsetâh AT anisimovav parallelalgorithmsofexecutingmasscomputationsinneuralnetworks AT âdžakms parallelalgorithmsofexecutingmasscomputationsinneuralnetworks |