Back to FabImage Library website
You are here: Start » Function Reference » Data Classification » Support Vector Machines » SVM_Train

SVM_Train
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | FoundationPro |
Trains an SVM model.
Syntax
C++
C#
void fil::SVM_Train ( const fil::SvmModel& inSvmModel, const ftl::Array<ftl::Array<float> >& inVectorArray, const ftl::Array< int >& inAnswerArray, fil::SvmModel& outSvmModel, float& outTrainingAccuracy )
Parameters
Name | Type | Default | Description | |
---|---|---|---|---|
![]() |
inSvmModel | const SvmModel& | Initialized SVM model | |
![]() |
inVectorArray | const Array<Array<float> >& | Training data vector array | |
![]() |
inAnswerArray | const Array< int >& | Correct classes for data vectors | |
![]() |
outSvmModel | SvmModel& | Trained model | |
![]() |
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.
- SVM_ClassifySingle – Classifies input features based on a trained model.