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.
- the
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
All files are released under the Apache-2.0 license (see LICENSE
).