Skip to content
machine learning library in java for easy developpement of new kernels
Perl6 Java Shell
Find file

JKernelMachines: A simple framework for Kernel Machines

JKernelMachines is a java library for learning with kernels. It is primary designed to deal with custom kernels that are not easily found in standard libraries, such as kernels on structured data.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Copyright David Picard 2014


  • Several learning algorithms (LaSVM, LaSVM-I, SMO, SimpleMKL, GradMKL, QNPKL, SGDQN, Pegasos, NystromSVM, LLSVM...)
  • Multiclass classification through generic classifiers.
  • Active learning
  • Datatype agnosticism through Java Generics
  • Easy coding of new kernels
  • Several standard and exotic kernels (kernel on bags, combination kernels, ...)
  • Input system (can read libsvm, csv, arff and fvec files)
  • Toys generator for artificial data
  • Basic linear algebra package (optionally based on EJML)
  • Evaluation and Cross Validation packages
  • Stand alone (requires only a working jdk 1.7 and ant for easy compiling)
  • Simple GUI



Available with the ant doc command, or here


frequently asked questions are answered here


This work was started while working at Lip6 -

Something went wrong with that request. Please try again.