3. Ślepa separacja sygnałów

3.5. Sieć jednokierunkowa do separacji sygnałów

Wadą sieci rekurencyjnej jest potrzeba zapewnienia bezwzględnej stabilności przy separacji sygnałów, szczególnie wtedy, gdy macierz mieszająca  \mathbf{A}  jest bardzo źle uwarunkowana, a sygnały źródłowe różnią się znacznie pod względem amplitud. Należy ponadto zauważyć, że w sieci rekurencyjnej w każdym kroku występuje konieczność inwersji macierzy wagowej (wzór 9.8), co wydatnie zwiększa złożoność obliczeniową algorytmu. Zastosowanie sieci jednokierunkowej bez sprzężeń zwrotnych pozwala wyeliminować te problemy. Większość współczesnych rozwiązań ślepej separacji unika tych problemów stosując przekształcenie liniowe


 \mathbf{y} = \mathbf{Wx} (9.13)


odpowiadające sieci liniowej o jednym kierunku przepływu sygnałów. Macierz  \mathbf{W}  występująca w tej zależności jest macierzą pełną (nie występują założenia co do wartości zerowych pewnych wag). Sieć jednokierunkowa odpowiadające tej zależności pełni identyczną funkcję jak sieć sprzężeniem zwrotnym. Przyjmując, że wektor wyjściowy  \mathbf{y}  w obu rodzajach sieci jest równy sobie, można zapisać 


 \mathbf{W} \mathbf{x}(t)=\left(\mathbf{1}+\mathbf{W}_r\right)^{-1} \mathbf{x}(t) (9.14)


W równaniu tym  \mathbf{W}_r  oznacza macierz wag sieci rekurencyjnej, a  \mathbf{W} macierz sieci jednokierunkowej. Oznacza to, że obie sieci będą sobie równoważne, jeśli


 \mathbf{W}=\left(\mathbf{1}+\mathbf{W}_r\right)^{-1} (9.15)


W praktyce odchodzi się od równań różniczkowych na rzecz równania różnicowego, jako powszechnie stosowanej metody rozwiązania równań różniczkowych. Powstało wiele odmian algorytmów uczących implementujących relacje (9.13), charakteryzujących się szczególnie dobrymi własnościami separacji przy złym uwarunkowaniu macierzy mieszającej  \mathbf{A}  lub przy dużym zróżnicowaniu amplitud sygnałów źródłowych si(t). Można je w ogólności zaliczyć do algorytmów bazujących na statystykach drugiego rzędu (ang. Second Order Statistics - SOS) oraz na statystykach wyższych rzędów (ang. Higher Order statistics - HOS) [8]. Większość z tych algorytmów rozwinęła się na bazie teorii statystycznego przetwarzania sygnałów i nie wykorzystuje bezpośrednio zależności odnoszących się do sieci neuronowych.

Jednym z najprostszych algorytmów klasy SOS jest AMUSE (ang. Algorithm for Multiple Unknown Source Extraction). Algorytm ten bazuje na diagonalizacji macierzy kowariancji (9.3). Wykorzystuje dwie podstawowe operacje: wybielanie (ang. prewhitening) oraz diagonalizację macierzy kowariancji dla jednego opóźnienia czasowego. Można go traktować jako dwukrotne zastosowanie metody składników głównych PCA [8].

  • W pierwszym kroku estymowana jest macierz kowariancji oryginalnych wektorów  \mathbf{x}  bez opóźnień


 \mathbf{R}_{x x}(0)=\mathrm{E}\left[\mathbf{x}(k) \mathbf{x}^T(k)\right]  (9.16)


  • Następnie obliczana jej dekompozycja macierzy kowariancji według wartości własnych (ang. Eigen Value Decomposition - EVD),


 \mathbf{R}_{x x}(0)=\mathbf{V} \mathbf{L} \mathbf{V}^T (9.17)


w której  \mathbf{V}  jest macierzą ortogonalną, a  \mathbf{L}  macierzą diagonalną.

  • Następnie obliczana jest macierz  \mathbf{Q}  liniowej transformacji wybielającej


 \mathbf{Q}=\left[\mathbf{R}_\mathbf{xx}(0)\right]^{-1 / 2}=\left(\mathbf{V L}^{-1 / 2}\right) \mathbf{V}^T (9.18)


Wektor sygnałów obserwowanych  \mathbf{x}(k)  w wyniku wybielenia jest transformowany w wektor sygnałów wybielonych  \mathbf{z}(k)


\mathbf{z}(k)=\mathbf{Q} \mathbf{x}(k) (9.19)


  • Dla sygnałów wybielonych (zdekorelowanych)  \mathbf{z}(k)  obliczana jest nowa macierz kowariancji, tym razem z opóźnieniem czasowym równym jeden, z jednoczesną dekompozycją SVD


 \mathbf{R}_\mathbf{zz}(1)=\mathrm{E}\left[\mathbf{z}(k) \mathbf{z}^T(k-1)\right]=\mathbf{U S} \mathbf{V}^T (9.20)


gdzie  \mathbf{S}   jest macierzą diagonalną wartości osobliwych macierzy  \mathbf{R}_\mathbf{zz}(1)  a macierze  \mathbf{U}  \mathbf{V}  są ortogonalne.

  • Macierz separującą  \mathbf{W}  stanowiącą inwersję macierzy mieszającej  \mathbf{A}  ( \mathbf{W} = \mathbf{A}^{-1} ) określa wówczas wzór


 \mathbf{W} = \mathbf{U}^{T}\mathbf{Q} (9.21)


Nieznana macierz mieszająca  \mathbf{A}  może więc być estymowana w postaci odwrotnej do  \mathbf{W} , czyli ( \mathbf{A} = \mathbf{Q}^{T}\mathbf{U} ). Algorytm AMUSE jest zwykle dość wrażliwy na szum zakłócający pomiary. Dla zwiększenia jego odporności można w drugim kroku zamiast macierzy kowariancji dla jednego opóźnienia czasowego użyć liniowej kombinację wielu macierzy kowariancji dla różnych opóźnień czasowych. Można zastosować równoczesną diagonalizację kilkunastu lub nawet kilkudziesięciu macierzy kowariancji. W takim przypadku macierz kowariancji  \mathbf{R}_{zz} jest wartością oczekiwaną (średnią) z macierzy kowariancji obliczonych dla wielu (K) realizacji.


\mathbf{R}_\mathbf{zz}(p)={E}\left[\mathbf{z}(k) \mathbf{z}^T(k-p)\right]=\mathbf{U S} \mathbf{V}^T (9.27)


dla p=1,2,…,K. Taki sposób postępowania został zaimplementowany miedzy innymi w algorytmie SOBI (ang. Second Order Blind Identification).

W przypadku algorytmów bazujących na statystykach wyższych rzędów wykorzystuje się niezależność statystyczną sygnałów (ICA). We współczesnych rozwiązaniach algorytmów uczących macierz  \mathbf{W}  otrzymuje się z iteracji na iterację w postaci dyskretnej


\mathbf{W}(k+1)=\mathbf{W}(k)+\Delta \mathbf{W}(k) (9.28)


unikając w ten sposób potrzeby rozwiązania układu równań różniczkowych. Istnieje wiele różnych rozwiązań ślepej separacji należących do rodziny ICA. Spośród nich można wymienić [8]:

  • algorytm Cichockiego-Amari-Younga


 \Delta \mathbf{W}(k)=\eta(t) [ \mathbf{L}-\mathbf{f}(\mathbf{y}(k)) \mathbf{g}^T(\mathbf{y}(k)) ] \mathbf{W}^{-1} (9.29)


gdzie   \mathbf{L}  jest macierzą diagonalną o elementach  \lambda_{ii} \geq  0  (najczęściej  \lambda_{ii} = 1 ).

  • algorytm opierający się na gradiencie naturalnym prof. Amari


 \left.\Delta \mathbf{W}(k)=\eta(t) [ \mathbf{L}-\mathbf{f}(\mathbf{y}(k)) \mathbf{g}^T(\mathbf{y}(k))\right] \mathbf{W} (9.30)


Macierz  \mathbf{L}  dobiera się podobnie jak w algorytmie Cichockiego-Amari-Younga.

  • algorytm Cardossa


 \Delta \mathbf{W}(k)=\eta(t)\left[\mathbf{1}-\mathbf{y}(k) \mathbf{y}^T(k)-\alpha \mathbf{f}(\mathbf{y}(k)) \mathbf{g}^T(\mathbf{y}(k))+\beta \mathbf{g}(\mathbf{y}(k)) \mathbf{f}^T(\mathbf{y}(k))\right] \mathbf{W} (9.31)

 

gdzie \alpha i  \beta są współczynnikami liczbowymi z zakresu  [0, 1].

Podobnie jak w sieciach rekurencyjnych, współczynnik uczenia \eta(k) stanowi funkcję malejącą w czasie do zera. Zwykle jest to funkcja wykładnicza postaci \eta(t)=A e^{-\alpha k / \tau}, o wartości amplitudy  A i stałej czasowej  \tau dobieranej indywidualnie dla poszczególnych przypadków.