Skip to content

eliaserland/inkpca

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Incremental kernel PCA

Incremental kernel PCA based on rank-one updates to the eigendecomposition of the kernel matrix, which takes into account the changing mean of the covariance matrix for additional data points.

This is the most efficient algorithm for incremental kernel PCA currently available. See our paper for further details, available at this link.

We also create the first incremental algorithm for the Nyström approximation to the kernel matrix.

The algorithm is located in the file incremental_kpca.py. The rank-one update algorithm we apply is located in eigen_update.py. Experiments on two datasets from the UCI Machine Learning repository are included.

Requirements

  • Python 3.6

  • Numpy

  • Scipy

  • nose (for tests)

Running

To run the experiments, do from this folder

cd inkpca
python experiments.py

Tested on Ubuntu 20.04

Citation

If you found this package useful then please consider citing the paper.

@article{hallgren2018incremental,
  title={Incremental kernel PCA and the Nyström method},
  author={Hallgren, Fredrik and Northrop, Paul},
  journal={arXiv preprint arXiv:1802.00043},
  year={2018}
}

About

Incremental kernel PCA

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%