Podręcznik
3. Ślepa separacja sygnałów
3.4. Algorytmy uczące sieci rekurencyjnej
Rozwiązanie problemu separacji sygnałów przy zastosowaniu sieci rekurencyjnej zostało zaproponowane przez J. Heraulta i C. Juttena i ulepszone przez Cichockiego [8] sprowadza się do rozwiązania układu równań różniczkowych, opisujących zmiany wag sieci neuronowej dla każdej chwili czasowej
Zgodnie z modyfikacja Cichockiego wprowadza się sprzężenie zwrotne własne neuronu z wagą . Sprzężenie to powoduje samo-normalizację sygnałów wyjściowych, sprowadzając je wszystkie do takiego samego poziomu liczbowego (wartości znormalizowanej) i ułatwiając w ten sposób proces separacji. Wówczas zależności adaptacyjne wag opisane są wzorami (przy założeniu, że
nie zawierają składowej stałej)
![]() |
(9.10) |
dla wag łączących różne neurony , oraz
![]() |
(9.11) |
dla kolejnych wag sprzężenia własnego (wagi diagonalne macierzy ). Obie zależności można zapisać w postaci macierzowej wspólnej dla obu rodzajów wag
![]() |
(9.12) |
w której oznacza macierz wag sieci o wymiarze
, a
i
oznaczają wektory sygnałowe,
,
.
W praktyce stosuje się różne rodzaje funkcji i
, najczęściej przyjmując jedną z nich typu wypukłego, a drugą typu wklęsłego. Przykładowy wybór funkcji to
,
. W przypadku funkcji
dobre rezultaty uzyskuje się przy
,
,
,
, itp. Jak zostało udowodnione w pracy [8] obie funkcje
oraz
odpowiadają momentom statystycznym wyższych rzędów, które przy założeniu statystycznej niezależności sygnałów automatycznie zapewniają wartość średnią
równą zeru, co jest warunkiem zbieżności algorytmu uczącego. Wybór współczynnika uczenia
odgrywa istotną rolę w procesie adaptacji. W przypadku sygnałów stacjonarnych na początku uczenia jest to wartość stała, a następnie maleje do wartości minimalnej w miarę upływu czasu.
Z rozwiązania układu równań różniczkowych opisanych zależnością (9.12) otrzymuje się aktualne wartości wag, służące do określenia sygnałów wyjściowych opisanych wektorem , przy czym przy
.
Głównym źródłem zwiększonej efektywności algorytmu jest samo-normalizacja (do wartości jednostkowej) sygnałów wyjściowych . Mianowicie w stanie ustalonym
, skąd wynika, że
, co oznacza, że niezależnie od aktualnego poziomu sygnałów
następuje automatyczne skalowanie wszystkich sygnałów w sieci do poziomu jednostkowego. Badania symulacyjne sieci o zmodyfikowanym algorytmie uczenia wykazały, że możliwa jest separacja sygnałów o amplitudach różniących się nawet w stosunku
.
Program został przetestowany przy separacji wielu różnorodnych sygnałów, wykazując się bardzo dobrą skutecznością.



Na rys. 9.3 przedstawiono ilustracje procesu separacji czterech sygnałów si(t) o znacznie różniących się amplitudach
Rys. 9.3a przedstawia (u góry) sygnały oryginalne , rys. 9.3b - sygnały zmieszane
, a rys. 9.3c (na dole) - sygnały estymowane przez sieć neuronową w procesie separacji (sygnały niezależne będące repliką sygnałów oryginalnych). Sygnałami wejściowymi sieci neuronowej są sygnały zmieszane (trzy środkowe wykresy czasowe na rys. 9.3b). Ze względu na ogromną różnicę amplitud sygnałów oryginalnych w sygnałach zmieszanych podawanych na sieć widoczne są jedynie największe sygnały szumu, natomiast sygnały o małej amplitudzie są niezauważalne.
Proces separacji przeprowadzony został przy zastosowaniu funkcji nieliniowych i
oraz współczynniku uczenia
zmienianym adaptacyjnie przy wartości startowej równej 2000. Taki dobór parametrów pozwolił na separację wszystkich sygnałów, niezależnie od poziomu amplitud (trzy dolne wykresy czasowe na rys. 9.3c). Odseparowane przez sieć sygnały charakteryzowały się jednakowym poziomem amplitud, uzyskanym dzięki wprowadzeniu sprzężenia własnego neuronów. Ich kolejność występowania jest inna niż kolejność sygnałów oryginalnych.