aboutsummaryrefslogtreecommitdiff
path: root/include/gensvm_optimize.h
diff options
context:
space:
mode:
authorGertjan van den Burg <burg@ese.eur.nl>2016-10-14 18:35:38 +0200
committerGertjan van den Burg <burg@ese.eur.nl>2016-10-14 18:35:38 +0200
commite34123e1055c26d740148cefdb8d1b90208e424e (patch)
tree51c62b010f4beddaa5cd8259fd420a433a8fd1b1 /include/gensvm_optimize.h
parentdocumentation fixes (diff)
downloadgensvm-e34123e1055c26d740148cefdb8d1b90208e424e.tar.gz
gensvm-e34123e1055c26d740148cefdb8d1b90208e424e.zip
add sparse matrices to GenSVM and reorganize update functionality
Diffstat (limited to 'include/gensvm_optimize.h')
-rw-r--r--include/gensvm_optimize.h25
1 files changed, 6 insertions, 19 deletions
diff --git a/include/gensvm_optimize.h b/include/gensvm_optimize.h
index b342d6b..93f6676 100644
--- a/include/gensvm_optimize.h
+++ b/include/gensvm_optimize.h
@@ -2,7 +2,7 @@
* @file gensvm_optimize.h
* @author Gertjan van den Burg
* @date August, 2013
- * @brief Header file for gensvm_train.c
+ * @brief Header file for gensvm_optimize.c
*
* @details
* Contains function declarations for functions used to train a single
@@ -14,33 +14,20 @@
#define GENSVM_OPTIMIZE_H
#include "gensvm_sv.h"
-#include "gensvm_print.h"
#include "gensvm_simplex.h"
+#include "gensvm_update.h"
// function declarations
void gensvm_optimize(struct GenModel *model, struct GenData *data);
double gensvm_get_loss(struct GenModel *model, struct GenData *data,
struct GenWork *work);
-
-double gensvm_calculate_omega(struct GenModel *model, struct GenData *data,
- long i);
-bool gensvm_majorize_is_simple(struct GenModel *model, struct GenData *data,
- long i);
-void gensvm_calculate_ab_non_simple(struct GenModel *model, long i, long j,
- double *a, double *b_aq);
-void gensvm_calculate_ab_simple(struct GenModel *model, long i, long j,
- double *a, double *b_aq);
-double gensvm_get_alpha_beta(struct GenModel *model, struct GenData *data,
- long i, double *beta);
-
-void gensvm_get_update(struct GenModel *model, struct GenData *data,
- struct GenWork *work);
void gensvm_calculate_errors(struct GenModel *model, struct GenData *data,
double *ZV);
+void gensvm_calculate_ZV_dense(struct GenModel *model, struct GenData *data,
+ double *ZV);
+void gensvm_calculate_ZV_sparse(struct GenModel *model, struct GenData *data,
+ double *ZV);
void gensvm_calculate_huber(struct GenModel *model);
void gensvm_step_doubling(struct GenModel *model);
-int dposv(char UPLO, int N, int NRHS, double *A, int LDA, double *B, int LDB);
-int dsysv(char UPLO, int N, int NRHS, double *A, int LDA, int *IPIV, double *B,
- int LDB, double *WORK, int LWORK);
#endif