Back to Aurora Vision Library website

You are here: Start » Function Reference » Data Classification » Support Vector Machines » SVM_Train

SVM_Train


Header: AVL.h
Namespace: avl
Module: FoundationPro

Trains an SVM model.

Syntax

C++
C#
 
void avl::SVM_Train
(
	const avl::SvmModel& inSvmModel,
	const atl::Array<atl::Array<float> >& inVectorArray,
	const atl::Array< int >& inAnswerArray,
	avl::SvmModel& outSvmModel,
	float& outTrainingAccuracy
)

Parameters

Name Type Default Description
Input value inSvmModel const SvmModel& Initialized SVM model
Input value inVectorArray const Array<Array<float> >& Training data vector array
Input value inAnswerArray const Arrayint >& Correct classes for data vectors
Output value outSvmModel SvmModel& Trained model
Output value outTrainingAccuracy float& Accuracy of prediction on training set

Description

The operation trains an SVM classifier initialized beforehand by SVM_Init function. It takes two arrays as arguments:

  • inVectorArray, an array of data points with known classes
  • inAnswerArray, an array of classes where the corresponding data points belong

Those two arrays have to be of the same size. Moreover, there have to be at least two classes within the training data set.

The output outSvmModel is an SVM_Model that may be used by SVM_ClassifySingle function.

outTrainingAccuracy is the fraction of correctly classified training data points.

Errors

List of possible exceptions:

Error type Description
DomainError Data vector cannot be empty in SVM_Train.
DomainError Incompatible array sizes in SVM_Train
DomainError Incompatible vector sizes in SVM_Train.
DomainError Incorrect or uninitialized SvmModel in Svm_Train.
DomainError SM model is already trained in SVM_Train.

See Also

  • SVM_Init – Initializes an SVM model.