scikits.learn.svm.SVC¶
- class scikits.learn.svm.SVC(C=1.0, kernel='rbf', degree=3, gamma=0.0, coef0=0.0, shrinking=True, probability=False, eps=0.001, cache_size=100.0)¶
C-Support Vector Classification.
Parameters : C : float, optional (default=1.0)
penalty parameter C of the error term.
kernel : string, optional
Specifies the kernel type to be used in the algorithm. one of ‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’. If none is given ‘rbf’ will be used.
degree : int, optional
degree of kernel function is significant only in poly, rbf, sigmoid
gamma : float, optional
kernel coefficient for rbf and poly, by default 1/n_features will be taken.
coef0 : float, optional
independent term in kernel function. It is only significant in poly/sigmoid.
probability: boolean, optional (False by default) :
enable probability estimates. This must be enabled prior to calling prob_predict.
shrinking: boolean, optional :
wether to use the shrinking heuristic.
eps: float, optional :
precision for stopping criteria
cache_size: float, optional :
specify the size of the cache (in MB)
Examples
>>> import numpy as np >>> X = np.array([[-1, -1], [-2, -1], [1, 1], [2, 1]]) >>> Y = np.array([1, 1, 2, 2]) >>> from scikits.learn.svm import SVC >>> clf = SVC() >>> clf.fit(X, Y) SVC(kernel='rbf', C=1.0, probability=False, degree=3, coef0=0.0, eps=0.001, cache_size=100.0, shrinking=True, gamma=0.25) >>> print clf.predict([[-0.8, -1]]) [ 1.]
Attributes
support_ array-like, shape = [n_SV, n_features] Support vectors, where n_SV is the number of support vectors. n_support_ array-like, dtype=int32, shape = [n_class] number of support vector for each class. dual_coef_ array, shape = [n_class-1, nSV] Coefficients of the support vector in the decision function. coef_ array, shape = [n_class-1, n_features] Weights asigned to the features (coefficients in the primal problem). This is only available in the case of linear kernel. intercept_ array, shape = [n_class * (n_class-1) / 2] Constants in decision function. Methods
fit predict predict_margin predict_proba score - __init__(C=1.0, kernel='rbf', degree=3, gamma=0.0, coef0=0.0, shrinking=True, probability=False, eps=0.001, cache_size=100.0)¶
- fit(X, Y, class_weight={})¶
Fit the SVM model according to the given training data and parameters.
Parameters : X : array-like, shape = [n_samples, n_features]
Training vector, where n_samples is the number of samples and n_features is the number of features.
Y : array, shape = [n_samples]
Target values (integers in classification, real numbers in regression)
weight : dict , {class_label
Weights associated with classes. If not given, all classes are supposed to have weight one.
Returns : self : object
Returns self.
- predict(T)¶
This function does classification or regression on an array of test vectors T.
For a classification model, the predicted class for each sample in T is returned. For a regression model, the function value of T calculated is returned.
For an one-class model, +1 or -1 is returned.
Parameters : T : array-like, shape = [n_samples, n_features] Returns : C : array, shape = [nsample]
- predict_margin(T)¶
Calculate the distance of the samples in T to the separating hyperplane.
Parameters : T : array-like, shape = [n_samples, n_features]
Returns : T : array-like, shape = [n_samples, n_classes]
Returns the decision function of the sample for each class in the model, where classes are ordered by arithmetical order.
- predict_proba(T)¶
This function does classification or regression on a test vector T given a model with probability information.
Parameters : T : array-like, shape = [n_samples, n_features]
Returns : T : array-like, shape = [n_samples, n_classes]
Returns the probability of the sample for each class in the model, where classes are ordered by arithmetical order.
Notes
The probability model is created using cross validation, so the results can be slightly different than those obtained by predict. Also, it will meaningless results on very small datasets.
- score(X, y)¶
Returns the mean error rate on the given test data and labels.
Parameters : X : array-like, shape = [n_samples, n_features]
Training set.
y : array-like, shape = [n_samples]
Labels for X.
Returns : z : float