Skip to content

Python implementation of the VKOGA algorithm.

License

Notifications You must be signed in to change notification settings

felix-doeppel/VKOGA

 
 

Repository files navigation

VKOGA

Python implementation of the Vectorial Kernel Orthogonal Greedy Algorithm.

Installation

pip install git+https://github.com/GabrieleSantin/VKOGA.git

Usage

The algorithm is implemented as a scikit-learn Estimator, and it can be used via the fit and predict methods.

The best way to start using the algorithm is having a look at the demo notebook, which can also be executed online on Binder: Binder

Watch VKOGA in action

Fitting MATLAB's peaks() function with a gaussian Kernel Model. The model is f-greedy, i.e. it iteratively chooses the points where the difference to the reference function is highest and adds a new gaussian function there. All those Gauss functions have the same width.

How to cite

If you use this code in your work, please cite the paper

G. Santin, B. Haasdonk, Kernel methods for surrogate modeling, In: P. Benner, S. Grivet- Talocia, A. Quarteroni, G. Rozza, W. Schilders, and L. M. Silveira, editors, Model Order Reduc- tion, volume 2. De Gruyter, 2021.

@InCollection{Santin2021,
  author       = {Santin, Gabriele and Haasdonk, Bernard},
  title        = {Kernel Methods for Surrogate Modeling},
  booktitle    = {Model Order Reduction},
  year         = {2021},
  editor       = {Benner, Peter and Grivet-Talocia, Stefano and Quarteroni, Alfio and Rozza, Gianluigi and Schilders, Wil and Silveira, Luís Miguel},
  booksubtitle = {System- and Data-Driven Methods and Algorithms},
  volume       = {2},
  publisher    = {De Gruyter},
}

For further details on the algorithm and its implementation, please refer to the following papers:

M. Pazouki and R. Schaback, Bases for kernel-based spaces, J. Comput. Appl. Math., 236, 575-588 (2011).

D. Wirtz and B. Haasdonk, A Vectorial Kernel Orthogonal Greedy Algorithm, Dolomites Res. Notes Approx., 6, 83-100 (2013).

G. Santin, D. Wittwar, B. Haasdonk, Greedy regularized kernel interpolation, ArXiv preprint 1807.09575 (2018).

T. Wenzel, G. Santin, B. Haasdonk, A novel class of stabilized greedy kernel approximation algorithms: Convergence, stability & uniform point distribution, Journal of Approximation Theory, 262:105508, (2021).

T. Wenzel, G. Santin, B. Haasdonk, Analysis of Target Data-Dependent Greedy Kernel Algorithms: Convergence Rates for f -, f · P - and f /P -Greedy., Constructive Approximation, (2022).

Other implementations

The original Matlab version of this software is maintained here.

About

Python implementation of the VKOGA algorithm.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%