Releases: geometric-kernels/GeometricKernels
v1.0.0
What's Changed
- Pin orbax-checkpoint version for Windows by @stoprightthere in #174
- Stable release by @stoprightthere in #175
Full Changelog: v0.4.2...v1.0.0
v0.4.2
What's Changed
- Maintenance by @stoprightthere in #173
- Fix compatibility with modern plum-dispatch/numpy.
- Replace legacy plum typing aliases with modern Python type syntax.
- Drop Python 3.9 support.
- Discontinue testing for gpflow due to incompatibility with the latest setuptools.
Full Changelog: v0.4.1...v0.4.2
v0.4.1
v0.4.0
What's Changed
- Add support for Python 3.12
- Support for Python 3.8 discontinued
- Guide on implementing a custom space/kernel by @vabor112 in #159
- GPJax>=0.12.2 support by @stoprightthere in #162 and @vabor112 and @stoprightthere in #166
- Comprehensible exceptions by @stoprightthere in #160
- CI improvements by @stoprightthere in #161 and #163
Full Changelog: v0.3.1...v0.4.0
v0.3.1
v0.3.0
What's Changed
- Implementation of kernels on the edge space of graphs or simplicial complexes by @cookbook-ms in #139
New Contributors
- @cookbook-ms made their first contribution in #139
Full Changelog: v0.2.3...v0.3
v0.2.3
Constraint version of plum-dispatch because of wesselb/lab#23
Full Changelog: v0.2.2...v0.2.3
v0.2.2
What's Changed
- Replace opt_einsum's contract with lab's einsum for better backend-independence by @vabor112 in #145
- Hypersphere space small improvements by @vabor112 in #142
- The Hypercube space for binary vectors and labeled unweighted graphs by @vabor112 in #141
- Fix algorithm selecting signatures and add precomputed characters for SO(9), SU(7), SU(8), SU(9) by @imbirik in #151
- Revise tests and numerous fixes by @vabor112 in #149
v0.2.1
What's Changed
- Add "If you have a question" section to README.md by @vabor112 in #131
- Github cosmetics by @stoprightthere in #133
- Replace all references to "gpflow" organization with "geometric-kernels" organization by @vabor112 in #134
- Use fit_gpytorch_model or fit.fit_gpytorch_mll depening on the botorсh version by @vabor112 in #137
- Add a missing type cast and fix a typo in kernels/karhunen_loeve.py by @vabor112 in #136
- Minor documentation improvements by @vabor112 in #135
- Add citation to the preprint of the GeometricKernels paper by @vabor112 in #138
- Add citation file by @aterenin in #140
- Fix dependencies (Version 0.2.1) by @stoprightthere in #143
Full Changelog: v0.2...v0.2.1
v0.2
New geometric kernel that just works, kernels.MaternGeometricKernel. Relies on (hopefully) sensible defaults we defined. Mostly by @stoprightthere.
New spaces, based on Azangulov et al. (2022, 2023), mostly by @imbirik and @stoprightthere:
- hyperbolic spaces
$\mathbb{H}_n$ inspaces.Hyperbolic, - manifolds of symmetric positive definite matrices
$\mathrm{SPD}(n)$ endowed with the affine-invariant Riemannian metric inspaces.SymmetricPositiveDefiniteMatrices, - special orthogonal groups
$\mathrm{SO}(n)$ inspaces.SpecialOrthogonal. - special unitary groups
$\mathrm{SU}(n)$ inspaces.SpecialUnitary.
New package geometric_kernels.feature_maps for (approximate) finite-dimensional feature maps. Mostly by @stoprightthere.
New small package geometric_kernels.sampling for efficient sampling from geometric Gaussian process priors. Based on the (approximate) finite-dimensional feature maps. Mostly by @stoprightthere.
Examples/Tutorials improvements, mostly by @vabor112:
- new Jupyter notebooks
Graph.ipynb,Hyperbolic.ipynb,Hypersphere.ipynb,Mesh.ipynb,SPD.ipynb,SpecialOrthogonal.ipynb,SpecialUnitary.ipynb,Torus.ipynbfeaturing tutorials on all the spaces in the library, - new Jupyter notebooks
backends/JAX_Graph.ipynb,backends/PyTorch_Graph.ipynb,backends/TensorFlow_Graph.ipynbshowcasing how to use all the backends supported by the library, - new Jupyter notebooks
frontends/GPflow.ipynb,frontends/GPJax.ipynb,frontends/GPyTorch.ipynbshowcasing how to use all the frontends supported by the library, - other notebooks updated and grouped together in
other/folder.
Documentation improvements, mostly by @vabor112:
- all docstrings throughout the library revised,
- added new documentation pages describing the basic theoretical concepts, in
docs/theory, - notebooks are now rendered as part of the documentation, you can refer to them from the docstrings and other documentation pages,
- introduced a more or less unified style for docstrings.
Other:
- refactoring and bug fixes,
- added type hints throughout the library and enabled
mypy, - updated frontends (with limited suppot for GPJax due to conflicting dependencies),
- improved
spaces.ProductDiscreteSpectrumSpaceandkernels.ProductGeometricKernel, - filtered out or fixed some annoying external warnings,
- added a new banner for
README.mdand for our landing page, courtesy of @aterenin, - example notebooks are now run as tests,
- we now support Python 3.8, 3.9, 3.10, 3.11 and have test workflows for all the supported Python versions,
- we now provide a PyPI package,
- LAB is now a lightweight dependency, thanks to @wesselb,
- kernels are now normalized to have unit outputscale by default.