March 12, 2017

Kernel Combinations

KernelCombinations combine different kernels, allowing the possibility to simultaneously exploit different data representations. Details on these kernels can be found in (Shawe-Taylor and Cristianini, 2004).


Linear Kernel Combination

Java class: LinearKernelCombination

Source code: LinearKernelCombination.java

Maven Project: kelp-core

JSON type: linearComb

Description: given a set n of kernels K_1, \ldots, K_n, it computes the weighted sum of the kernel similarities:

K(x,y)\sum_{i\leq n}c_iK_i(x,y)

where c_i are the parametrizable weights of the combination.

Parameters:

  • toCombine: the kernels that must be combined
  • weights: the coefficient c in the kernel combination

Kernel Multiplication

Java class: KernelMultiplication

Source code: KernelMultiplication.java

Maven Project: kelp-core

JSON type: multiplication

Description: given a set n of kernels K_1, \ldots, K_n, it computes the product of the kernel similarities:

K(x, y) = \prod_{i\leq n}K_i(x,y)

Parameters:

  • toCombine: the kernels that must be combined

References

John Shawe-Taylor and Nello Cristianini. Kernel Methods for Pattern Analysis. Cambridge University Press, New York, NY, USA, 2004. ISBN 0521813972.