From ababb8f2d0bca17982ef5531b2b407f1f276a575 Mon Sep 17 00:00:00 2001 From: Al Date: Tue, 26 Jan 2016 01:16:11 -0500 Subject: [PATCH] [fix] sign comparison in regularized gradient computation for logistic regression --- src/logistic_regression.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/logistic_regression.c b/src/logistic_regression.c index 3a865af8..8d3fb32d 100644 --- a/src/logistic_regression.c +++ b/src/logistic_regression.c @@ -156,7 +156,7 @@ static bool logistic_regression_gradient_params(matrix_t *theta, matrix_t *gradi double reg_update = theta_ij * lambda; double current_value = gradient_values[idx]; double updated_value = current_value + reg_update; - if (fabs(updated_value) == fabs(current_value)) { + if ((updated_value > 0) == (current_value > 0)) { gradient_values[idx] = updated_value; } }