Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

more specialty kernels! check out Julia's implementations of some-kernels-you've-never-heard-of #6

Open
frankiethull opened this issue Jul 25, 2024 · 3 comments
Labels
enhancement New feature or request kernel kernel binding

Comments

@frankiethull
Copy link
Owner

here I am browsing julia and python, checking out what kinds of specialty kernels are already out there.

https://juliagaussianprocesses.github.io/KernelFunctions.jl/stable/kernels/

there are some unique ones here as well: piecewise polynomial, wiener, matern, etc.

a lot of these I haven't heard of before. Taking notes on what's out there as possible enhancements. I think it's worth exploring these as kernlab kernels as well, binding to parsnip once they are working in the ksvm() function.

@frankiethull frankiethull added the enhancement New feature or request label Jul 25, 2024
@frankiethull
Copy link
Owner Author

  • gabor
  • matern
  • piecewise poly
  • (sm) spectral mixture
  • cosine
  • sqexponential

@jrosell
Copy link

jrosell commented Sep 24, 2024

What about nystroem? It's implemented in scikit-learn and also in R in the {mildsvm} package (I haven't tested it yet). Here more information: https://scikit-learn.org/stable/modules/kernel_approximation.html#nystroem-kernel-approx

@frankiethull
Copy link
Owner Author

@jrosell - thank you for an'maizing idea.

I will need to look further into this one! additionally, had not came across the {mildsvm} package before, there's some really interesting engines & techniques in there. nystroem is teetering between engine, special kernel, or a feature map, in my mind.

Reading that link & {mildsvm} docs, it seems nystroem is an approximation method of a kernel, {mildsvm} supports nystroem for radial only. Seems like there could be multiple paths in this corn maze 1) extend bindings to {mildsvm}, 2) mimic logic and add a specialty nystroem-radial kernel to maize that works with {kernlab}, or 3) add a nystroem feature map approximation as a recipe step (?) then it might be compatible with other {kernlab}/{maize} kernels too.

This was referenced Sep 25, 2024
@frankiethull frankiethull added the kernel kernel binding label Oct 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request kernel kernel binding
Projects
None yet
Development

No branches or pull requests

2 participants