Joint diagonalization in Python
Project description
Quasi-Newton algorithm for joint-diagonalization
Summary
This Python package contains code for fast joint-diagonalization of a set of
positive definite symmetric matrices. The main function is qndiag
,
which takes as input a set of matrices of size (p, p)
, stored as a (n, p, p)
array, C
. It outputs a (p, p)
array, B
, such that the matrices
B @ C[i] @ B.T
(python), i.e. B * C(i,:,:) * B'
(matlab/octave)
are as diagonal as possible.
Installation of Python package
To install the package, do:
$ pip install -U https://github.com/pierreablin/qndiag/archive/master.zip
You can also simply clone it, and then do:
$ pip install -e .
To check that everything worked, the command
$ python -c 'import qndiag'
should not return any error.
Use with Matlab or Octave
See qndiag.m
and toy_example.m
in the folder matlab_octave
.
Cite
If you use this code please cite:
P. Ablin, J.F. Cardoso and A. Gramfort. Beyond Pham’s algorithm
for joint diagonalization. Proc. ESANN 2019.
https://www.elen.ucl.ac.be/Proceedings/esann/esannpdf/es2019-119.pdf
https://hal.archives-ouvertes.fr/hal-01936887v1
https://arxiv.org/abs/1811.11433
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file qndiag-0.1.tar.gz
.
File metadata
- Download URL: qndiag-0.1.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad0c69f4f1a1e1875e91c9b71c078a79901bad7bfb32d863ea4b99e941413914 |
|
MD5 | 85aaea7c500334605f13dc5cecdbd741 |
|
BLAKE2b-256 | d86ceceed3e58d495c22d12a3dc72e23cdf70a4102221220c5a2114fe21bebd6 |
File details
Details for the file qndiag-0.1-py3-none-any.whl
.
File metadata
- Download URL: qndiag-0.1-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0.post20200714 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d404afbd48f39109f8f7b9a8fb8a48a0cbabeca35f49bfced7203fb753b14ee5 |
|
MD5 | b4838589e9eaab0438076125abfabe92 |
|
BLAKE2b-256 | 42ebe764d1111ed9fd349a55433bd9a397a625d106edf9ce31b430a19b8b0ccd |