31 #ifndef GENSVM_OPTIMIZE_H 32 #define GENSVM_OPTIMIZE_H void gensvm_calculate_ZV_dense(struct GenModel *model, struct GenData *data, double *ZV)
Compute the product Z*V for when Z is a dense matrix.
void gensvm_calculate_ZV_sparse(struct GenModel *model, struct GenData *data, double *ZV)
Compute the product Z*V for when Z is a sparse matrix.
void gensvm_step_doubling(struct GenModel *model)
Use step doubling.
void gensvm_optimize(struct GenModel *model, struct GenData *data)
The main training loop for GenSVM.
A structure to hold the GenSVM workspace.
double gensvm_get_loss(struct GenModel *model, struct GenData *data, struct GenWork *work)
Calculate the current value of the loss function.
A structure to represent the data.
A structure to represent a single GenSVM model.
Header file for gensvm_update.c.
void gensvm_calculate_errors(struct GenModel *model, struct GenData *data, double *ZV)
Calculate the scalar errors.
Header file for gensvm_zv.c.
Header file for gensvm_simplex.c.
Header file for gensvm_sv.c.
void gensvm_calculate_huber(struct GenModel *model)
Calculate the Huber hinge errors.