[mlpack-git] master: Use a simple tree traverser for spill tree (Remove defeatist seach included in single tree traverser). (e33a112)

gitdub at mlpack.org gitdub at mlpack.org
Thu Aug 18 13:39:16 EDT 2016


Repository : https://github.com/mlpack/mlpack
On branch  : master
Link       : https://github.com/mlpack/mlpack/compare/0f4b25acd6aaa14294c044874ba6cc0751712baa...0a19d07bd39e6223991976474bc79671ba8aa0f0

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

commit e33a112643a75842985441abbb46fa9ffe7d9a70
Author: MarcosPividori <marcos.pividori at gmail.com>
Date:   Mon Jul 18 10:33:56 2016 -0300

    Use a simple tree traverser for spill tree (Remove defeatist seach included in single tree traverser).


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

e33a112643a75842985441abbb46fa9ffe7d9a70
 .../core/tree/spill_tree/single_tree_traverser.hpp |  4 +---
 .../tree/spill_tree/single_tree_traverser_impl.hpp | 26 +---------------------
 2 files changed, 2 insertions(+), 28 deletions(-)

diff --git a/src/mlpack/core/tree/spill_tree/single_tree_traverser.hpp b/src/mlpack/core/tree/spill_tree/single_tree_traverser.hpp
index fe0e842..31de071 100644
--- a/src/mlpack/core/tree/spill_tree/single_tree_traverser.hpp
+++ b/src/mlpack/core/tree/spill_tree/single_tree_traverser.hpp
@@ -5,9 +5,7 @@
  *
  * A nested class of SpillTree which traverses the entire tree with a
  * given set of rules which indicate the branches which can be pruned and the
- * order in which to recurse.  This traverser implements a Hybrid sp-tree
- * depth-first search.  Does defeatist search on overlapping nodes,
- * and backtracking on non-overlapping nodes.
+ * order in which to recurse.  This traverser is a depth-first traverser.
  */
 #ifndef MLPACK_CORE_TREE_SPILL_TREE_SINGLE_TREE_TRAVERSER_HPP
 #define MLPACK_CORE_TREE_SPILL_TREE_SINGLE_TREE_TRAVERSER_HPP
diff --git a/src/mlpack/core/tree/spill_tree/single_tree_traverser_impl.hpp b/src/mlpack/core/tree/spill_tree/single_tree_traverser_impl.hpp
index 4bfb9fc..3beed23 100644
--- a/src/mlpack/core/tree/spill_tree/single_tree_traverser_impl.hpp
+++ b/src/mlpack/core/tree/spill_tree/single_tree_traverser_impl.hpp
@@ -5,9 +5,7 @@
  *
  * A nested class of SpillTree which traverses the entire tree with a
  * given set of rules which indicate the branches which can be pruned and the
- * order in which to recurse.  This traverser implements a Hybrid sp-tree
- * depth-first search.  Does defeatist search on overlapping nodes,
- * and backtracking on non-overlapping nodes.
+ * order in which to recurse.  This traverser is a depth-first traverser.
  */
 #ifndef MLPACK_CORE_TREE_SPILL_TREE_SINGLE_TREE_TRAVERSER_IMPL_HPP
 #define MLPACK_CORE_TREE_SPILL_TREE_SINGLE_TREE_TRAVERSER_IMPL_HPP
@@ -61,13 +59,6 @@ SingleTreeTraverser<RuleType>::Traverse(
       // Recurse to the left.
       Traverse(queryIndex, *referenceNode.Left());
 
-      // If overlapping node, let's do defeatist search and ignore backtracking.
-      if (referenceNode.Overlap())
-      {
-        ++numPrunes;
-        return;
-      }
-
       // Is it still valid to recurse to the right?
       rightScore = rule.Rescore(queryIndex, *referenceNode.Right(), rightScore);
 
@@ -81,13 +72,6 @@ SingleTreeTraverser<RuleType>::Traverse(
       // Recurse to the right.
       Traverse(queryIndex, *referenceNode.Right());
 
-      // If overlapping node, let's do defeatist search and ignore backtracking.
-      if (referenceNode.Overlap())
-      {
-        ++numPrunes;
-        return;
-      }
-
       // Is it still valid to recurse to the left?
       leftScore = rule.Rescore(queryIndex, *referenceNode.Left(), leftScore);
 
@@ -107,14 +91,6 @@ SingleTreeTraverser<RuleType>::Traverse(
         // Choose the left first.
         Traverse(queryIndex, *referenceNode.Left());
 
-        // If overlapping node, let's do defeatist search and ignore
-        // backtracking.
-        if (referenceNode.Overlap())
-        {
-          ++numPrunes;
-          return;
-        }
-
         // Is it still valid to recurse to the right?
         rightScore = rule.Rescore(queryIndex, *referenceNode.Right(),
             rightScore);




More information about the mlpack-git mailing list