From 75a91a963c979b0d657b8839036cd82f6ae5f24b Mon Sep 17 00:00:00 2001 From: Gertjan van den Burg Date: Wed, 2 Jul 2014 17:09:38 +0200 Subject: seed V based on scale of X --- src/libMSVMMaj.c | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) (limited to 'src/libMSVMMaj.c') diff --git a/src/libMSVMMaj.c b/src/libMSVMMaj.c index ca0916b..488b76d 100644 --- a/src/libMSVMMaj.c +++ b/src/libMSVMMaj.c @@ -216,19 +216,34 @@ void msvmmaj_calculate_huber(struct MajModel *model) * @param[in] from_model MajModel from which to copy V * @param[in,out] to_model MajModel to which V will be copied */ -void msvmmaj_seed_model_V(struct MajModel *from_model, struct MajModel *to_model) +void msvmmaj_seed_model_V(struct MajModel *from_model, + struct MajModel *to_model, struct MajData *data) { - long i, j; - long m = to_model->m; - long K = to_model->K; - double value; - + long i, j, k; + double cmin, cmax, value; + + long n = data->n; + long m = data->m; + long K = data->K; + if (from_model == NULL) { - for (i=0; iV, K-1, i, j, -1.0+2.0*rnd()); + for (i=0; iZ, m+1, k, i); + cmin = minimum(cmin, value); + cmax = maximum(cmax, value); + } + for (j=0; jV, K-1, i, j, value); + } + } } else { - for (i=0; iV, K-1, i, j); matrix_set(to_model->V, K-1, i, j, value); -- cgit v1.2.3