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

fastlab-svn at coffeetalk-1.cc.gatech.edu fastlab-svn at coffeetalk-1.cc.gatech.edu
Mon Aug 4 17:56:30 EDT 2014


Author: sumedhghaisas
Date: Mon Aug  4 17:56:29 2014
New Revision: 16940

Log:
* added tests for PlainSVD


Added:
   mlpack/trunk/src/mlpack/tests/plain_svd_test.cpp
Modified:
   mlpack/trunk/src/mlpack/tests/CMakeLists.txt

Modified: mlpack/trunk/src/mlpack/tests/CMakeLists.txt
==============================================================================
--- mlpack/trunk/src/mlpack/tests/CMakeLists.txt	(original)
+++ mlpack/trunk/src/mlpack/tests/CMakeLists.txt	Mon Aug  4 17:56:29 2014
@@ -55,6 +55,7 @@
   svd_batch_test.cpp
   svd_incremental_test.cpp
   nystroem_method_test.cpp
+  plain_svd_test.cpp
 )
 # Link dependencies of test executable.
 target_link_libraries(mlpack_test

Added: mlpack/trunk/src/mlpack/tests/plain_svd_test.cpp
==============================================================================
--- (empty file)
+++ mlpack/trunk/src/mlpack/tests/plain_svd_test.cpp	Mon Aug  4 17:56:29 2014
@@ -0,0 +1,44 @@
+#include <mlpack/core.hpp>
+#include <mlpack/methods/cf/plain_svd.hpp>
+
+#include <boost/test/unit_test.hpp>
+#include "old_boost_test_definitions.hpp"
+
+BOOST_AUTO_TEST_SUITE(PlainSVDTest);
+
+using namespace std;
+using namespace mlpack;
+using namespace mlpack::svd;
+using namespace arma;
+
+/**
+ * Test PlainSVD for normal factorization
+ */
+BOOST_AUTO_TEST_CASE(PlainSVDNormalFactorizationTest)
+{
+  mlpack::math::RandomSeed(10);
+  mat test = randu<mat>(5,4);
+
+  PlainSVD svd;
+  arma::mat W, H, sigma;
+  double result = svd.Apply(test, W, sigma, H);
+  
+  BOOST_REQUIRE_LT(result, 1e-15);
+}
+
+/**
+ * Test PlainSVD as wrapper for CF.
+ */
+BOOST_AUTO_TEST_CASE(PlainSVDCFWrapperTest)
+{
+  mlpack::math::RandomSeed(10);
+  mat test = randu<mat>(5,4);
+  
+  PlainSVD svd;
+  mat W, H;
+  double result = svd.Apply(test, 3, W, H);
+  
+  BOOST_REQUIRE_LT(result, 0.1);
+}
+
+BOOST_AUTO_TEST_SUITE_END();



More information about the mlpack-svn mailing list