[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