GenSVM
Functions | Variables
gensvm_cross_validation.c File Reference

Function for running cross validation on GenModel. More...

#include "gensvm_cross_validation.h"
Include dependency graph for gensvm_cross_validation.c:

Go to the source code of this file.

Functions

double gensvm_cross_validation (struct GenModel *model, struct GenData **train_folds, struct GenData **test_folds, long folds, long n_total)
 Run cross validation with a given set of train/test folds. More...
 

Variables

FILE * GENSVM_OUTPUT_FILE
 

Detailed Description

Function for running cross validation on GenModel.

Author
G.J.J. van den Burg
Date
2016-10-24

This file is part of GenSVM.

GenSVM is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

GenSVM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with GenSVM. If not, see http://www.gnu.org/licenses/.

Definition in file gensvm_cross_validation.c.

Function Documentation

◆ gensvm_cross_validation()

double gensvm_cross_validation ( struct GenModel model,
struct GenData **  train_folds,
struct GenData **  test_folds,
long  folds,
long  n_total 
)

Run cross validation with a given set of train/test folds.

This cross validation function uses predefined train/test splits. Also, the the optimal parameters GenModel::V of a previous fold as initial conditions for GenModel::V of the next fold.

Note
This function always sets the output stream defined in GENSVM_OUTPUT_FILE to NULL, to ensure gensvm_optimize() doesn't print too much.
Parameters
[in]modelGenModel with the configuration to train
[in]train_foldsarray of training datasets
[in]test_foldsarray of test datasets
[in]foldsnumber of folds
[in]n_totalnumber of objects in the union of the train datasets
Returns
performance (hitrate) of the configuration on cross validation

Definition at line 52 of file gensvm_cross_validation.c.

Here is the call graph for this function:

Variable Documentation

◆ GENSVM_OUTPUT_FILE

FILE* GENSVM_OUTPUT_FILE

The GENSVM_OUTPUT_FILE specifies the output stream to which all output is written. This is done through the function note(). The advantage of using a global output stream variable is that the output can temporarily be suppressed by importing this variable through extern and (temporarily) setting it to NULL.

Definition at line 33 of file gensvm_print.c.