machine learning library in java for easy developpement of new kernels
Lua Java Shell
Failed to load latest commit information.
COMPILING cleaning for central repo Apr 28, 2016
COPYING Change to 3-clause BSD license Apr 5, 2016
pom.xml update for sonata repository Apr 28, 2016

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 under the terms of the 3-clause BSD license. See the COPYING file for more details.

Copyright David Picard 2016


  • 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 maven for easy compiling)
  • Simple GUI



Available with maven, or here


frequently asked questions are answered here


This work was started while working at Lip6 -