[mlpack-git] master,mlpack-1.0.x: Finished toString of the methods folder ( sparse coding and rann ); updated test. (7666cb4)

gitdub at big.cc.gt.atl.ga.us gitdub at big.cc.gt.atl.ga.us
Thu Mar 5 21:42:44 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 7666cb46b30c3d1e785125ad4dd3b62d58404a2a
Author: birm <birm at gatech.edu>
Date:   Fri Feb 7 17:30:58 2014 +0000

    Finished toString of the methods folder ( sparse coding and rann ); updated test.


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

7666cb46b30c3d1e785125ad4dd3b62d58404a2a
 src/mlpack/methods/rann/ra_search.hpp              |  4 ++++
 src/mlpack/methods/rann/ra_search_impl.hpp         | 20 ++++++++++++++++++
 src/mlpack/methods/sparse_coding/sparse_coding.hpp |  3 +++
 .../methods/sparse_coding/sparse_coding_impl.hpp   | 13 ++++++++++++
 src/mlpack/tests/to_string_test.cpp                | 24 ++++++++++++++++++++++
 5 files changed, 64 insertions(+)

diff --git a/src/mlpack/methods/rann/ra_search.hpp b/src/mlpack/methods/rann/ra_search.hpp
index cfd2228..e51dd43 100644
--- a/src/mlpack/methods/rann/ra_search.hpp
+++ b/src/mlpack/methods/rann/ra_search.hpp
@@ -73,6 +73,7 @@ class RAQueryStat
   size_t NumSamplesMade() const { return numSamplesMade; }
   //! Modify the number of samples made.
   size_t& NumSamplesMade() { return numSamplesMade; }
+
 };
 
 /**
@@ -286,6 +287,9 @@ class RASearch
    */
   void ResetQueryTree();
 
+  // 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/rann/ra_search_impl.hpp b/src/mlpack/methods/rann/ra_search_impl.hpp
index 6f38814..4389650 100644
--- a/src/mlpack/methods/rann/ra_search_impl.hpp
+++ b/src/mlpack/methods/rann/ra_search_impl.hpp
@@ -354,6 +354,26 @@ void RASearch<SortPolicy, MetricType, TreeType>::ResetRAQueryStat(
     ResetRAQueryStat(&treeNode->Child(i));
 }
 
+// Returns a String of the Object.
+template<typename SortPolicy, typename MetricType, typename TreeType>
+std::string RASearch<SortPolicy, MetricType, TreeType>::ToString() const
+{
+  std::ostringstream convert;
+  convert << "RA Search  [" << 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;
+  if (naive)  
+    convert << "  Naive: TRUE" << std::endl;
+  if (singleMode)
+    convert << "  Single Node: TRUE" << std::endl;
+  convert << "  Metric: " << std::endl << 
+      mlpack::util::Indent(metric.ToString(),2);
+  return convert.str();
+}
+
 }; // namespace neighbor
 }; // namespace mlpack
 
diff --git a/src/mlpack/methods/sparse_coding/sparse_coding.hpp b/src/mlpack/methods/sparse_coding/sparse_coding.hpp
index 98fbc5e..7fec3ae 100644
--- a/src/mlpack/methods/sparse_coding/sparse_coding.hpp
+++ b/src/mlpack/methods/sparse_coding/sparse_coding.hpp
@@ -173,6 +173,9 @@ class SparseCoding
   //! Modify the sparse codes.
   arma::mat& Codes() { return codes; }
 
+  // Returns a string representation of this object. 
+  std::string ToString() const;
+
  private:
   //! Number of atoms.
   size_t atoms;
diff --git a/src/mlpack/methods/sparse_coding/sparse_coding_impl.hpp b/src/mlpack/methods/sparse_coding/sparse_coding_impl.hpp
index bb5fe9b..3f212b4 100644
--- a/src/mlpack/methods/sparse_coding/sparse_coding_impl.hpp
+++ b/src/mlpack/methods/sparse_coding/sparse_coding_impl.hpp
@@ -331,6 +331,19 @@ double SparseCoding<DictionaryInitializer>::Objective() const
   }
 }
 
+template<typename DictionaryInitializer>
+std::string SparseCoding<DictionaryInitializer>::ToString() const
+{
+  std::ostringstream convert;
+  convert << "Sparse Coding  [" << this << "]" << std::endl;
+  convert << "  Data: " << data.n_rows << "x" ;
+  convert <<  data.n_cols << std::endl;
+  convert << "  Atoms: " << atoms << std::endl; 
+  convert << "  Lambda 1: " << lambda1 << std::endl; 
+  convert << "  Lambda 2: " << lambda2 << std::endl; 
+  return convert.str();
+}
+
 }; // namespace sparse_coding
 }; // namespace mlpack
 
diff --git a/src/mlpack/tests/to_string_test.cpp b/src/mlpack/tests/to_string_test.cpp
index 8b333d1..a2b3ddd 100644
--- a/src/mlpack/tests/to_string_test.cpp
+++ b/src/mlpack/tests/to_string_test.cpp
@@ -53,6 +53,8 @@
 #include <mlpack/methods/pca/pca.hpp>
 #include <mlpack/methods/radical/radical.hpp>
 #include <mlpack/methods/range_search/range_search.hpp>
+#include <mlpack/methods/rann/ra_search.hpp>
+#include <mlpack/methods/sparse_coding/sparse_coding.hpp>
 
 using namespace mlpack;
 using namespace mlpack::kernel;
@@ -444,4 +446,26 @@ BOOST_AUTO_TEST_CASE(RangeSearchString)
   BOOST_REQUIRE_NE(s, "");
 }
 
+BOOST_AUTO_TEST_CASE(RannString)
+{
+  arma::mat c(40, 40);
+  c.randn();
+  mlpack::neighbor::RASearch<> d(c);
+  Log::Debug << d;
+  std::string s = d.ToString();
+  BOOST_REQUIRE_NE(s, "");
+}
+
+BOOST_AUTO_TEST_CASE(SparseCodingString)
+{
+  arma::mat c(40, 40);
+  c.randn();
+  const size_t b=3;
+  double a=0.1;
+  mlpack::sparse_coding::SparseCoding<> d(c,b,a);
+  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