Jakie są właściwe kroki przetwarzania wstępnego do przeprowadzenia analizy niezależnych składników?

17

Jakie są właściwe kroki dla wstępnego przetwarzania moich przebiegów w celu późniejszego wykonania niezależnej analizy składowej (ICA)? Rozumiem, że chociaż dalsze wyjaśnienie tego nie boli, ale bardziej interesuje mnie dlaczego.

jonsca
źródło
Nie jestem pewien, dlaczego potrzebujesz przetwarzania wstępnego. Czy jest jakiś konkretny powód?
Phonon,
@Phonon Spotkałem śledczych, którzy przeliterowali swoje dane przed wykonaniem na nich ICA. Zastanawiałem się tylko, czy istnieje standardowa metoda.
jonsca,
Bardzo interesujące. Chciałbym zobaczyć konstruktywną odpowiedź.
Phonon,
1
W przypadku analizy widmowej sygnałów EEG ludzie wybielają, aby zmniejszyć dominujący efekt kształtu widma, który często ukrywa ciekawe rzeczy przy wysokich częstotliwościach. Tam przynajmniej trochę dyskusja o tym tutaj w materiałach uzupełniających. Czy jest to w szczególności powszechna sztuczka przed ICA, nie jestem pewien. Czy Twoja aplikacja ma sygnały EEG / MEG / LFP? Może ktoś, kto robi ICA, może udzielić pełnej odpowiedzi, jeśli mam rację. Interesujące pytanie - przeczytam o tym. 1/f
ImAlsoGreg
1
@Gigili To także część pytania. Jakie są uważane za normalne kroki?
jonsca,

Odpowiedzi:

15

Analiza niezależnych składników (ICA) służy do rozdzielenia liniowej mieszaniny statystycznie niezależnych i co najważniejsze nie Gaussowskich składników na jej składniki. Standardowym modelem bezgłośnego ICA jest

x=As

gdzie jest wektorem obserwacji lub danych, s jest sygnałem źródłowym / składowymi oryginalnymi (niegaussowskimi), a A jest wektorem transformacji, który określa liniowe mieszanie sygnałów składowych. Zazwyczaj A i S są nieznane.xsAAs

Przetwarzanie wstępne

Istnieją dwie główne strategie wstępnego przetwarzania w ICA, a mianowicie centrowanie i wybielanie / kulkowanie. Głównymi przyczynami przetwarzania wstępnego są:

  • Uproszczenie algorytmów
  • Zmniejszenie wymiarów problemu
  • Zmniejszenie liczby parametrów do oszacowania.
  • Podkreślanie cech zestawu danych, których nie można łatwo wyjaśnić za pomocą średniej i kowariancji.

Od wprowadzenia G. Li i J. Zhanga, „Sphering i jego właściwości”, The Indian Journal of Statistics, t. 60, Seria A, część I, s. 119–133, 1998:

Wartości odstające, skupienia lub inne rodzaje grup, a także stężenia w pobliżu krzywych lub nie na powierzchniach to prawdopodobnie ważne cechy, które mogą zainteresować analityków danych. Zasadniczo nie można ich uzyskać poprzez zwykłą znajomość średniej próby i macierzy kowariancji. W tych okolicznościach pożądane jest oddzielenie informacji zawartych w macierzy średniej i kowariancji i zmusza nas do zbadania aspektów naszych zbiorów danych innych niż te dobrze rozumiane natury. Centrowanie i sferowanie to proste i intuicyjne podejście, które eliminuje informacje o średniej kowariancji i pomaga uwypuklić struktury wykraczające poza korelację liniową i kształty eliptyczne, dlatego często wykonuje się je przed eksploracją wyświetlania lub analiz zestawów danych

1. Centrowanie:

Centrowanie jest bardzo prostą operacją i po prostu odnosi się do odejmowania średniej . W praktyce używasz średniej próbki i tworzysz nowy wektor x c = x - ¯ x , gdzie ¯ x jest średnią danych. Geometrycznie, odjęcie średniej jest odpowiednikiem tłumaczenia centrum współrzędnych do pochodzenia. Średnia może zawsze zostać ponownie dodana do wyniku końca (jest to możliwe, ponieważ mnożenie macierzy jest rozdzielne).E{x}xc=xx¯x¯

2. Wybielanie:

Wybielanie to przekształcenie, który przetwarza dane w taki sposób, że ma macierz kowariancji tożsamości, to znaczy, . Zwykle pracujesz z przykładową macierzą kowariancji,E{xcxcT}=I

Σ^=C.xcxcT

gdzie jest tylko moim leniwym symbolem zastępczym dla odpowiedniego współczynnika normalizacji (w zależności od wymiarów x ). Nowy bielony wektor jest tworzony jakoCx

xw=Σ^1/2xc

I

s = RandomReal[{-1, 1}, {2000, 2}];
A = {{2, 3}, {4, 2}};
x = s.A;
whiteningMatrix = Inverse@CholeskyDecomposition[[email protected]/Length@x];
y = x.whiteningMatrix;
FullGraphics@GraphicsRow[
  ListPlot[#, AspectRatio -> 1, Frame -> True] & /@ {s, x, y}]

wprowadź opis zdjęcia tutaj

sA

xw=AwswAw

E{xwxwT}=E{Awsw(Awsw)T}=AwE{swswT}AwT=AwAwT=I

siA

Jeśli po transformacji wartości własne są bliskie zeru, można je bezpiecznie odrzucić, ponieważ są one tylko szumem i utrudniają jedynie oszacowanie z powodu „przeuczenia”.

3. Inne przetwarzanie wstępne

Mogą istnieć inne etapy przetwarzania wstępnego związane z określonymi aplikacjami, których nie można udzielić w odpowiedzi. Na przykład widziałem kilka artykułów wykorzystujących dziennik szeregów czasowych i kilka innych, które filtrują szeregi czasowe. Mimo że może być odpowiedni do konkretnego zastosowania / warunków, wyniki nie są przenoszone na wszystkie pola.

Uważam, że można użyć ICA, jeśli co najmniej jeden ze składników jest gaussowski, chociaż nie mogę teraz znaleźć odniesienia do tego.


Dlaczego nazywa się to „sferą”?

nn{-1,1}NormalDistribution[]

wprowadź opis zdjęcia tutaj

Pierwszy to gęstość stawu dla dwóch nieskorelowanych Gaussów, drugi w trakcie transformacji, a trzeci po wybieleniu. W praktyce widoczne są tylko kroki 2 i 3.

Lorem Ipsum
źródło
2
Wow, zajmie mi to trochę czasu, ale dziękuję za mało!
jonsca
Przepraszam, myślałem, że już to zaakceptowałem.
jonsca