[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