Skip to content

nihil21/ica-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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).