[mlpack-svn] r12985 - mlpack/trunk/src/mlpack/tests

fastlab-svn at coffeetalk-1.cc.gatech.edu fastlab-svn at coffeetalk-1.cc.gatech.edu
Sat Jun 9 17:57:34 EDT 2012


Author: rcurtin
Date: 2012-06-09 17:57:34 -0400 (Sat, 09 Jun 2012)
New Revision: 12985

Modified:
   mlpack/trunk/src/mlpack/tests/lars_test.cpp
Log:
Changes to DoLARS() propagating to here.


Modified: mlpack/trunk/src/mlpack/tests/lars_test.cpp
===================================================================
--- mlpack/trunk/src/mlpack/tests/lars_test.cpp	2012-06-09 21:57:21 UTC (rev 12984)
+++ mlpack/trunk/src/mlpack/tests/lars_test.cpp	2012-06-09 21:57:34 UTC (rev 12985)
@@ -21,9 +21,9 @@
 
 void GenerateProblem(arma::mat& X, arma::vec& y, size_t nPoints, size_t nDims)
 {
-  X = arma::randn(nPoints, nDims);
+  X = arma::randn(nDims, nPoints);
   arma::vec beta = arma::randn(nDims, 1);
-  y = X * beta;
+  y = trans(X) * beta;
 }
 
 
@@ -62,8 +62,8 @@
     GenerateProblem(X, y, nPoints, nDims);
 
     // Armadillo's median is broken, so...
-    arma::vec sortedAbsCorr = sort(abs(trans(X) * y));
-    double lambda1 = sortedAbsCorr(nDims/2);
+    arma::vec sortedAbsCorr = sort(abs(X * y));
+    double lambda1 = sortedAbsCorr(nDims / 2);
     double lambda2;
     if (elasticNet)
       lambda2 = lambda1 / 2;
@@ -72,13 +72,12 @@
 
 
     LARS lars(useCholesky, lambda1, lambda2);
-    lars.DoLARS(X, y);
-
     arma::vec betaOpt;
-    lars.Solution(betaOpt);
-    arma::vec errCorr = (arma::trans(X) * X + lambda2 *
-        arma::eye(nDims, nDims)) * betaOpt - arma::trans(X) * y;
+    lars.DoLARS(X, y, betaOpt);
 
+    arma::vec errCorr = (X * trans(X) + lambda2 *
+        arma::eye(nDims, nDims)) * betaOpt - X * y;
+
     LARSVerifyCorrectness(betaOpt, errCorr, lambda1);
   }
 }




More information about the mlpack-svn mailing list