Deep Learning Algorithm Implementations 1.0.0
C++ implementations of fundamental deep learning algorithms
|
#include <svm.hpp>
Public Member Functions | |
SVM (KernelType kernel_type=KernelType::RBF, T C=1.0, T gamma=1.0, int degree=3, T coef0=0.0, T tol=1e-3, size_t max_iter=1000, T learning_rate=0.01) | |
Constructor. | |
void | fit (const Matrix< T > &X, const std::vector< int > &y) |
Fit the SVM model to training data using automatic differentiation. | |
std::vector< int > | predict (const Matrix< T > &X) const |
Predict class labels for samples. | |
Matrix< T > | predict_proba (const Matrix< T > &X) const |
Predict class probabilities for samples. | |
std::vector< T > | decision_function (const Matrix< T > &X) const |
Compute the decision function for samples. | |
Matrix< T > | support_vectors () const |
Get support vectors. | |
std::vector< size_t > | support () const |
Get support vector indices. | |
std::vector< T > | dual_coef () const |
Get dual coefficients. | |
T | intercept () const |
Get intercept term. | |
std::vector< T > | loss_history () const |
Get training loss history. | |
ml::SVM< T >::SVM | ( | KernelType | kernel_type = KernelType::RBF , |
T | C = 1.0 , |
||
T | gamma = 1.0 , |
||
int | degree = 3 , |
||
T | coef0 = 0.0 , |
||
T | tol = 1e-3 , |
||
size_t | max_iter = 1000 , |
||
T | learning_rate = 0.01 |
||
) |
Constructor.
kernel_type | Type of kernel function to use |
C | Regularization parameter |
gamma | Kernel coefficient for RBF, polynomial and sigmoid kernels |
degree | Degree for polynomial kernel |
coef0 | Independent term for polynomial and sigmoid kernels |
tol | Tolerance for stopping criterion |
max_iter | Maximum number of iterations |
learning_rate | Learning rate for gradient descent |
std::vector< T > ml::SVM< T >::decision_function | ( | const Matrix< T > & | X | ) | const |
Compute the decision function for samples.
X | Input samples matrix (n_samples x n_features) |
Get dual coefficients.
void ml::SVM< T >::fit | ( | const Matrix< T > & | X, |
const std::vector< int > & | y | ||
) |
Fit the SVM model to training data using automatic differentiation.
X | Training features matrix (n_samples x n_features) |
y | Training labels vector |
Get intercept term.
Get training loss history.
Predict class labels for samples.
X | Input samples matrix (n_samples x n_features) |
Predict class probabilities for samples.
X | Input samples matrix (n_samples x n_features) |
Get support vector indices.
Get support vectors.