[mlpack-git] master, mlpack-1.0.x: Added more ToString, updated test, took advantage of new tab function. (0341b5a)

gitdub at big.cc.gt.atl.ga.us gitdub at big.cc.gt.atl.ga.us
Thu Mar 5 21:42:39 EST 2015


Repository : https://github.com/mlpack/mlpack

On branches: master,mlpack-1.0.x
Link       : https://github.com/mlpack/mlpack/compare/904762495c039e345beba14c1142fd719b3bd50e...f94823c800ad6f7266995c700b1b630d5ffdcf40

>---------------------------------------------------------------

commit 0341b5ac57a7c17a3b448f19c676f0dad043c7fe
Author: birm <birm at gatech.edu>
Date:   Fri Feb 7 00:48:55 2014 +0000

    Added more ToString, updated test, took advantage of new tab function.


>---------------------------------------------------------------

0341b5ac57a7c17a3b448f19c676f0dad043c7fe
 .../aug_lagrangian/aug_lagrangian_impl.hpp         |   7 +-
 src/mlpack/methods/emst/dtb_impl.hpp               |   2 +-
 src/mlpack/methods/fastmks/fastmks_impl.hpp        |   2 +-
 src/mlpack/methods/kernel_pca/kernel_pca_impl.hpp  |   2 +-
 src/mlpack/methods/kmeans/kmeans_impl.hpp          |   2 +-
 src/mlpack/methods/lsh/lsh_search_impl.hpp         |   4 +-
 src/mlpack/methods/nca/nca.hpp                     |   3 +
 src/mlpack/methods/nca/nca_impl.hpp                |  13 +++
 .../methods/neighbor_search/neighbor_search.hpp    |   3 +
 .../neighbor_search/neighbor_search_impl.hpp       |  22 +++++
 src/mlpack/methods/nmf/nmf.hpp                     |   3 +
 src/mlpack/methods/nmf/nmf_impl.hpp                |  13 +++
 src/mlpack/methods/pca/pca.cpp                     |  10 ++
 src/mlpack/methods/pca/pca.hpp                     |   3 +
 src/mlpack/methods/radical/radical.cpp             |  12 +++
 src/mlpack/methods/radical/radical.hpp             |   3 +
 src/mlpack/methods/range_search/range_search.hpp   |   3 +
 .../methods/range_search/range_search_impl.hpp     |  14 +++
 src/mlpack/tests/to_string_test.cpp                | 107 +++++++++++++++++----
 19 files changed, 198 insertions(+), 30 deletions(-)

diff --git a/src/mlpack/core/optimizers/aug_lagrangian/aug_lagrangian_impl.hpp b/src/mlpack/core/optimizers/aug_lagrangian/aug_lagrangian_impl.hpp
index 32648c7..e994662 100644
--- a/src/mlpack/core/optimizers/aug_lagrangian/aug_lagrangian_impl.hpp
+++ b/src/mlpack/core/optimizers/aug_lagrangian/aug_lagrangian_impl.hpp
@@ -54,9 +54,10 @@ template<typename LagrangianFunction>
 std::string AugLagrangian<LagrangianFunction>::ToString() const{
   std::ostringstream convert;
   convert << "AugLagrangian [" << this << "]" << std::endl;
-  // Fix this! Why Only log? Ostream is lonely.
-  Log::Debug  << "  Function to be Optimized: " << function << std::endl;
-  Log::Debug << "L-BFGS Selected: " << lbfgs << std::endl;
+  convert << "  Function to be Optimized: " <<std::endl;
+  convert << mlpack::util::Indent(function.ToString(),2);
+  convert << "    L-BFGS Selected: " <<std::endl; 
+  convert << mlpack::util::Indent(lbfgs.ToString(),2);
   return convert.str();
 }
 
diff --git a/src/mlpack/methods/emst/dtb_impl.hpp b/src/mlpack/methods/emst/dtb_impl.hpp
index 07396eb..138ef55 100644
--- a/src/mlpack/methods/emst/dtb_impl.hpp
+++ b/src/mlpack/methods/emst/dtb_impl.hpp
@@ -304,7 +304,7 @@ std::string DualTreeBoruvka<MetricType, TreeType>::ToString() const
   convert << "  Total Distance: " << totalDist <<std::endl;
   convert << "  Naive: " << naive << std::endl;
   convert << "  Metric: " << std::endl;
-  convert << mlpack::util::Indent(mlpack::util::Indent(metric.ToString()));
+  convert << mlpack::util::Indent(metric.ToString(),2);
   convert << std::endl;
   return convert.str();
 }
diff --git a/src/mlpack/methods/fastmks/fastmks_impl.hpp b/src/mlpack/methods/fastmks/fastmks_impl.hpp
index 313ebf2..e044795 100644
--- a/src/mlpack/methods/fastmks/fastmks_impl.hpp
+++ b/src/mlpack/methods/fastmks/fastmks_impl.hpp
@@ -309,7 +309,7 @@ std::string FastMKS<KernelType, TreeType>::ToString() const
   convert << "  Naive: " << naive << std::endl;
   convert << "  Single: " << single << std::endl;
   convert << "  Metric: " << std::endl;
-  convert << mlpack::util::Indent(mlpack::util::Indent(metric.ToString()));
+  convert << mlpack::util::Indent(metric.ToString(),2);
   convert << std::endl;
   return convert.str();
 }
diff --git a/src/mlpack/methods/kernel_pca/kernel_pca_impl.hpp b/src/mlpack/methods/kernel_pca/kernel_pca_impl.hpp
index 85f3464..b607d70 100644
--- a/src/mlpack/methods/kernel_pca/kernel_pca_impl.hpp
+++ b/src/mlpack/methods/kernel_pca/kernel_pca_impl.hpp
@@ -128,7 +128,7 @@ std::string KernelPCA<KernelType>::ToString() const
   convert << "KernelPCA [" << this << "]" << std::endl;
   convert << "  Center Transformed: " << centerTransformedData <<std::endl;
   convert << "  Kernel Type: " << std::endl;
-  convert <<  mlpack::util::Indent(mlpack::util::Indent(kernel.ToString()));
+  convert <<  mlpack::util::Indent(kernel.ToString(),2);
   convert << std::endl;
   return convert.str();
 }
diff --git a/src/mlpack/methods/kmeans/kmeans_impl.hpp b/src/mlpack/methods/kmeans/kmeans_impl.hpp
index 72c92d8..6d48517 100644
--- a/src/mlpack/methods/kmeans/kmeans_impl.hpp
+++ b/src/mlpack/methods/kmeans/kmeans_impl.hpp
@@ -815,7 +815,7 @@ std::string KMeans<MetricType,
   convert << "  Overclustering Factor: " << overclusteringFactor <<std::endl;
   convert << "  Max Iterations: " << maxIterations <<std::endl;
   convert << "  Metric: " << std::endl;
-  convert << mlpack::util::Indent(mlpack::util::Indent(metric.ToString()));
+  convert << mlpack::util::Indent(metric.ToString(),2);
   convert << std::endl;
   return convert.str();
 }
diff --git a/src/mlpack/methods/lsh/lsh_search_impl.hpp b/src/mlpack/methods/lsh/lsh_search_impl.hpp
index 8e01179..1fec8b9 100644
--- a/src/mlpack/methods/lsh/lsh_search_impl.hpp
+++ b/src/mlpack/methods/lsh/lsh_search_impl.hpp
@@ -397,8 +397,8 @@ std::string LSHSearch<SortPolicy>::ToString() const
   convert << "LSHSearch [" << this << "]" << std::endl;
   convert << "  Reference Set: " << referenceSet.n_rows << "x" ;
   convert <<  referenceSet.n_cols << std::endl;
-  if (&referenceSet != & querySet)
-    convert << "  QueryeSet: " << querySet.n_rows << "x" << querySet.n_cols 
+  if (&referenceSet != &querySet)
+    convert << "  QuerySet: " << querySet.n_rows << "x" << querySet.n_cols 
         << std::endl;
   convert << "  Number of Projections: " << numProj << std::endl;
   convert << "  Number of Tables: " << numTables << std::endl;
diff --git a/src/mlpack/methods/nca/nca.hpp b/src/mlpack/methods/nca/nca.hpp
index c37612e..2d1c5df 100644
--- a/src/mlpack/methods/nca/nca.hpp
+++ b/src/mlpack/methods/nca/nca.hpp
@@ -83,6 +83,9 @@ class NCA
   OptimizerType<SoftmaxErrorFunction<MetricType> >& Optimizer()
   { return optimizer; }
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
  private:
   //! Dataset reference.
   const arma::mat& dataset;
diff --git a/src/mlpack/methods/nca/nca_impl.hpp b/src/mlpack/methods/nca/nca_impl.hpp
index 5774ac9..0bba28b 100644
--- a/src/mlpack/methods/nca/nca_impl.hpp
+++ b/src/mlpack/methods/nca/nca_impl.hpp
@@ -40,6 +40,19 @@ void NCA<MetricType, OptimizerType>::LearnDistance(arma::mat& outputMatrix)
   Timer::Stop("nca_sgd_optimization");
 }
 
+template<typename MetricType, template<typename> class OptimizerType>
+std::string NCA<MetricType, OptimizerType>::ToString() const
+{
+  std::ostringstream convert;
+  convert << "NCA  [" << this << "]" << std::endl;
+  convert << "  Dataset: " << dataset.n_rows << "x" << dataset.n_cols 
+      << std::endl;
+  convert << "  Metric: " << std::endl << 
+      mlpack::util::Indent(metric.ToString(),2);
+  return convert.str();
+}
+
+
 }; // namespace nca
 }; // namespace mlpack
 
diff --git a/src/mlpack/methods/neighbor_search/neighbor_search.hpp b/src/mlpack/methods/neighbor_search/neighbor_search.hpp
index ca7f855..e391b0e 100644
--- a/src/mlpack/methods/neighbor_search/neighbor_search.hpp
+++ b/src/mlpack/methods/neighbor_search/neighbor_search.hpp
@@ -193,6 +193,9 @@ class NeighborSearch
               arma::Mat<size_t>& resultingNeighbors,
               arma::mat& distances);
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
  private:
   //! Copy of reference dataset (if we need it, because tree building modifies
   //! it).
diff --git a/src/mlpack/methods/neighbor_search/neighbor_search_impl.hpp b/src/mlpack/methods/neighbor_search/neighbor_search_impl.hpp
index 0905d81..bc55520 100644
--- a/src/mlpack/methods/neighbor_search/neighbor_search_impl.hpp
+++ b/src/mlpack/methods/neighbor_search/neighbor_search_impl.hpp
@@ -287,4 +287,26 @@ void NeighborSearch<SortPolicy, MetricType, TreeType>::Search(
   }
 } // Search
 
+
+//Return a String of the Object.
+template<typename SortPolicy, typename MetricType, typename TreeType>
+std::string NeighborSearch<SortPolicy, MetricType, TreeType>::ToString() const
+{
+  std::ostringstream convert;
+  convert << "NearestNeighborSearch [" << this << "]" << std::endl;
+  convert << "  Reference Set: " << referenceSet.n_rows << "x" ;
+  convert <<  referenceSet.n_cols << std::endl;
+  if (&referenceSet != &querySet)
+    convert << "  QuerySet: " << querySet.n_rows << "x" << querySet.n_cols 
+        << std::endl;
+  convert << "  Reference Tree: " << referenceTree << std::endl;
+  if (&referenceTree != &queryTree)
+    convert << "  QueryTree: " << queryTree << std::endl;
+  convert << "  Tree Owner: " << treeOwner << std::endl;
+  convert << "  Naive: " << naive << std::endl;
+  convert << "  Metric: " << std::endl;
+  convert << mlpack::util::Indent(metric.ToString(),2);
+  return convert.str();
+}
+
 #endif
diff --git a/src/mlpack/methods/nmf/nmf.hpp b/src/mlpack/methods/nmf/nmf.hpp
index 570df1f..bdc0d25 100644
--- a/src/mlpack/methods/nmf/nmf.hpp
+++ b/src/mlpack/methods/nmf/nmf.hpp
@@ -144,6 +144,9 @@ class NMF
   //! Modify the H update rule.
   HUpdateRule& HUpdate() { return hUpdate; }
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
 }; // class NMF
 
 }; // namespace nmf
diff --git a/src/mlpack/methods/nmf/nmf_impl.hpp b/src/mlpack/methods/nmf/nmf_impl.hpp
index ea077ed..5cc097b 100644
--- a/src/mlpack/methods/nmf/nmf_impl.hpp
+++ b/src/mlpack/methods/nmf/nmf_impl.hpp
@@ -94,5 +94,18 @@ void NMF<InitializationRule, WUpdateRule, HUpdateRule>::Apply(
       << iteration << " iterations." << std::endl;
 }
 
+//Return a String of the object
+template<typename InitializationRule,
+         typename WUpdateRule,
+         typename HUpdateRule>
+std::string NMF<InitializationRule, WUpdateRule, HUpdateRule>::ToString() const
+{
+  std::ostringstream convert;
+  convert << "Non negative matrix factorization [" << this << "]" << std::endl;
+  convert << "  Max Iterations: " << maxIterations << std::endl;
+  convert << "  Minimum Residue: " << minResidue<< std::endl;
+  return convert.str();
+}
+
 }; // namespace nmf
 }; // namespace mlpack
diff --git a/src/mlpack/methods/pca/pca.cpp b/src/mlpack/methods/pca/pca.cpp
index 47b56c0..4e02737 100644
--- a/src/mlpack/methods/pca/pca.cpp
+++ b/src/mlpack/methods/pca/pca.cpp
@@ -169,3 +169,13 @@ double PCA::Apply(arma::mat& data, const double varRetained) const
 
   return varSum;
 }
+
+// return a string of this object.
+std::string PCA::ToString() const
+{
+  std::ostringstream convert;
+  convert << "Principal Component Analysis  [" << this << "]" << std::endl;
+  if (scaleData)  
+    convert << "  Scaling Data: TRUE" << std::endl;
+  return convert.str();
+}
diff --git a/src/mlpack/methods/pca/pca.hpp b/src/mlpack/methods/pca/pca.hpp
index 4b8512b..df6bce6 100644
--- a/src/mlpack/methods/pca/pca.hpp
+++ b/src/mlpack/methods/pca/pca.hpp
@@ -100,6 +100,9 @@ class PCA
   //! the data when PCA is performed.
   bool& ScaleData() { return scaleData; }
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
  private:
   //! Whether or not the data will be scaled by standard deviation when PCA is
   //! performed.
diff --git a/src/mlpack/methods/radical/radical.cpp b/src/mlpack/methods/radical/radical.cpp
index 18ec45f..c812ced 100644
--- a/src/mlpack/methods/radical/radical.cpp
+++ b/src/mlpack/methods/radical/radical.cpp
@@ -184,3 +184,15 @@ void mlpack::radical::WhitenFeatureMajorMatrix(const mat& matX,
   matWhitening = matU * diagmat(1 / sqrt(s)) * trans(matV);
   matXWhitened = matX * matWhitening;
 }
+
+// return a string of this object.
+std::string Radical::ToString() const
+{
+  std::ostringstream convert;
+  convert << "Radical  [" << this << "]" << std::endl;
+  convert << "  StdDev of Noise: " << noiseStdDev << std::endl;
+  convert << "  Number of Replicates: " << replicates << std::endl;
+  convert << "  Number of Angles: " << angles << std::endl;
+  convert << "  M value: " << m << std::endl;
+  return convert.str();
+}
diff --git a/src/mlpack/methods/radical/radical.hpp b/src/mlpack/methods/radical/radical.hpp
index 9db8d62..eb05626 100644
--- a/src/mlpack/methods/radical/radical.hpp
+++ b/src/mlpack/methods/radical/radical.hpp
@@ -106,6 +106,9 @@ class Radical
   //! Modify the number of sweeps.
   size_t& Sweeps() { return sweeps; }
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
  private:
   //! Standard deviation of the Gaussian noise added to the replicates of
   //! the data points during Radical2D.
diff --git a/src/mlpack/methods/range_search/range_search.hpp b/src/mlpack/methods/range_search/range_search.hpp
index a8c1508..1f9c5d3 100644
--- a/src/mlpack/methods/range_search/range_search.hpp
+++ b/src/mlpack/methods/range_search/range_search.hpp
@@ -186,6 +186,9 @@ class RangeSearch
               std::vector<std::vector<size_t> >& neighbors,
               std::vector<std::vector<double> >& distances);
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
  private:
   //! Copy of reference matrix; used when a tree is built internally.
   typename TreeType::Mat referenceCopy;
diff --git a/src/mlpack/methods/range_search/range_search_impl.hpp b/src/mlpack/methods/range_search/range_search_impl.hpp
index 85fb842..03afd77 100644
--- a/src/mlpack/methods/range_search/range_search_impl.hpp
+++ b/src/mlpack/methods/range_search/range_search_impl.hpp
@@ -277,6 +277,20 @@ void RangeSearch<MetricType, TreeType>::Search(
   }
 }
 
+template<typename MetricType, typename TreeType>
+std::string RangeSearch<MetricType, TreeType>::ToString() const
+{
+  std::ostringstream convert;
+  convert << "Range Search  [" << this << "]" << std::endl;
+  if (treeOwner)  
+    convert << "  Tree Owner: TRUE" << std::endl;
+  if (naive)  
+    convert << "  Naive: TRUE" << std::endl;
+  convert << "  Metric: " << std::endl << 
+      mlpack::util::Indent(metric.ToString(),2);
+  return convert.str();
+}
+
 }; // namespace range
 }; // namespace mlpack
 
diff --git a/src/mlpack/tests/to_string_test.cpp b/src/mlpack/tests/to_string_test.cpp
index 410eb26..8b333d1 100644
--- a/src/mlpack/tests/to_string_test.cpp
+++ b/src/mlpack/tests/to_string_test.cpp
@@ -33,6 +33,7 @@
 #include <mlpack/core/tree/hrectbound.hpp>
 #include <mlpack/core/tree/periodichrectbound.hpp>
 #include <mlpack/core/tree/statistic.hpp>
+
 #include <mlpack/methods/cf/cf.hpp>
 #include <mlpack/methods/det/dtree.hpp>
 #include <mlpack/methods/emst/dtb.hpp>
@@ -46,6 +47,12 @@
 #include <mlpack/methods/local_coordinate_coding/lcc.hpp>
 #include <mlpack/methods/logistic_regression/logistic_regression.hpp>
 #include <mlpack/methods/lsh/lsh_search.hpp>
+#include <mlpack/methods/neighbor_search/neighbor_search.hpp>
+#include <mlpack/methods/nmf/nmf.hpp>
+#include <mlpack/methods/nca/nca.hpp>
+#include <mlpack/methods/pca/pca.hpp>
+#include <mlpack/methods/radical/radical.hpp>
+#include <mlpack/methods/range_search/range_search.hpp>
 
 using namespace mlpack;
 using namespace mlpack::kernel;
@@ -191,9 +198,9 @@ BOOST_AUTO_TEST_CASE(MahalanobisDistanceString)
 
 BOOST_AUTO_TEST_CASE(SGDString)
 {
-  const arma::mat g(2,2);
+  const arma::mat g(2, 2);
   const arma::Col<size_t> v(2);
-  SoftmaxErrorFunction<> a(g,v);
+  SoftmaxErrorFunction<> a(g, v);
 	mlpack::optimization::SGD<SoftmaxErrorFunction<> > d(a);
   Log::Debug << d;
   std::string s = d.ToString();
@@ -202,9 +209,9 @@ BOOST_AUTO_TEST_CASE(SGDString)
 
 BOOST_AUTO_TEST_CASE(L_BFGSString)
 {
-  const arma::mat g(2,2);
+  const arma::mat g(2, 2);
   const arma::Col<size_t> v(2);
-  SoftmaxErrorFunction<> a(g,v);
+  SoftmaxErrorFunction<> a(g, v);
 	mlpack::optimization::L_BFGS<SoftmaxErrorFunction<> > d(a);
   Log::Debug << d;
   std::string s = d.ToString();
@@ -233,7 +240,7 @@ BOOST_AUTO_TEST_CASE(BallBoundString)
 
 BOOST_AUTO_TEST_CASE(BinSpaceString)
 {
-  arma::mat q(2,2);
+  arma::mat q(2, 2);
   q.randu();
   BinarySpaceTree<HRectBound<1> > d(q);
   Log::Debug << d;
@@ -244,7 +251,7 @@ BOOST_AUTO_TEST_CASE(BinSpaceString)
 BOOST_AUTO_TEST_CASE(CFString)
 {
   size_t a = 1 ;
-  arma::mat c(3,3);
+  arma::mat c(3, 3);
   c(0, 0) = 1;
   c(0, 1) = 2;
   c(0, 2) = 1.5;
@@ -254,7 +261,7 @@ BOOST_AUTO_TEST_CASE(CFString)
   c(2, 0) = 1;
   c(2, 1) = 3;
   c(2, 2) = 0.7;
-  mlpack::cf::CF d(a,a,c);
+  mlpack::cf::CF d(a, a, c);
   Log::Debug << d;
   std::string s = d.ToString();
   BOOST_REQUIRE_NE(s, "");
@@ -262,7 +269,7 @@ BOOST_AUTO_TEST_CASE(CFString)
 
 BOOST_AUTO_TEST_CASE(DetString)
 {
-  arma::mat c(4,4);
+  arma::mat c(4, 4);
   c.randn();
   mlpack::det::DTree d(c);
   Log::Debug << d;
@@ -272,7 +279,7 @@ BOOST_AUTO_TEST_CASE(DetString)
 
 BOOST_AUTO_TEST_CASE(EmstString)
 {
-  arma::mat c(4,4);
+  arma::mat c(4, 4);
   c.randu();
   mlpack::emst::DualTreeBoruvka<> d(c);
   Log::Debug << d;
@@ -282,7 +289,7 @@ BOOST_AUTO_TEST_CASE(EmstString)
 
 BOOST_AUTO_TEST_CASE(FastMKSString)
 {
-  arma::mat c(4,4);
+  arma::mat c(4, 4);
   c.randn();
   mlpack::fastmks::FastMKS<LinearKernel> d(c);
   Log::Debug << d;
@@ -292,7 +299,7 @@ BOOST_AUTO_TEST_CASE(FastMKSString)
 
 BOOST_AUTO_TEST_CASE(GMMString)
 {
-  arma::mat c(400,40);
+  arma::mat c(400, 40);
   c.randn();
   mlpack::gmm::GMM<> d(5, 4);
   Log::Debug << d;
@@ -302,7 +309,7 @@ BOOST_AUTO_TEST_CASE(GMMString)
 
 BOOST_AUTO_TEST_CASE(HMMString)
 {
-  mlpack::hmm::HMM<> d(5,4);
+  mlpack::hmm::HMM<> d(5, 4);
   Log::Debug << d;
   std::string s = d.ToString();
   BOOST_REQUIRE_NE(s, "");
@@ -311,7 +318,7 @@ BOOST_AUTO_TEST_CASE(HMMString)
 BOOST_AUTO_TEST_CASE(KPCAString)
 {
   LinearKernel k;
-  mlpack::kpca::KernelPCA<LinearKernel> d(k,false);
+  mlpack::kpca::KernelPCA<LinearKernel> d(k, false);
   Log::Debug << d;
   std::string s = d.ToString();
   BOOST_REQUIRE_NE(s, "");
@@ -335,11 +342,11 @@ BOOST_AUTO_TEST_CASE(LarsString)
 
 BOOST_AUTO_TEST_CASE(LinRegString)
 {
-  arma::mat c(40,40);
-  arma::mat b(40,1);
+  arma::mat c(40, 40);
+  arma::mat b(40, 1);
   c.randn();
   b.randn();
-  mlpack::regression::LinearRegression d(c,b);
+  mlpack::regression::LinearRegression d(c, b);
   Log::Debug << d;
   std::string s = d.ToString();
   BOOST_REQUIRE_NE(s, "");
@@ -351,7 +358,7 @@ BOOST_AUTO_TEST_CASE(LCCString)
   const size_t b=3;
   const double a=1;
   c.randn();
-  mlpack::lcc::LocalCoordinateCoding<> d(c,b,a);
+  mlpack::lcc::LocalCoordinateCoding<> d(c, b, a);
   Log::Debug << d;
   std::string s = d.ToString();
   BOOST_REQUIRE_NE(s, "");
@@ -359,18 +366,19 @@ BOOST_AUTO_TEST_CASE(LCCString)
 
 BOOST_AUTO_TEST_CASE(LogRegString)
 {
-  arma::mat c(40,40);
-  arma::mat b(40,1);
+  arma::mat c(40, 40);
+  arma::mat b(40, 1);
   c.randn();
   b.randn();
-  mlpack::regression::LogisticRegression<> d(c,b);
+  mlpack::regression::LogisticRegression<> d(c, b);
   Log::Debug << d;
   std::string s = d.ToString();
   BOOST_REQUIRE_NE(s, "");
 }
+
 BOOST_AUTO_TEST_CASE(LSHString)
 {
-  arma::mat c(40,40);
+  arma::mat c(40, 40);
   const size_t b=3;
   c.randn();
   mlpack::neighbor::LSHSearch<NearestNeighborSort> d(c, b, b);
@@ -379,4 +387,61 @@ BOOST_AUTO_TEST_CASE(LSHString)
   BOOST_REQUIRE_NE(s, "");
 }
 
+BOOST_AUTO_TEST_CASE(NeighborString)
+{
+  arma::mat c(40, 40);
+  c.randn();
+  mlpack::neighbor::NeighborSearch<> d(c, c);
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
+BOOST_AUTO_TEST_CASE(NMFString)
+{
+  arma::mat c(40, 40);
+  c.randn();
+  mlpack::nmf::NMF<> d;
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
+BOOST_AUTO_TEST_CASE(NCAString)
+{
+  arma::mat c(40, 40);
+  arma::Col<size_t> b(3);
+  c.randn();
+  mlpack::nca::NCA<> d(c, b);
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
+BOOST_AUTO_TEST_CASE(PCAString)
+{
+  mlpack::pca::PCA d(true);
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
+BOOST_AUTO_TEST_CASE(RadicalString)
+{
+  mlpack::radical::Radical d;
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
+BOOST_AUTO_TEST_CASE(RangeSearchString)
+{
+  arma::mat c(40, 40);
+  c.randn();
+  mlpack::range::RangeSearch<> d(c);
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
 BOOST_AUTO_TEST_SUITE_END();



More information about the mlpack-git mailing list