Laboratorium EEG/CSP: Różnice pomiędzy wersjami

Z Brain-wiki
m
Linia 1: Linia 1:
 
[[Laboratorium_EEG]]/BSS
 
[[Laboratorium_EEG]]/BSS
  
=Prezentacja=
+
=Plan zajęć=
[https://brain.fuw.edu.pl/edu/images/2/2f/BSS.pdf slajdy z prezentacji]
 
  
=Ślepa separacja źródeł (BSS)=
+
Materiał realizowany jest w ciągu 3 tygodni (6 spotkań po ~2,5 h).
{{hidden begin|title=Wstęp teoretyczny do BSS}}
 
Rozważmy ''N''-kanałowy sygnał EEG.
 
Próbkę tego sygnału możemy przedstawić jako punkt w przestrzeni rozpiętej przez osie, z których każda reprezentuje wartość potencjału w jednym kanale. Cały sygnał tworzy w tej przestrzeni chmurę punktów. Rozciągłość tej chmury w danym kierunku mówi nam o wariancji (zmienności) sygnału w tym kierunku.  
 
  
Taki zbiór punktów wygodniej jest analizować w układzie współrzędnych zgodnym z osiami głównymi macierzy kowariancji.
+
{| class="wikitable"
W dalszej części rozważań założymy, że te przestrzenie, w których rozważamy sygnały są przestrzeniami wektorowymi, a pojedyncze próbki wielokanałowego sygnału są wektorami.  
+
|-
[[Plik:Kowariancja.png|200px|center]]
+
! Sesja !! Temat !! Kluczowe sekcje na tej stronie
 +
|-
 +
| '''1''' || Wykład BSS + CSP; ćwiczenie symulacyjne
 +
| [[#Ślepa separacja źródeł (BSS)|Ślepa separacja źródeł]], [[#Common Spatial Pattern|Common Spatial Pattern]], [[#Ćwiczenie symulacyjne|Ćwiczenie symulacyjne]]
 +
|-
 +
| '''2'''|| Dane P300: wczytanie, cięcie epok, wizualizacja ERP, implementacja CSP
 +
| [[#Analiza wstępna|Analiza wstępna]], [[#ZADANIE: Analiza CSP|Analiza CSP]]
 +
|-
 +
| '''3'''|| Mapki topograficzne; separacja cech
 +
| [[#ZADANIE: Analiza CSP|Analiza CSP]] (cd.), [[#Wybór i separacja cech|Wybór i separacja cech]]
 +
|-
 +
| '''4'''|| cosSinCSP jako uogólnienie CSP; dane SSVEP
 +
| [[#Filtry przestrzenne dla SSEP|Filtry przestrzenne dla SSVEP]]
 +
|-
 +
| '''5'''|| Wykład ICA; komponenty alfa
 +
| [[#ICA jako filtr przestrzenny|ICA jako filtr przestrzenny]], [[#ZADANIE: Wydobywanie interesujących komponentów|Komponenty alfa]]
 +
|-
 +
| '''6'''|| Artefakty (ICLabel/MARA); synteza CSP/cosSinCSP/ICA
 +
| [[#ZADANIE: Identyfikacja artefaktów|Identyfikacja artefaktów]]
 +
|}
  
==Filtry przestrzenne i ślepa separacja źródeł==
+
=Sesja 1: Ślepa separacja źródeł i CSP — wprowadzenie=
Sygnał EEG jest superpozycją aktywności elektrycznej wielu źródeł.
 
Jak można estymować aktywność samych źródeł?
 
[[Plik:Mieszanie.png|200px|center]]
 
Niech:
 
: <math>s(t)</math> - aktywność niezależnych źródeł,
 
: <math>x(t)</math> mierzony sygnał
 
: <math>A</math> macierz przejścia taka, że:
 
::<math>x(t) = A s(t)</math> (*)
 
:<math>s(t) = A^{-1}x(t) = P x(t)</math>
 
Macierz kowariancji dla sygnałów <math>x(t)</math> estymujemy tak:
 
:<math> C_x = E[x(t)x(t)^T]</math>
 
Podstawiając (*) mamy:
 
:<math> C_x = E[x x^T] = E[As(As)^T] = A E[s s^T] A^T = A C_s A^T</math>
 
Z założenia, że źródła są niezależne wynika, że macierz <math>C_s</math> jest diagonalna.
 
Przekształcając powyższe równanie możemy zapisać:
 
:<math>A^{-1} C_x (A^T)^{-1} = P C_x P^T = C_s</math>
 
Odwzorowanie <math>P = A^{-1}</math> diagonalizuje macierz <math>C_x</math>.
 
  
Powyższe rozumowanie jest słuszne w przypadku gdy mamy do czynienia z sygnałem stacjonarnym, tzn. jego macierz kowariancji jest niezależna od czasu, czyli przez cały czas aktywna jest ta sama konfiguracja źródeł niezależnych.
+
;Czas: ~60 min wykład + ~90 min ćwiczenie symulacyjne
W przypadku gdy tak nie jest to konstrukcję filtra przestrzennego można oprzeć o  jednoczesną diagonalizację macierzy kowariancji odpowiadających różnym stanom osoby badanej.
 
  
[[Plik:Diagonalizacja.png|200px|center]]
+
Zajęcia wprowadzają do problemu filtracji przestrzennej sygnałów EEG.
 +
Punktem wyjścia jest ogólny problem ślepej separacji źródeł (BSS),
 +
z którego CSP wyłania się jako szczególny przypadek dla dwóch warunków
 +
eksperymentalnych. Filtry przestrzenne omawiane na tych zajęciach stanowią
 +
fundament klasycznych metod BCI (P300, SSVEP, motor imagery) oraz są
 +
bezpośrednim odpowiednikiem warstw przestrzennych w sieciach neuronowych
 +
takich jak ShallowConvNet i EEGNet — do tej analogii wrócimy w sesji 6.
  
==Common Spatial Pattern ==
+
[https://drive.google.com/file/d/1WrXgWWDJ7g5ZdYltm_8s2NXbGamw4R8N/view?usp=sharing Slajdy do wykładu (PDF)]
===Koncepcja===
 
Dla ustalenia uwagi możemy myśleć o eksperymencie wywołującym potencjał P300. Mamy w nim dwie sytuacje eksperymentalne. Oznaczmy <math>T</math> (target) próby, w których pojawił się oczekiwany bodziec, zaś  <math>NT</math> (non-target) gdy pojawił się bodziec standardowy.
 
Chcielibyśmy znaleźć taki montaż (czyli taką kombinację liniową kanałów), który maksymalizuje stosunek mocy (wariancji) sygnałów rejestrowanych w dwóch rożnych warunkach eksperymentalnych.
 
  
===Formalizm===
+
;Zakres wykładu:
Metoda ta polega na znalezieniu takiego kierunku <math>w</math> w przestrzeni sygnałów, że sygnał z warunku <math>T</math> rzutowany na ten kierunek ma dużą wariancje a sygnał z warunku <math>NT</math> ma wariancję małą.
+
* model generatywny EEG: <math>x(t) = As(t)</math>, macierz kowariancji, idea diagonalizacji
 +
* BSS jako ogólny problem separacji źródeł
 +
* CSP jako szczególny przypadek: dwa warunki eksperymentalne, iloraz Rayleigha, uogólnione zagadnienie własne
 +
* interpretacja filtrów i topografii źródeł
  
Rzutowanie sygnału <math>x(t)</math> na kierunek <math>w</math> odbywa się przez policzenie iloczynu skalarnego dla każdej chwili czasu <math>t</math>:
+
;Ćwiczenie symulacyjne:
:<math> s_w(t) = w^T x(t)</math>
+
Zob. [[#Ćwiczenie symulacyjne|Ćwiczenie symulacyjne]] w sekcji CSP poniżej.
Wariancja tego rzutowanego sygnału to:
 
:<math> \mathrm{var}(s_w) = E[s_w s_w^T] = E[ w^T x (w^T x)^T] = w^T E[x x^T] w = w^T C_x w </math>
 
Zatem znalezienie właściwego kierunku rzutowania można wyrazić jako szukanie maksimum wyrażenia <math> J(w) </math> (jest to tzw. iloraz Rayleigha):
 
: <math>J(w) = \frac{w^T C_T w}{w^T C_{NT} w}  </math>
 
Ekstremum tego ilorazu można znaleźć poprzez policzenie gradientu <math>J(w)</math> i przyrównanie go do zera:
 
:<math> \nabla J(w) =  \frac{ 2 C_{T} w \left(w^T  C_{NT} w\right)  -2C_{NT} w \left(w^T  C_{T} w \right)}{\left(w^T  C_{NT} w\right)^2} = \frac{  2}{w^T  C_{NT} w}\left[    C_{T}w  -\frac{w^T  C_{T} w}{w^T  C_{NT} w}  C_{NT} w \right]</math>
 
Przyrównując to wyrażenie do zera dostajemy do rozwiązania tzw. uogólnione zagadnienie własne:
 
:<math>      C_{T}w  =\frac{w^T  C_{T} w}{w^T  C_{NT} w}  C_{NT} w  </math>
 
We wzorze tym liczba <math>\lambda=\frac{w^T  C_{T} w}{w^T  C_{NT} w}</math> spełniająca to równanie jest uogólnioną wartością własną, wtedy <math>w</math> jest uogólnionym wektorem własnym odpowiadającym tej wartości.
 
 
 
Aby znaleźć <math> \lambda</math> i <math>w</math> możemy wykorzystać w Matlabie funkcję <tt>eig</tt>. Funkcja ta rozwiązuje (również) uogólnione zagadnienia własne postaci ''Aw''=&lambda;''Bw'' dostarczając w wyniku macierz wektorów własnych (w kolumnach) oraz macierz zawierającą na przekątnej odpowiadające im wartości własne.
 
{{hidden end}}
 
 
 
<!--
 
Odwzorowanie to można przedstawić w postaci macierzy <math>P</math>, której każdy wiersz zawiera wagi dla odpowiednich kanałów.
 
Macierz zawierająca sygnał <math>X^{\pm}(t)</math>
 
ma wymiary <math>C \times  N</math>, gdzie
 
<math>C</math> to liczba kanałów EEG, natomiast
 
<math>N</math> to liczba próbek dla każdego z kanałów.
 
Macierz <math>P</math> przekształca sygnał <math>X^{\pm}(t)</math>  zgodnie ze wzorem:
 
:<math>X^{\pm}_{CSP}(t)=P^T  X^{\pm}(t) </math>
 
Załóżmy dalej, że sygnały <math>X^{+}_{CSP} (t)</math> i <math>X^{-}_{CSP} (t)</math> są generowane przez niezależne procesy stochastyczne, tzn. spełnione są następujące warunki.
 
# Syganły <math>X^{+}_{CSP} (t)</math> i <math>X^{-}_{CSP} (t)</math> są niezależne.
 
# Brak korelacji pomiędzy kanałami w sygnałach<math>X^{+}_{CSP} (t)</math> i <math>X^{-}_{CSP} (t)</math>.
 
# Przynajmniej dla jednego z kanałów wariancja przetransformowanego sygnału jest maksymalna przy wystąpieniu bodźca i minimalna przy jego braku.
 
Po przemnożeniu równania 2.3 przez <math>(X^{\pm}_{CSP} (t))^T</math> otrzymamy macierz kowariancji przetransformowanych sygnałów uśrednioną po realizacjach:
 
:<math>R^{\pm}_{CSP} (t) = X^{\pm}_{CSP} (t)(X^{\pm}_{CSP} (t))^T = P^T X^{\pm} (t) (X^{\pm}(t))^T P = P^T R^{\pm}P</math>  (2.4)
 
Gdzie <math>R^{\pm}</math> to macierz kowariancji sygnału uśredniona po realizacjach. Z warunków 1 i 2 wynika, że macierze <math>R^{+}_{CSP}</math> i <math>R^{-}_{CSP}</math> muszą być diagonalne, natomiast z warunku 3, że ich suma daje macierz jednostkową:
 
:<math>R^{+}_{CSP} + R^{-}_{CSP} = 1 </math>  (2.5)
 
Tak więc suma par diagonalnych wartości (<math>k^{+}_{i}</math> i <math>k^{-}_{i}</math>) w macierzach <math>R^{+}_{CSP}</math> i <math>R^{-}_{CSP}</math> musi być równa 1.
 
Korzystając z równania 2.5 wartości na przekątnej można również zapisać za pomocą wzoru:
 
 
 
:<math>k^{+}_{i} = \vec{p}^{T}_{i} R^{+} \vec{p}_{i}    </math> (2.6)
 
:<math>k^{-}_{i} = \vec{p}^T_{i} R^{-}\vec{p}_{i} </math> (2.7)
 
gdzie <math>\vec{p}_{i}</math> to kolumnowy wektor macierzy <math>P</math>. Po przekształceniach ilorazu równań 2.6 i 2.7 można
 
otrzymać równanie:
 
 
 
:<math>R^{+} \vec{p}_{i} = \frac{k^{+}_{i}}{k^{-}_{i}} R^{-} \vec{p}_{i} </math>  (2.8)
 
 
Równanie to przedstawia ogólną formę zagadnienia wartości własnych. Takie przedstawienie problemu umożliwia zastosowanie do jego rozwiązania wydajnych metod algebraicznych.
 
  
  
Wektor własny <math>\vec{p}_i</math> jest interpretowany jako filtr przestrzenny. Dzięki transformacie <math>P</math> sygnał zostaje przeniesiony do przestrzeni, dla której różnica wariancji dla poszczególnych klas jest największa. Zgodnie z równaniem 2.5 najbardziej różniące się od siebie kanały są skorelowane z największą wartością własną <math>k^{+}</math>.
 
-->
 
  
 
====Ćwiczenie symulacyjne ====
 
====Ćwiczenie symulacyjne ====
Linia 840: Linia 801:
 
Przelicz potencjały z elektrod, w których występuję odpowiedź ASSR na montaż Hjortha i powtórz analizę opisaną powyżej.
 
Przelicz potencjały z elektrod, w których występuję odpowiedź ASSR na montaż Hjortha i powtórz analizę opisaną powyżej.
 
--->
 
--->
 +
 +
 +
 +
<!--
 +
STARA WERSJA:
 +
 +
<!--
 +
=Prezentacja=
 +
[https://brain.fuw.edu.pl/edu/images/2/2f/BSS.pdf slajdy z prezentacji]
 +
 +
=Ślepa separacja źródeł (BSS)=
 +
{{hidden begin|title=Wstęp teoretyczny do BSS}}
 +
Rozważmy ''N''-kanałowy sygnał EEG.
 +
Próbkę tego sygnału możemy przedstawić jako punkt w przestrzeni rozpiętej przez osie, z których każda reprezentuje wartość potencjału w jednym kanale. Cały sygnał tworzy w tej przestrzeni chmurę punktów. Rozciągłość tej chmury w danym kierunku mówi nam o wariancji (zmienności) sygnału w tym kierunku.
 +
 +
Taki zbiór punktów wygodniej jest analizować w układzie współrzędnych zgodnym z osiami głównymi macierzy kowariancji.
 +
W dalszej części rozważań założymy, że te przestrzenie, w których rozważamy sygnały są przestrzeniami wektorowymi, a pojedyncze próbki wielokanałowego sygnału są wektorami.
 +
[[Plik:Kowariancja.png|200px|center]]
 +
 +
==Filtry przestrzenne i ślepa separacja źródeł==
 +
Sygnał EEG jest superpozycją aktywności elektrycznej wielu źródeł.
 +
Jak można estymować aktywność samych źródeł?
 +
[[Plik:Mieszanie.png|200px|center]]
 +
Niech:
 +
: <math>s(t)</math> - aktywność niezależnych źródeł,
 +
: <math>x(t)</math> mierzony sygnał
 +
: <math>A</math> macierz przejścia taka, że:
 +
::<math>x(t) = A s(t)</math> (*)
 +
:<math>s(t) = A^{-1}x(t) = P x(t)</math>
 +
Macierz kowariancji dla sygnałów <math>x(t)</math> estymujemy tak:
 +
:<math> C_x = E[x(t)x(t)^T]</math>
 +
Podstawiając (*) mamy:
 +
:<math> C_x = E[x x^T] = E[As(As)^T] = A E[s s^T] A^T = A C_s A^T</math>
 +
Z założenia, że źródła są niezależne wynika, że macierz <math>C_s</math> jest diagonalna.
 +
Przekształcając powyższe równanie możemy zapisać:
 +
:<math>A^{-1} C_x (A^T)^{-1} = P C_x P^T = C_s</math>
 +
Odwzorowanie <math>P = A^{-1}</math> diagonalizuje macierz <math>C_x</math>.
 +
 +
Powyższe rozumowanie jest słuszne w przypadku gdy mamy do czynienia z sygnałem stacjonarnym, tzn. jego macierz kowariancji jest niezależna od czasu, czyli przez cały czas aktywna jest ta sama konfiguracja źródeł niezależnych.
 +
W przypadku gdy tak nie jest to konstrukcję filtra przestrzennego można oprzeć o  jednoczesną diagonalizację macierzy kowariancji odpowiadających różnym stanom osoby badanej.
 +
 +
[[Plik:Diagonalizacja.png|200px|center]]
 +
 +
==Common Spatial Pattern ==
 +
===Koncepcja===
 +
Dla ustalenia uwagi możemy myśleć o eksperymencie wywołującym potencjał P300. Mamy w nim dwie sytuacje eksperymentalne. Oznaczmy <math>T</math> (target) próby, w których pojawił się oczekiwany bodziec, zaś  <math>NT</math> (non-target) gdy pojawił się bodziec standardowy.
 +
Chcielibyśmy znaleźć taki montaż (czyli taką kombinację liniową kanałów), który maksymalizuje stosunek mocy (wariancji) sygnałów rejestrowanych w dwóch rożnych warunkach eksperymentalnych.
 +
 +
===Formalizm===
 +
Metoda ta polega na znalezieniu takiego kierunku <math>w</math> w przestrzeni sygnałów, że sygnał z warunku <math>T</math> rzutowany na ten kierunek ma dużą wariancje a sygnał z warunku <math>NT</math> ma wariancję małą.
 +
 +
Rzutowanie sygnału <math>x(t)</math> na kierunek <math>w</math> odbywa się przez policzenie iloczynu skalarnego dla każdej chwili czasu <math>t</math>:
 +
:<math> s_w(t) = w^T x(t)</math>
 +
Wariancja tego rzutowanego sygnału to:
 +
:<math> \mathrm{var}(s_w) = E[s_w s_w^T] = E[ w^T x (w^T x)^T] = w^T E[x x^T] w = w^T C_x w </math>
 +
Zatem znalezienie właściwego kierunku rzutowania można wyrazić jako szukanie maksimum wyrażenia <math> J(w) </math> (jest to tzw. iloraz Rayleigha):
 +
: <math>J(w) = \frac{w^T C_T w}{w^T C_{NT} w}  </math>
 +
Ekstremum tego ilorazu można znaleźć poprzez policzenie gradientu <math>J(w)</math> i przyrównanie go do zera:
 +
:<math> \nabla J(w) =  \frac{ 2 C_{T} w \left(w^T  C_{NT} w\right)  -2C_{NT} w \left(w^T  C_{T} w \right)}{\left(w^T  C_{NT} w\right)^2} = \frac{  2}{w^T  C_{NT} w}\left[    C_{T}w  -\frac{w^T  C_{T} w}{w^T  C_{NT} w}  C_{NT} w \right]</math>
 +
Przyrównując to wyrażenie do zera dostajemy do rozwiązania tzw. uogólnione zagadnienie własne:
 +
:<math>      C_{T}w  =\frac{w^T  C_{T} w}{w^T  C_{NT} w}  C_{NT} w  </math>
 +
We wzorze tym liczba <math>\lambda=\frac{w^T  C_{T} w}{w^T  C_{NT} w}</math> spełniająca to równanie jest uogólnioną wartością własną, wtedy <math>w</math> jest uogólnionym wektorem własnym odpowiadającym tej wartości.
 +
 +
Aby znaleźć <math> \lambda</math> i <math>w</math> możemy wykorzystać w Matlabie funkcję <tt>eig</tt>. Funkcja ta rozwiązuje (również) uogólnione zagadnienia własne postaci ''Aw''=&lambda;''Bw'' dostarczając w wyniku macierz wektorów własnych (w kolumnach) oraz macierz zawierającą na przekątnej odpowiadające im wartości własne.
 +
{{hidden end}}
 +
-->
 +
<!--
 +
Odwzorowanie to można przedstawić w postaci macierzy <math>P</math>, której każdy wiersz zawiera wagi dla odpowiednich kanałów.
 +
Macierz zawierająca sygnał <math>X^{\pm}(t)</math>
 +
ma wymiary <math>C \times  N</math>, gdzie
 +
<math>C</math> to liczba kanałów EEG, natomiast
 +
<math>N</math> to liczba próbek dla każdego z kanałów.
 +
Macierz <math>P</math> przekształca sygnał <math>X^{\pm}(t)</math>  zgodnie ze wzorem:
 +
:<math>X^{\pm}_{CSP}(t)=P^T  X^{\pm}(t) </math>
 +
Załóżmy dalej, że sygnały <math>X^{+}_{CSP} (t)</math> i <math>X^{-}_{CSP} (t)</math> są generowane przez niezależne procesy stochastyczne, tzn. spełnione są następujące warunki.
 +
# Syganły <math>X^{+}_{CSP} (t)</math> i <math>X^{-}_{CSP} (t)</math> są niezależne.
 +
# Brak korelacji pomiędzy kanałami w sygnałach<math>X^{+}_{CSP} (t)</math> i <math>X^{-}_{CSP} (t)</math>.
 +
# Przynajmniej dla jednego z kanałów wariancja przetransformowanego sygnału jest maksymalna przy wystąpieniu bodźca i minimalna przy jego braku.
 +
Po przemnożeniu równania 2.3 przez <math>(X^{\pm}_{CSP} (t))^T</math> otrzymamy macierz kowariancji przetransformowanych sygnałów uśrednioną po realizacjach:
 +
:<math>R^{\pm}_{CSP} (t) = X^{\pm}_{CSP} (t)(X^{\pm}_{CSP} (t))^T = P^T X^{\pm} (t) (X^{\pm}(t))^T P = P^T R^{\pm}P</math>  (2.4)
 +
Gdzie <math>R^{\pm}</math> to macierz kowariancji sygnału uśredniona po realizacjach. Z warunków 1 i 2 wynika, że macierze <math>R^{+}_{CSP}</math> i <math>R^{-}_{CSP}</math> muszą być diagonalne, natomiast z warunku 3, że ich suma daje macierz jednostkową:
 +
:<math>R^{+}_{CSP} + R^{-}_{CSP} = 1 </math>  (2.5)
 +
Tak więc suma par diagonalnych wartości (<math>k^{+}_{i}</math> i <math>k^{-}_{i}</math>) w macierzach <math>R^{+}_{CSP}</math> i <math>R^{-}_{CSP}</math> musi być równa 1.
 +
Korzystając z równania 2.5 wartości na przekątnej można również zapisać za pomocą wzoru:
 +
 +
:<math>k^{+}_{i} = \vec{p}^{T}_{i} R^{+} \vec{p}_{i}    </math> (2.6)
 +
:<math>k^{-}_{i} = \vec{p}^T_{i} R^{-}\vec{p}_{i} </math> (2.7)
 +
gdzie <math>\vec{p}_{i}</math> to kolumnowy wektor macierzy <math>P</math>. Po przekształceniach ilorazu równań 2.6 i 2.7 można
 +
otrzymać równanie:
 +
 +
:<math>R^{+} \vec{p}_{i} = \frac{k^{+}_{i}}{k^{-}_{i}} R^{-} \vec{p}_{i} </math>  (2.8)
 +
 +
Równanie to przedstawia ogólną formę zagadnienia wartości własnych. Takie przedstawienie problemu umożliwia zastosowanie do jego rozwiązania wydajnych metod algebraicznych.
 +
 +
 +
Wektor własny <math>\vec{p}_i</math> jest interpretowany jako filtr przestrzenny. Dzięki transformacie <math>P</math> sygnał zostaje przeniesiony do przestrzeni, dla której różnica wariancji dla poszczególnych klas jest największa. Zgodnie z równaniem 2.5 najbardziej różniące się od siebie kanały są skorelowane z największą wartością własną <math>k^{+}</math>.
 +
-->
 +
-->

Wersja z 13:47, 13 kwi 2026

Laboratorium_EEG/BSS

Plan zajęć

Materiał realizowany jest w ciągu 3 tygodni (6 spotkań po ~2,5 h).

Sesja Temat Kluczowe sekcje na tej stronie
1 Wykład BSS + CSP; ćwiczenie symulacyjne Ślepa separacja źródeł, Common Spatial Pattern, Ćwiczenie symulacyjne
2 Dane P300: wczytanie, cięcie epok, wizualizacja ERP, implementacja CSP Analiza wstępna, Analiza CSP
3 Mapki topograficzne; separacja cech Analiza CSP (cd.), Wybór i separacja cech
4 cosSinCSP jako uogólnienie CSP; dane SSVEP Filtry przestrzenne dla SSVEP
5 Wykład ICA; komponenty alfa ICA jako filtr przestrzenny, Komponenty alfa
6 Artefakty (ICLabel/MARA); synteza CSP/cosSinCSP/ICA Identyfikacja artefaktów

Sesja 1: Ślepa separacja źródeł i CSP — wprowadzenie

Czas
~60 min wykład + ~90 min ćwiczenie symulacyjne

Zajęcia wprowadzają do problemu filtracji przestrzennej sygnałów EEG. Punktem wyjścia jest ogólny problem ślepej separacji źródeł (BSS), z którego CSP wyłania się jako szczególny przypadek dla dwóch warunków eksperymentalnych. Filtry przestrzenne omawiane na tych zajęciach stanowią fundament klasycznych metod BCI (P300, SSVEP, motor imagery) oraz są bezpośrednim odpowiednikiem warstw przestrzennych w sieciach neuronowych takich jak ShallowConvNet i EEGNet — do tej analogii wrócimy w sesji 6.

Slajdy do wykładu (PDF)

Zakres wykładu
  • model generatywny EEG: [math]x(t) = As(t)[/math], macierz kowariancji, idea diagonalizacji
  • BSS jako ogólny problem separacji źródeł
  • CSP jako szczególny przypadek: dwa warunki eksperymentalne, iloraz Rayleigha, uogólnione zagadnienie własne
  • interpretacja filtrów i topografii źródeł
Ćwiczenie symulacyjne

Zob. Ćwiczenie symulacyjne w sekcji CSP poniżej.


Ćwiczenie symulacyjne

Zastosowanie filtra CSP do detekcji potencjału P300

Analiza wstępna

Poszczególne etapy analizy proszę kodować w osobnych funkcjach. Funkcje te powinny być wywoływane z nadrzędnego skryptu, który powinien umożliwic wykoanie całości analiz.

  • Wczytać dane kalibracyjne do Matlaba i pociąć je na realizacje typu T — „target” (związane z wystąpieniami litery „B”) i NT — „non-target” (pozostałe litery) o długości −200 do +800 ms wokół triggerów. Dla każdej realizacji odjąć trend liniowy.
  • Sygnał zmontować wzgl. „połączonych uszu” i wyświetlić średnie przebiegi dla warunku T i NT w układzie topograficznym — można wykorzystać w tym celu poniższy fragment kodu.

Poniżej zaprezentowany jest przykładowy skrypt do cięcia danych wokół znaczników. Działa on z plikami zawartymi w archiwum:

Plik:KalibracjaP300.tar.gz

Korzysta z funkcji pomocniczych dostępnych w dystrybucji obci w katalogu

/usr/share/openbci/analysis/matlab_obci_signal_processing

Openbci można pobrać z https://github.com/BrainTech/openbci

ZADANIE: Analiza CSP

Przegląd badań o P300: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2715154/

Link do Read menager [1]

  • Wykonać analizę CSP wzmacniającą potencjał P300.
  • Zaprezentować średnią ze wszystkich kanałów źródłowych z warunku target (jeden kolor) i non-target (inny kolor) w subplotach ułożonych w prostokątnej siatce. Zaobserwować dla którego kanału średnie różnią się najbardziej. Czy jest związek tego kanału z wartościami własnymi?
  • Dla kanału najbardziej różnicującego wykonać mapki topograficzne (do wykonania tych mapek wykorzystać funkcję topoplot z pakietu eeglab) wektorów odpowiadających:
    • filtrowi przestrzennemu
    • rzutu topograficznego źródła na elektrody.

Filtry przestrzenne dla SSEP

ICA jako filtr przestrzenny

ZADANIE: Identyfikacja artefaktów

Proszę pobrać dane:

Pochodzą one z eksperymentu w którym osoba badana czytała słowa o różnych właściwościach wzbudzania emocji.

  • wczytaj je do eeglaba
  • wczytaj lokalizację kanałów z pliku Arousal-10-20-Cap.locs
  • obejrzyj przebiegi czasowe
  • odrzuć kanał z diodą (21) i z GSR (20)
  • zrób dekompozycję ICA
  • obejrzyj topografię komponentów
  • zidentyfikuj komponenty odpowiadające mruganiu i aktywności mięśniowej.
UWAGA
Aktualnie do wykrywania komponentów artefaktowych warto posłużyć się wtyczkami do eeglaba dostępnymi przez stronę:

https://sccn.ucsd.edu/eeglab/plugin_uploader/plugin_list_all.php

  • ICLabel
  • MARA

W raporcie:

  • zaprezentuj fragmenty sygnału zawierającego artefakty oczne i mięśniowe przed i po zastosowaniu czyszczenia poprzez usuwanie komponentów zdominowanych przez artefakty.
  • zaprezentuj topografię i przebiegi czasowe komponentów zidentyfikowanych jako artefakty oczne i mięśniowe.




-->