[mlpack-svn] r16026 - mlpack/trunk/src/mlpack/methods/logistic_regression
fastlab-svn at coffeetalk-1.cc.gatech.edu
fastlab-svn at coffeetalk-1.cc.gatech.edu
Wed Nov 13 13:20:38 EST 2013
Author: rcurtin
Date: Wed Nov 13 13:20:38 2013
New Revision: 16026
Log:
Add correct implementation of Gradient() function.
Modified:
mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_function.cpp
Modified: mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_function.cpp
==============================================================================
--- mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_function.cpp (original)
+++ mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_function.cpp Wed Nov 13 13:20:38 2013
@@ -87,16 +87,15 @@
return -(result + regularization);
}
-void LogisticRegressionFunction::Gradient(const arma::mat& values,
- arma::mat& gradient)
+void LogisticRegressionFunction::Gradient(const arma::mat& parameters,
+ arma::mat& gradient)
{
- //regularization
-// arma::mat regularization = arma::zeros<arma::mat>(predictors.n_rows, 1);
-// regularization.rows(1, predictors.n_rows - 1) = lambda *
-// values.rows(1, predictors.n_rows - 1) / responses.n_rows;
+ // Regularization term.
+ arma::mat regularization = arma::zeros<arma::mat>(predictors.n_rows, 1);
+ regularization.rows(1, predictors.n_rows - 1) = lambda *
+ parameters.col(0).subvec(1, predictors.n_rows - 1);
- //gradient =
-// gradient = -(predictors * (responses
-// - (1 / (1 + arma::exp(-(arma::trans(predictors) * values))))
-// / responses.n_rows + regularization;
+ gradient = -predictors * (responses
+ - (1 / (1 + arma::exp(-predictors.t() * parameters))))
+ - regularization;
}
More information about the mlpack-svn
mailing list