[mlpack-svn] r10697 - mlpack/trunk/src/mlpack/methods/lars

fastlab-svn at coffeetalk-1.cc.gatech.edu fastlab-svn at coffeetalk-1.cc.gatech.edu
Sat Dec 10 13:30:37 EST 2011


Author: niche
Date: 2011-12-10 13:30:36 -0500 (Sat, 10 Dec 2011)
New Revision: 10697

Removed:
   mlpack/trunk/src/mlpack/methods/lars/test.cpp
Log:
removed unnecessary file

Deleted: mlpack/trunk/src/mlpack/methods/lars/test.cpp
===================================================================
--- mlpack/trunk/src/mlpack/methods/lars/test.cpp	2011-12-10 18:30:09 UTC (rev 10696)
+++ mlpack/trunk/src/mlpack/methods/lars/test.cpp	2011-12-10 18:30:36 UTC (rev 10697)
@@ -1,107 +0,0 @@
-/**
- * @file test.cpp
- * @author Nishant Mehta (niche)
- *
- * Test Driver file for testing various parts of LARS
- */
-
-#include <mlpack/core.hpp>
-#include <armadillo>
-
-#include "lars.hpp"
-
-#define ERROR_TOL 1e-13
-
-using namespace arma;
-using namespace std;
-
-bool TestElasticNet(bool use_cholesky, double lambda_1, double lambda_2) {
-  mat X;
-  X.load("X.dat", raw_ascii);
-  
-  u32 n = X.n_rows;
-  u32 p = X.n_cols;
-  
-  vec y;
-  y.load("y.dat", raw_ascii);
-
-  Lars lars_std;
-  lars_std.Init(X, y, use_cholesky, lambda_1, lambda_2);
-  
-  lars_std.DoLARS();
-  
-  
-
-  mat X_reg = zeros(n + p, p);
-  X_reg(span(0, n - 1), span::all) = X;
-  for(u32 i = 0; i < p; i++) {
-    X_reg(n + i, i) = sqrt(lambda_2);
-  }
-
-  vec y_reg = zeros(n + p);
-  y_reg.subvec(0, n - 1) = y;
-
-  Lars lars_explicit;
-  lars_explicit.Init(X_reg, y_reg, use_cholesky, lambda_1);
-  
-  lars_explicit.DoLARS();
-  
-  
-
-  u32 path_length_std = lars_std.beta_path().size();
-  mat beta_matrix_std = mat(p, path_length_std);
-  for(u32 i = 0; i < path_length_std; i++) {
-    beta_matrix_std.col(i) = lars_std.beta_path()[i];
-  }
-  vec lambda_path_vec_std = conv_to< colvec >::from(lars_std.lambda_path());
-
-  u32 path_length_explicit = lars_explicit.beta_path().size();
-  mat beta_matrix_explicit = mat(p, path_length_explicit);
-  for(u32 i = 0; i < path_length_explicit; i++) {
-    beta_matrix_explicit.col(i) = lars_explicit.beta_path()[i];
-  }
-  vec lambda_path_vec_explicit = conv_to< colvec >::from(lars_explicit.lambda_path());
-
-  
-  double beta_error = norm(beta_matrix_std - beta_matrix_explicit, "fro");
-  
-  double lambda_error = norm(lambda_path_vec_std - lambda_path_vec_explicit, 2);
-
-  if((beta_error > ERROR_TOL) || (lambda_error > ERROR_TOL)) {
-    printf("beta_error = %e\n", beta_error);
-    printf("lambda_error = %e\n", lambda_error);
-    return true;
-  }
-  else {
-    return false;
-  }
-}
-
-
-int main(int argc, char* argv[]) {
-  u32 n_random_tests = 1000;
-  
-  for(u32 i = 0; i < n_random_tests; i++) {
-    double lambda_1 = drand48() * 10.0;
-    double lambda_2 = drand48() * 10.0;
-    for(u32 use_cholesky = 0; use_cholesky < 2; use_cholesky++) {
-      if(TestElasticNet(use_cholesky, lambda_1, lambda_2)) {
-	printf("Random Test %d Failed!: use_cholesky = %d, lambda_1 = %e, lambda_2 = %e\n",
-	       i,
-	       use_cholesky,
-	       lambda_1,
-	       lambda_2);
-	return EXIT_FAILURE;
-      }
-      else {
-	printf("random test %d passed: use_cholesky = %d, lambda_1 = %e, lambda_2 = %e\n",
-	       i,
-	       use_cholesky,
-	       lambda_1,
-	       lambda_2);
-      }
-    }
-  }
-  printf("All Tests Passed\n");
-  return EXIT_SUCCESS;
-}




More information about the mlpack-svn mailing list