background image

 

79 

3.7.

  Rekurencyjne sieci neuronowe 

W  ogólności,  istnieją  dwie  metody  wprowadzenia  dynamiki  do  sieci  neuronowych,  a 

mianowicie  zastosowanie  zewnętrznej  pamięci  w  postaci  linii  opóźniającej  lub  też  użycie 
sprzężeń  zwrotnych.  Najprostszym  sposobem,  zastosowanym  w  modelu  neuronowym  typu 
NNOE przedstawionym na rys. 3.7, jest podanie na wejścia klasycznej sieci dwuwarstwowej 
sygnału wyjściowego w poprzednich chwilach dyskretnych. Model można podzielić na dwie 
części: nieliniowy statyczny aproksymator (sieć neuronowa) i zewnętrzną pamięć. Dlatego też 
omawiany model jest często nazywany siecią neuronową z liniami opóźniającymi. Podejście 
takie jest najczęściej stosowane w praktyce, umożliwia skuteczne modelowanie bardzo wielu 
nieliniowych  procesów  dynamicznych.  Warto  jednak  pamiętać,  że  model  taki  jest  znacznie 
mniej ogólny niż model w przestrzeni stanu (3.53). Na przykład, model typ NNOE nie nadaje 
się do procesów, w których występują nieliniowości niejednoznaczne, np. histereza lub luz. 

Drugą  metodą  umożliwiającą  wprowadzenie  dynamiki  do  sieci  neuronowych  jest 

wprowadzenie do nich sprzężeń zwrotnych. Ze względu na rodzaj sprzężeń zwrotnych można 
wyszczególnić dwie klasy sieci rekurencyjnych: 

Sieci globalnie rekurencyjne, w których sprzężenia występują między neuronami tej samej 

warstwy lub między neuronami różnych warstw. 

Sieci  lokalnie  rekurencyjne,  w  których  sprzężenia  zwrotne  znajdują  się  wyłącznie 

wewnątrz pojedynczych neuronów. Ogólna struktura sieci jest natomiast taka sama jak 
w przypadku klasycznej sieci perceptronowej. 

Sieć  RTRN  (ang.  Real  Time  Recurrent  Network)  służy  do  przetwarzania  sygnałów  w 

czasie rzeczywistym. Jej struktura została przedstawiona na rys. 3.25. Zawiera ona 

u

n

 wejść 

zewnętrznych, na które podawane są sygnały 

)

1

(

,

),

1

(

),

1

(

u

2

1

k

u

k

u

k

u

n

K

. Sieć ma tylko 

jedną warstwę, liczba neuronów wynosi K. Każdy z nich objęty jest sprzężeniem zwrotnym w 
taki  sposób,  że  sygnały  wyjściowe  opóźnione  o  jeden  takt  podawane  są  na  wejście  sieci. 
Wśród  K  neuronów  tylko 

y

n

  stanowi  wyjście  sieci.  Pozostałe 

y

n

  neuronów  to  neurony 

ukryte, niedostępne dla sygnałów zewnętrznych. 

Nieco inną strukturę ma rekurencyjna sieć neuronowa Elmana pokazana na rys. 3.26. Jest 

to  sieć  częściowo  rekurencyjna  o  strukturze  dwuwarstwowej.  Sieć  zawiera 

u

n

  wejść 

zewnętrznych,  liczba  neuronów  ukrytych  wynosi  K.  W  odróżnieniu  od  sieci  RTRN, 
sprzężenie  dotyczy  wyłącznie  warstwy  ukrytej.  Wyjście  sieci  stanowią  neurony  połączone 
tylko  z  warstwą  ukrytą,  podobnie  jak  w  sieciach  jednokierunkowych.  Przepływ  sygnałów 
odbywa  się  tylko  w  jedną  stronę,  tzn.  od  warstwy  ukrytej  do  warstwy  wyjściowej.  Różnica 
występuje w warstwie ukrytej, ponieważ opóźnione sygnały wyjściowe neuronów ukrytych są 
podawane na wejścia sieci. 

Główną  zaletą  rekurencyjnych  sieci  neuronowych  typu  RTRN  i  Elmana  jest  możliwość 

aproksymacji bardzo szerokiej klasy procesów dynamicznych, mogą być one też zastosowane 
do opisu szeregów czasowych. Do uczenia sieci stosuje się zazwyczaj algorytmy gradientowe. 
W  porównaniu  z  algorytmami  uczenia  klasycznej  sieci  jednokierunkowej  ich  złożoność 
obliczeniowa jest większa, ponieważ obliczając gradient należy uwzględnić rekurencję. 

background image

 

80

M

M

)

(

1

k

y

)

(

y

k

y

n

ϕ

ϕ

ϕ

M

)

1

(

u

k

u

n

)

1

(

1

k

u

M

ϕ

M

1

1

q

1

q

1

q

1

q

 

Rys. 3.25. Struktura sieci rekurencyjnej RTRN 

 

M

)

(

1

k

y

)

(

y

k

y

n

ϕ

ϕ

M

)

1

(

u

k

u

n

)

1

(

1

k

u

M

ϕ

1

1

1

q

1

q

1

q

+

+

M

 

Rys. 3.26. Struktura sieci rekurencyjnej Elmana 

background image

 

81 

Nieco  inną  strukturę  ma  sieć  neuronowa  RMLP  (ang.  Recurrent  Multi  Layer  Perceptron) 

pokazana na rys. 3.27. Omawiana sieć jest rozszerzeniem klasycznej sieci jednokierunkowej o 
dwóch warstwach ukrytych. Istnieją w niej dodatkowe połączenia skrośne między neuronami 
danej  warstwy  oraz  połączenia  rekurencyjne,  natomiast  poszczególne  warstwy  są  połączone 
jednokierunkowo.  Sieć  nadaje  się  do  aproksymacji  wielu  nieliniowych  procesów 
dynamicznych.  Istotną  wadą  sieci  jest  jednak  znaczna  złożoność  struktury,  co  oznacza,  że 
proces uczenia jest zazwyczaj złożony obliczeniowo. 

M

)

1

(

u

k

u

n

)

1

(

2

k

u

)

1

(

1

k

u

M

M

)

(

1

k

y

)

(

y

k

y

n

ϕ

ϕ

ϕ

M

ϕ

ϕ

ϕ

+

+

 

Rys. 3.27. Struktura sieci rekurencyjnej RMLP (dla przejrzystości nie zaznaczono sygnałów 

polaryzacji) 

W  stosunku  do  rekurencyjnych  sieci  neuronowych  omówionych  do  tej  pory  interesującą 

alternatywę  stanowią  sieci  lokalnie  rekurencyjne  globalnie  jednokierunkowe  (ang.  Locally 
Recurrent Globally Feedforward, w skrócie LRGF) [30]. Sieci LRGF mają strukturę podobną 
do  jednokierunkowych  sieci  perceptronowych,  ponieważ  składają  się  z  kilku  warstw 
neuronów, natomiast wszystkie sygnały przepływają przez sieć tylko w jednym kierunku – od 
wejść,  przez  warstwy  ukryte,  do  wejść.  W  przeciwieństwie  do  np.  rekurencyjnych  sieci 
RTRN  lub  Elmana,  w  sieci  LRGF  nie  występują  żadne  sprzężenia  zwrotne  między 
neuronami.  Właściwości  dynamiczne  sieci  uzyskuje  się  w  wyniku  zastosowania  neuronów 
dynamicznych,  które  zawierają  wewnętrzne  sprzężenia  zwrotne.  Istnieje  wiele  typów 
neuronów  dynamicznych,  najpopularniejsze  z  nich  to  neurony  z  filtrem  o  Nieskończonej 
Odpowiedzi  Impulsowej  (NOI)  i  neurony  z  filtrem  o  Skończonej  Odpowiedzi  Impulsowej 
(SOI). Strukturę obu neuronów pokazano na rys. 3.28 i rys. 3.29. 

1

q

)

(⋅

ϕ

1

w

b

A

i

A

i

+

+

x

i

(k)

x

i

(k+1)

 

Rys. 3.28. Schemat blokowy neuronu z filtrem NOI 

background image

 

82

1

q

1

w

c

A

+

x

i

(k)

x

i

(k+1)

 

Rys. 3.29. Schemat blokowy neuronu z filtrem SOI 

Neurony  z  filtrem  NOI  oraz  z  filtrem  SOI  mogą  posłużyć  do  budowy  sieci 

jednowarstwowych oraz dwuwarstwowych. Można udowodnić, że sieci dwuwarstwowe, przy 
odpowiedniej  liczbie  neuronów  z  filtrem  NOI,  są  w  stanie  odtworzyć  trajektorię  stanu 
wygenerowaną  przez  dowolną  funkcję  klasy  C

1

 (funkcja  i  jej  pierwsze  pochodne  są  ciągłe). 

Przedstawiona  na  rys.  3.30  dwuwarstwowa  sieć  LRGF  może  być  więc  z  powodzeniem 
zastosowane do modelowania bardzo szerokiej klasy procesów dynamicznych. 

Istnieje  możliwość  uproszczenia  dwuwarstwowej  sieci  LRGF  z  filtrami  NOI.  W 

przedstawionej na rys. 3.31 sieci kaskadowej stosuje się w drugiej warstwie prostsze neurony 
SOI oraz wprowadza się dodatkowe połączenia  między wejściami modelu a warstwą ukrytą 
neuronów  z  filtrami  SOI.  Sieć  kaskadowa  również  jest  w  stanie  odtworzyć  dowolną 
trajektorię stanu, natomiast jej struktura i uczenie jest prostsze niż pełnej sieci LRGF. 

M

)

(

1

k

y

)

(

y

k

y

n

M

)

1

(

u

k

u

n

)

1

(

1

k

u

NOI

NOI

NOI

NOI

NOI

NOI

M

+

+

M

Rys. 3.30. Struktura sieci lokalnie rekurencyjnej 

M

)

(

1

k

y

)

(

y

k

y

n

M

)

1

(

u

k

u

n

)

1

(

1

k

u

NOI

SOI

NOI

SOI

SOI

M

+

+

M

Rys. 3.31. Struktura kaskadowej sieci lokalnie rekurencyjnej