Skip to main content

Crate anofox_ml_svm

Crate anofox_ml_svm 

Source
Expand description

§anofox-ml SVM

Support Vector Machine classifiers for the anofox-ml machine learning library.

This crate provides two SVM classifiers:

  • LinearSvc – Linear Support Vector Classifier using hinge loss + L2 regularization, solved via coordinate descent (similar to sklearn’s LinearSVC with liblinear).
  • Svc – Support Vector Classifier with kernel support (linear, RBF, polynomial), solved via a simplified SMO algorithm.

Both classifiers support binary and multi-class classification (via one-vs-rest strategy).

§Example

use anofox_ml_core::{Fit, Predict};
use anofox_ml_svm::{LinearSvc, Svc, SvmKernel};
use ndarray::array;

// Linear SVC
let x = array![[0.0, 0.0], [0.1, 0.1], [5.0, 5.0], [5.1, 5.1]];
let y = array![0.0, 0.0, 1.0, 1.0];

let svc = LinearSvc::new().with_c(1.0);
let model = svc.fit(&x, &y).unwrap();
let preds = model.predict(&x).unwrap();

// Kernel SVC with RBF
let svc = Svc::new()
    .with_kernel(SvmKernel::Rbf { gamma: 0.5 })
    .with_c(10.0);
let model = svc.fit(&x, &y).unwrap();
let preds = model.predict(&x).unwrap();

Structs§

FittedLinearSvc
Fitted Linear Support Vector Classifier.
FittedLinearSvr
Fitted Linear Support Vector Regressor.
FittedNuSvc
Fitted Nu-Support Vector Classifier.
FittedNuSvr
Fitted Nu-Support Vector Regressor.
FittedOneClassSvm
Fitted One-Class SVM model.
FittedSvc
Fitted Support Vector Classifier.
FittedSvr
Fitted epsilon-SVR model.
LinearSvc
Linear Support Vector Classifier parameters (unfitted state).
LinearSvr
Linear Support Vector Regressor parameters (unfitted state).
NuSvc
Nu-Support Vector Classifier (unfitted state).
NuSvr
Nu-Support Vector Regressor (unfitted state).
OneClassSvm
One-Class SVM estimator (unfitted state).
Svc
Support Vector Classifier with kernel support (unfitted state).
Svr
Epsilon-Support Vector Regressor (unfitted state).

Enums§

SvmKernel
Kernel functions for the Support Vector Classifier.