Skip to main content

Kernel SVM library based on sklearn and GPlib.

Project description

kSVMlib

Kernel SVM library based on sklearn and GPlib. Provides similar functionality to GPlib for SVMs.

Setup kSVMlib

  • Create and activate virtualenv (for python2) or venv (for python3)
  # for python3
  python3 -m venv .env
  # or for python2
  python2 -m virtualenv .env

  source .env/bin/activate
  • Upgrade pip
  python -m pip install --upgrade pip
  • Install kSVMlib package
  python -m pip install ksvmlib

Use kSVMlib

  • Import kSVMlib to use it in your python script.
  import ksvmlib
  • Generate some random data.
  import numpy as np
  data = {}
  data['X'] = np.vstack((
      np.random.multivariate_normal([1, 1], [[1, 0], [0, 1]], 100),
      np.random.multivariate_normal([3, 3], [[1, 0], [0, 1]], 100)
  ))
  data['Y'] = np.vstack((
      np.ones((100, 1)),
      np.zeros((100, 1)),
  ))

  validation = ksvmlib.dm.RandFold(fold_len=0.2, n_folds=1)
  train_set, test_set = validation.get_folds(data)[0]
  • Initialize the KSVM model and a metric to measure the results.
  model = ksvmlib.KSVM(ksvmlib.ker.SquaredExponential())
  accuracy = ksvmlib.me.Accuracy()
  • Fit the model to the data.
  fitting_method = ksvmlib.fit.GridSearch(
      obj_fun=accuracy.fold_measure,
      max_fun_call=300
  )
  train_validation = ksvmlib.dm.RandFold(fold_len=0.2, n_folds=3)

  log = fitting_method.fit(model, train_validation.get_folds(
      train_set
  ))
  print("Fitting log: {}".format(log))
  • Finally plot the results.
  print("Accuracy: {}".format(accuracy.measure(model, train_set, test_set)))
  ksvmlib.plot.kernel_sort_data(model, test_set)
  • There are more examples in examples/ directory. Check them out!

Develop kSVMlib

  • Update API documentation
  source ./.env/bin/activate
  pip install Sphinx
  cd docs/
  sphinx-apidoc -f -o ./ ../ksvmlib

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ksvmlib-0.1.1.tar.gz (17.1 kB view hashes)

Uploaded source

Built Distribution

ksvmlib-0.1.1-py2.py3-none-any.whl (19.4 kB view hashes)

Uploaded py2 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page