Skip to content

jeremija/python3-svmlight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

Note: this is a fork of pysvmlight made to work under Python 3.

It uses the Python's Capsule API instead of the deprecated CObject API.

The changes were made by Jerko Steiner.

Please note the original svm library is copyrighted and only non-commercial use is allowed.

SVMLight for Python3

A Python binding to the SVM-Light support vector machine library by Thorsten Joachims.

Written by Bill Cauchois (wcauchois@gmail.com), with thanks to Lucas Beyer and n0mad for their contributions.

Installation

PySVMLight uses distutils for setup. Installation is as simple as

$ chmod +x setup.py
$ ./setup.py --help
$ ./setup.py build

If you want to install SVMLight to your PYTHONPATH, type:

$ ./setup.py install

(You may need to execute this command as the superuser.) Otherwise, look in the build/ directory to find svmlight.so and copy that file to the directory of your project. You should now be able to import svmlight.

Getting Started

See examples/simple.py for example usage.

Reference

If you type help(svmlight), you will see that there are currently three functions.

learn(training_data, **options) -> model

Train a model based on a set of training data. The training data should be in the following format:

>> (<label>, [(<feature>, <value>), ...])

or

>> (<label>, [(<feature>, <value>), ...], <queryid>)

See examples/data.py for an example of some training data. Available options include (corresponding roughly to the command-line options for svmlight detailed on this page under the section titled "How to use"):

  • type: select between 'classification', 'regression', 'ranking' (preference ranking), and 'optimization'.
  • kernel: select between 'linear', 'polynomial', 'rbf', and 'sigmoid'.
  • verbosity: set the verbosity level (default 0).
  • C: trade-off between training error and margin.
  • poly_degree: parameter d in polynomial kernel.
  • rbf_gamma: parameter gamma in rbf kernel.
  • coef_lin
  • coef_const
  • costratio (corresponds to -j option to svm_learn)

The result of this call is a model that you can pass to classify().

classify(model, test_data, **options) -> predictions

Classify a set of test data using the provided model. The test data should be in the same format as training data (see above). The result will be a list of floats, corresponding to predicted labels for each of the test instances.

write_model(model, filename) -> None

Write the provided model to the specified file. The file format used is the same format as that used by the command-line svmlight program.

read_model(filename) -> model

Read a model that was saved using write_model().

About

Fork of pysvmlight working with Python 3

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages