In today's data-driven world, revealing hidden relationships across multiview datasets is critical. CCA-Zoo is your go-to library, featuring a robust selection of linear, kernel, and deep canonical correlation analysis methods.
Designed to be user-friendly, CCA-Zoo is inspired by the ease of use in scikit-learn
and mvlearn
. It provides a seamless programming experience with familiar fit
, transform
, and fit_transform
methods.
Whether you're a pip
enthusiast or a poetry
aficionado, installing CCA-Zoo is a breeze:
pip install cca-zoo
# For additional features
pip install cca-zoo[probabilistic, visualisation, deep]
For Poetry users:
poetry add cca-zoo
# For extra features
poetry add cca-zoo[probabilistic, visualisation, deep]
Note that deep
requires torch
and lightning
which may be better installed separately following the PyTorch installation guide.
probabilistic
requires numpyro
which may be better installed separately following the NumPyro installation guide.
visualisation
requires matplotlib
and seaborn
CCA-Zoo is designed to be compatible with the machine learning ecosystem. It is built on top of scikit-learn
, tensorly
, torch
, pytorch-lightning
, and numpyro
.
CCA-Zoo shines when it comes to high-dimensional data analysis. It significantly outperforms scikit-learn, particularly as dimensionality increases. For comprehensive benchmarks, see our script and the graph below.
Embark on a journey through multiview correlations with our comprehensive guide.
Your support means a lot to us! If CCA-Zoo has been beneficial for your research, there are two ways to show your appreciation:
- Star our GitHub repository.
- Cite our research paper in your publications.
For citing our work, please use the following BibTeX entry:
@software{Chapman_CCA-Zoo_2023,
author = {Chapman, James and Wang, Hao-Ting and Wells, Lennie and Wiesner, Johannes},
doi = {10.5281/zenodo.4382739},
month = aug,
title = {{CCA-Zoo}},
url = {https://github.com/jameschapman19/cca_zoo},
version = {2.3.0},
year = {2023}
}
Or check out our JOSS paper:
📜 Chapman et al., (2021). CCA-Zoo: A collection of Regularized, Deep Learning based, Kernel, and Probabilistic CCA methods in a scikit-learn style framework. Journal of Open Source Software, 6(68), 3823, Link.
Every idea, every line of code adds value. Check out our contribution guide and help CCA-Zoo soar to new heights!
Special thanks to the pioneers whose work has shaped this field. Explore their work:
- Regularised CCA/PLS: MATLAB
- Sparse PLS: MATLAB SPLS
- DCCA/DCCAE: Keras DCCA, Torch DCCA