Project details for JKernelMachines

Logo JKernelMachines 1.0

by dpicard - May 25, 2012, 10:46:06 CET [ Project Homepage BibTeX Download ]

view (29 today), download ( 9 today ), 4 subscriptions

OverallWhole StarWhole StarWhole StarWhole Star1/2 Star
FeaturesWhole StarWhole StarWhole StarWhole Star1/2 Star
UsabilityWhole StarWhole StarWhole StarWhole Star1/2 Star
DocumentationWhole StarWhole StarWhole StarWhole Star1/2 Star
(based on 4 votes)

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. These type of kernels are often used in computer vision or bioinformatic applications. We provide several kernels leading to state of the art classification performances in in computer vision, as well as various kernels on sets. Interestingly, the library is meant to be extended with new kernels easily. Standard SVM optimization algorithms are implemented, but also more sophisticated learning-based kernel combination methods such as Multiple Kernel Learning (MKL), and a recently published algorithm to learn powered products of similarities (Product Kernel Learning).

Check the wiki:

Changes to previous version:

Initial Announcement on

BibTeX Entry: Download
URL: Project Homepage
Supported Operating Systems: Agnostic
Data Formats: Libsvm
Tags: Svm, Kernel Methods, Java
Archive: download here

Other available revisons

Version Changelog Date

Version 3.0

/! Warning: this version is incompatible with previous code

  • change license to BSD 3-clauses
  • change package name to net.jkernelmachines
  • change to maven build system (available through central)
  • online training interfaces to allow continuous online learning
  • add a new budget oriented kernel classifier
  • new kernel and processing especially for strings
May 4, 2016, 17:53:28

Version 2.5

  • New active learning algorithms
  • Better threading management
  • New multiclass SVM algorithm based on SDCA
  • Handle class balancing in cross-validation
  • Optional support of EJML switch to version 0.26
  • Various bugfixes and improvements
December 11, 2014, 17:51:42

Version 2.4

  • Added a simple GUI to rapidly test some algorithms
  • New Active Learning package
  • New algorithms (LLSVM, KMeans)
  • New Kernels (Polynomials, component wise)
  • Many bugfixes and improvements to existing algorithms
  • Many optimization

The number of changes in this version is massive, test it! Don't forget to report any regression.

July 24, 2014, 13:51:44

Version 2.3 (density edition)

  • Cleaned up a lot of thing in density estimators
  • New density estimator algorithms
  • New MKL interface
  • Updated algebra functionalities
  • Better default tunning of parameters in various algorithms
April 17, 2014, 18:42:10

Version 2.2.

  • Fast kernel using Nystrom approximation (with fast active learning procedure as in (Tabia BMVC13))
  • Large scale Kernel SVM using the Nystrom approximation
  • New algorithms and better tuning in the algebra package
  • Multhithreading support for algebra
  • Optional dependency on EJML for faster eigen decomposition (check is at runtime, compatible with older code)
  • Revised and online Javadoc
November 29, 2013, 16:07:12

Version 2.1.

  • new algorithms: SDCA (Shalev-Shwartz 2013), SAG (Le Roux 2012)
  • new custom matrix kernel to handle train and test separately
  • add fvec file format
  • add experimental package for linear algebra and corresponding processing (i.e. PCA, KPCA), use at your own risk!
  • add example app to perform VOC style classification
  • Lots of bug fixes
June 10, 2013, 15:03:58

Version 2.0.

  • Separation of the core library and unit testing
  • Junit testing added
  • Lots of bug fixes
  • Better examples, and many useless test classes removed
  • A small demo script to benchmark the library was added

Warning: all classes have migrated under the fr.lip6.jkernelmachines package, which breaks backward compatibility, but was necessary to keep the project going on sanely.

February 28, 2013, 21:09:31

Version 1.4.

  • New MKL algorithm ("A Binary Classification Framework for Two-Stage Multiple Kernel Learning", Kumar et al., ICML 2012)
  • Better support for CSV data
  • various bug fixes
  • Many small bug fixes
  • Improved documentation
November 7, 2012, 07:45:13

Version 1.3.

  • Multiclass classification package (independent of underlying learning algorithm)
  • Toys generators for artificial data
  • NFold Cross-validation
  • Many small bug fixes
  • Improved documentation
July 4, 2012, 09:48:05

Version 1.2.

New non-convex learning algorithm (LaSVM-I), MKL algorithms can use several SVM solvers, Standalone program doing cross-validation (provides a useful example), many bug fixes.

June 21, 2012, 19:12:11

Version 1.1.

New features: Evaluation package, CrossValidation package, CSV data format, Many more documentation, More complete building procedure, (very naive unit testing)

June 4, 2012, 17:39:59

Initial Announcement on

May 25, 2012, 10:46:06


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.