nihil21 / ica-tutorial

Tutorial on Independent Component Analysis

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ica-tutorial

Introduction

Tutorial on Blind Source Separation (BSS) and Independent Component Analysis (ICA).

The repository is structured as follows:

  • the Tutorial on ICA.ipynb Jupyter notebook contains the actual tutorial;
  • the ica_tutorial folder contains the utility code used in the notebook:
    • the ica package contains the implementation of ICA algorithms (i.e., FastICA and EFICA);
    • the preprocessing package contains common preprocessing steps (e.g., filtering and whitening);
    • the rls package contains the implementation of Recursive Least Squares (RLS) algorithms for ICA and whitneing;
    • the plotting package contains functions for plotting;
    • the utils package contains utility functions.

Environment setup

The code is compatible with Python 3.7+. To create and activate the Python environment, run the following commands:

python -m venv <ENV_NAME>
source <ENV_NAME>/bin/activate

Then, from within the virtual environment, the required packages can be installed with the following command:

pip install -r requirements.txt

License

All files are released under the Apache-2.0 license (see LICENSE).

About

Tutorial on Independent Component Analysis

License:Apache License 2.0


Languages

Language:Jupyter Notebook 98.1%Language:Python 1.9%