-
- Description:
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 2013
picard@ensea.fr
Features
- Several learning algorithms (LaSVM, LaSVM-I, SMO, SimpleMKL, GradMKL, QNPKL, SGDQN, Pegasos, ...)
- Multiclass classification through generic classifiers.
- 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 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 and ant for easy compiling)
HowTo
- Compiling
- Basic Example
- Kernels
- Classifier Training
- Transductive classifiers
- Multiclass Training
- Reading data
- Data generators
- Basic Linear Algebra
- Evaluation
- CrossValidation
- Standalone programs
Javadoc
Available with the
ant doc
command, or hereFAQ
frequently asked questions are answered here
Acknowledgement
This work was mostly done while working at Lip6 - http://www.lip6.fr
- Changes to previous version:
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
- BibTeX Entry: Download
- Corresponding Paper BibTeX Entry: Download
- Supported Operating Systems: Agnostic
- Data Formats: Csv, Libsvm, Fvec
- Tags: Svm, Kernel Methods, Java
- Archive: download here
Comments
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.