Skip to main content

SVC

#include <Skigen/SVM>

template <typename Scalar = double>
class Skigen::SVC(C=1.0, kernel=Kernel::RBF, degree=3, gamma=0, coef0=0, probability=false, tol=1e-3, max_passes=50, random_state=std::nullopt)

C-Support Vector Classification with kernels.

Mirrors sklearn.svm.SVC for the binary case (multiclass via one-vs-one as in libsvm).

When probability=true, Platt scaling is fitted via internal 5-fold cross-validation on the decision function scores, providing calibrated posterior probabilities through predict_proba().



Attributes:

  • C : Scalar

  • kernel : Kernel

  • gamma : Scalar

  • classes : const Eigen::VectorXi

  • n_classes : int

  • support : const std::vector< Eigen::Index > &

  • n_support : int


Methods

SKIGEN_PARAMS()


fit(X, y)

Fit from a sparse design matrix (densifies internally).


predict(X)


predict(X)

Predict from a sparse design matrix (densifies internally).


decision_function(X)

Raw decision function — sum_s alpha_s y_s K(x, sv_s) + b.


predict_proba(X)

Calibrated posterior probabilities via Platt scaling.

Requires probability=true at construction time. Returns a (n_samples, 2) matrix with columns [P(y=class_0), P(y=class_1)].


fit(X, y)


predict(X)