The topic of my PhD is Independent Component Analysis (ICA).


Picard stands for “Preconditioned ICA for Real Data”. This algorithm quickly solves maximum-likelihood ICA. It is detailed in Faster ICA by preconditioning with Hessian approximations.

Python code is available online at https://pierreablin.github.io/picard/.


Maximum-likelihood ICA

ICA can be seen as a maximum likelihood estimation problem.  This repository contains the Python translation of four second order algorithms to solve it, including Picard. It comes with a benchmarking script.