Skip to content

JkmsGUI

David Picard edited this page Jul 24, 2014 · 4 revisions

Graphical interface to jkms

This page is a short tutorial on how to use the graphical interface bundled with jkms. Please note that this graphical interface is very limited compared to the full range of possibilities offered by the library. In particular, the gui can only load libsvm files, can only handle double[] data, has limited classifiers and no cross-validation procedure.

To launch the gui, either double click on jkernelmachines.jar or launch the following command: java -jar jkernelmachines.jar

You should see the following window:

main gui window

To import a new training dataset, click on the import button. Importing data should update the instances and dimension field with the number of training samples in the files and the dimension of the input space.

Once data are imported, you can should several preprocessing options. PCA performs a Principal Component Analysis on the training set, which is useful if you want to decorrelate the data. Whitening processes the input space so as to have unit variance on each component. L2 Normalization simply norm the samples. If checked, the preprocessing steps are performed in that order.

You can now select the learning algorithm you want to use, as well as some parameters like the famous C regularization/loss tradeoff or the kernel (if meaningful). After choosing your model, you can click the Train button to train the model. The interface should freeze until the model is fully trained, at which point you should get the following screen:

model trained window

In this example a linear SVM using the SAG algorithm has been trained. The Classname field tells you the type of the current classifier, and the number of support vectors (if any) is written on the bottom. You can save this model by clicking on the Save button and choosing an appropriate file name. The model and the preprocessing are saved, so you don't have to worry to remember them.

Once the model is trained, you can test it on the test data. To do so, click on the Test model tab. You import the test data the same way you did for the training set. To obtain an evaluation of your model, simply click on the Evaluate button, which should give you a screen similar to this:

model trained window

If the test dataset dimension is not the same as the training one, the software will complain. On the other hand, if everything went fine, you can copy/paste the various performance measures reported.

The about tab gives formal details on how to cite the software in your paper if you use it (and want to cite us of course):

JKernelMachines: A Simple Framework for Kernel Machines
David Picard, Nicolas Thome, Matthieu Cord; 
Journal of Machine Learning Research, 14(May):1417−1421, 2013.

Bibtex:
@article{JMLR:v14:picard13a,
  author  = {David Picard and Nicolas Thome and Matthieu Cord},
  title   = {JKernelMachines: A Simple Framework for Kernel Machines},
  journal = {Journal of Machine Learning Research},
  year    = {2013},
  volume  = {14},
  pages   = {1417-1421},
  url     = {http://jmlr.org/papers/v14/picard13a.html}
}

Enjoy the gui, and then try to do programs of your own using the library!

Clone this wiki locally