AS cwiczenia ICA

Z Brain-wiki

Analiza składowych niezależnych

Ćwiczenie 1

  • Wygeneruj 3-kanałowy sygnał źródłowy S będący superpozycją sinusa o częstości 5 Hz, prostokąta i piły z odpowiednimi współczynnikami, określanymi jako współczynniki mieszania:

A = np.array([[1, 1, 1], [2.0, 0.5, 1.0], [1.5, 1.5, 0.5]]).T

  • Przeprowadź dekompozycję sygnału przy pomocy implementacji ICA w pakiecie scikit-learn. W tym celu należy zaimportować funkcję FastICA:
from sklearn.decomposition import FastICA

Dekompozycja ICA wygląda następująco:

ica = FastICA(n_components=3) # liczba komponentów równa jest liczbie kanałów
S_ = ica.fit_transform(X) # macierz zrekonstruowanych sygnałów źródłowych S; X jest macierzą mieszanin
A_ = ica.mixing_ # wyestymowana macierz mieszająca
  • Następnie porównaj otrzymany wynik z wynikiem dekompozycji przeprowadzonej przy pomocy programu Svarog. W tym celu wyeksportuj sygnał do pliku binarnego, a następnie wybierz Tools -> Independent Component Analysis -> Compute ICA.