@@ -8,7 +8,7 @@ Here are a few ways depending on how complicated your kernel is :
8
8
9
9
If your kernel function is of the form ` k(x, y) = f(d(x, y)) ` where ` d(x, y) ` is a ` PreMetric ` ,
10
10
you can construct your custom kernel by defining ` kappa ` and ` metric ` for your kernel.
11
- Here is for example how one can define the ` SqExponentialKernel ` again :
11
+ Here is for example how one can define the ` SqExponentialKernel ` again:
12
12
13
13
``` julia
14
14
struct MyKernel <: KernelFunctions.SimpleKernel end
@@ -28,15 +28,15 @@ struct MyKernel <: KernelFunctions.Kernel end
28
28
(:: MyKernel )(x, y) = asin (dot (x, y) / sqrt ((1 + sum (abs2, x)) * (1 + sum (abs2, y))))
29
29
```
30
30
31
- Note that ` BaseKernel ` do not use ` Distances.jl ` and can therefore be a bit slower.
31
+ Note that ` Kernel ` do not use ` Distances.jl ` and can therefore be a bit slower.
32
32
33
33
### Additional Options
34
34
35
- Finally there are additional functions you can define to bring in more features :
35
+ Finally there are additional functions you can define to bring in more features:
36
36
- Define the trainable parameters of your kernel with ` KernelFunctions.trainable(k) ` which should return a ` Tuple ` of your parameters.
37
37
This parameters will be then passed to ` Flux.params ` function
38
38
- ` KernelFunctions.iskroncompatible(k) ` , if your kernel factorizes in the dimensions. You can declare your kernel as ` iskroncompatible(k) = true `
39
39
- ` KernelFunctions.dim ` : by default the dimension of the inputs will only be checked for vectors of ` AbstractVector{<:Real} ` .
40
40
If you want to check the dimensions of your inputs, dispatch the ` dim ` function on your kernel. Note that ` 0 ` is the default.
41
- - You can also redefine the ` kernelmatrix(k, x, y)... ` functions for your kernel to eventually optimize the computations of your kernel.
42
- - ` Base.print (io::IO, k::Kernel) ` , if you want to specialize the printing of your kernel
41
+ - You can also redefine the ` kernelmatrix(k, x, y) ` functions for your kernel to eventually optimize the computations of your kernel.
42
+ - ` Base.show (io::IO, k::Kernel) ` , if you want to specialize the printing of your kernel
0 commit comments