Supervised Learning

This app provides Supervised Learning techniques for integrating them into systems or directly to your code.

From an API point of view, each technique is a particular implementation of Supervised Learning Technique.

Support Vector Machines (SVM)

Support Vector Machines are provided by integrating the scikit-learn framework: http://scikit-learn.org.

If you are not familiar with the framework, it is better at least take a glance on its excellent documentation for the technique for a better understanding on how the modelling is done.

An example of integrating SVM into a system can be found in Spam Filtering with SVM (Example 3).

SVM for Classification

All the configuration can be done through the admin of Support Vector Machines for Classification - or more specifically, through the change form.

The following fields are available for configuration:

General

General fields (like Name) and Miscellanous are documented in the Statistical Model API.

This technique extends it with the following field:

SVC.image Image

Auto-generated Image if available

The implementation uses scikit-learn as Engine, there is no need of setting more than 1 Engine Meta Iterations.

Model Parameters

SVC.kernel SVM Kernel

Kernel to be used in the SVM. If none is given, RBF will be used.

SVC.penalty_parameter Penalty parameter (C) of the error term.

Penalty parameter (C) of the error term.

SVC.kernel_poly_degree Polynomial Kernel degree

Degree of the Polynomial Kernel function. Ignored by all other kernels.

SVC.kernel_coefficient Kernel coefficient

Kernel coefficient for RBF, Polynomial and Sigmoid. Leave blank “for automatic” (1/n_features will be used)

SVC.kernel_independent_term Kernel Independent Term

Independent term in kernel function. It is only significant in Polynomial and Sigmoid kernels.

SVC.class_weight Class Weight

Set the parameter C of class i to class_weight[i]*C for SVC. If not given, all classes are supposed to have weight one. The “balanced” mode uses the values of y to automatically adjust weights inversely proportional to class frequencies in the input data as n_samples / (n_classes * np.bincount(y))

Implementation Parameters

SVC.decision_function_shape Decision Function Shape

Whether to return a one-vs-rest (‘ovr’) decision function of shape (n_samples, n_classes) as all other classifiers, or the original one-vs-one (‘ovo’) decision function of libsvm which has shape (n_samples, n_classes * (n_classes - 1) / 2).

SVC.estimate_probability Estimate Probability?

Whether to enable probability estimates. This will slow model fitting.

SVC.use_shrinking Use Shrinking Heuristic?

Whether to use the shrinking heuristic.

SVC.tolerance Tolerance

Tolerance for stopping criterion.

SVC.cache_size Kernel Cache Size (MB)

Specify the size of the kernel cache (in MB).

SVC.random_seed

The seed of the pseudo random number generator to use when shuffling the data. If int, random_state is the seed used by the random number generator; If RandomState instance, random_state is the random number generator; If None, the random number generator is the RandomState instance used by np.random.

SVC.verbose Be Verbose?

Enable verbose output. Note that this setting takes advantage of a per-process runtime setting in libsvm that, if enabled, may not work properly in a multithreaded context.