[mlpack-svn] r16052 - mlpack/trunk/src/mlpack/methods/logistic_regression

fastlab-svn at coffeetalk-1.cc.gatech.edu fastlab-svn at coffeetalk-1.cc.gatech.edu
Thu Nov 21 09:23:02 EST 2013


Author: rcurtin
Date: Thu Nov 21 09:23:02 2013
New Revision: 16052

Log:
Don't hold lambda in LogisticRegression because it isn't necessary.  Also make
predictors and responses const because we don't need to modify them.


Modified:
   mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression.hpp
   mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_impl.hpp

Modified: mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression.hpp
==============================================================================
--- mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression.hpp	(original)
+++ mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression.hpp	Thu Nov 21 09:23:02 2013
@@ -58,9 +58,9 @@
   arma::vec& Parameters() { return parameters; }
 
   //! Return the lambda value for L2-regularization.
-  const double& Lambda() const { return lambda; }
+  const double& Lambda() const { return errorFunction.Lambda(); }
   //! Modify the lambda value for L2-regularization.
-  double& Lambda() { return lambda; }
+  double& Lambda() { return errorFunction().Lambda(); }
 
   double LearnModel();
 
@@ -76,12 +76,17 @@
   double ComputeError(arma::mat& predictors, const arma::vec& responses);
 
  private:
-  arma::vec parameters;
+  //! Matrix of predictor points (X).
   const arma::mat& predictors;
+  //! Vector of responses (y).
   const arma::vec& responses;
+  //! Vector of trained parameters.
+  arma::vec parameters;
+
+  //! Instantiated error function that will be optimized.
   LogisticRegressionFunction errorFunction;
+  //! Instantiated optimizer.
   OptimizerType<LogisticRegressionFunction> optimizer;
-  double lambda;
 };
 
 }; // namespace regression

Modified: mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_impl.hpp
==============================================================================
--- mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_impl.hpp	(original)
+++ mlpack/trunk/src/mlpack/methods/logistic_regression/logistic_regression_impl.hpp	Thu Nov 21 09:23:02 2013
@@ -22,8 +22,7 @@
     predictors(predictors),
     responses(responses),
     errorFunction(LogisticRegressionFunction(predictors, responses, lambda)),
-    optimizer(OptimizerType<LogisticRegressionFunction>(errorFunction)),
-    lambda(lambda)
+    optimizer(OptimizerType<LogisticRegressionFunction>(errorFunction))
 {
   parameters.zeros(predictors.n_rows + 1);
 }
@@ -37,8 +36,7 @@
     predictors(predictors),
     responses(responses),
     errorFunction(LogisticRegressionFunction(predictors, responses)),
-    optimizer(OptimizerType<LogisticRegressionFunction>(errorFunction)),
-    lambda(lambda)
+    optimizer(OptimizerType<LogisticRegressionFunction>(errorFunction))
 {
   parameters.zeros(predictors.n_rows + 1);
 }



More information about the mlpack-svn mailing list