[mlpack-git] master: Fix greedy traverser to consider points in non-leaf nodes. (54f7d40)
gitdub at mlpack.org
gitdub at mlpack.org
Sat Aug 20 14:56:07 EDT 2016
Repository : https://github.com/mlpack/mlpack
On branch : master
Link : https://github.com/mlpack/mlpack/compare/3274b05fcc545c3b36f783316fea2e22f79c3d03...1c77230c7d3b9c45fb102cd3c632d9c7248e085e
>---------------------------------------------------------------
commit 54f7d40420c3199ecb0cbe4fa91a544f95758b21
Author: MarcosPividori <marcos.pividori at gmail.com>
Date: Fri Aug 19 12:34:08 2016 -0300
Fix greedy traverser to consider points in non-leaf nodes.
>---------------------------------------------------------------
54f7d40420c3199ecb0cbe4fa91a544f95758b21
src/mlpack/core/tree/greedy_single_tree_traverser_impl.hpp | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/mlpack/core/tree/greedy_single_tree_traverser_impl.hpp b/src/mlpack/core/tree/greedy_single_tree_traverser_impl.hpp
index 95eaa8b..d881158 100644
--- a/src/mlpack/core/tree/greedy_single_tree_traverser_impl.hpp
+++ b/src/mlpack/core/tree/greedy_single_tree_traverser_impl.hpp
@@ -27,13 +27,11 @@ void GreedySingleTreeTraverser<TreeType, RuleType>::Traverse(
const size_t queryIndex,
TreeType& referenceNode)
{
- // If we have reached a leaf node, run the base case as necessary.
- if (referenceNode.IsLeaf())
- {
- for (size_t i = 0; i < referenceNode.NumPoints(); ++i)
- rule.BaseCase(queryIndex, referenceNode.Point(i));
- }
- else
+ // Run the base case as necessary for all the points in the reference node.
+ for (size_t i = 0; i < referenceNode.NumPoints(); ++i)
+ rule.BaseCase(queryIndex, referenceNode.Point(i));
+
+ if (!referenceNode.IsLeaf())
{
// We are prunning all but one child.
numPrunes += referenceNode.NumChildren() - 1;
More information about the mlpack-git
mailing list