[mlpack-git] [mlpack/mlpack] Spill trees (#747)

MarcosPividori notifications at github.com
Wed Aug 17 02:45:20 EDT 2016


> +    // better, then take it.
> +    if (SortPolicy::IsBetter(queryNode.Parent()->Stat().FirstBound(),
> +        worstDistance))
> +      worstDistance = queryNode.Parent()->Stat().FirstBound();
> +  }
> +
> +  // Could the existing bounds be better?
> +  if (SortPolicy::IsBetter(queryNode.Stat().FirstBound(), worstDistance))
> +    worstDistance = queryNode.Stat().FirstBound();
> +
> +  // Cache bounds for later.
> +  queryNode.Stat().FirstBound() = worstDistance;
> +
> +  worstDistance = SortPolicy::Relax(worstDistance, epsilon);
> +
> +  return worstDistance;

@rcurtin I agree. I have removed the specialization of `NeighborSearchRules` for `SpillTrees` in: https://github.com/mlpack/mlpack/pull/747/commits/e4ce9be6795817f7ceebafc26dd2b24c38a356f9 and https://github.com/mlpack/mlpack/pull/747/commits/2bad753ca4859b6b2067d60b4323dcab5438959e.
+ I moved the specific `Score()` calculation on overlapping nodes to the `Defeatist Traversers`.
+ I defined a simple struct `IsSpillTree`, and use it inside `CalculateBound()`, to avoid considering *B_2* bound for `SpillTrees`.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/mlpack/mlpack/pull/747/files/fe090ee13c7cad79e2b7eb8b6690628ba3ead1ed#r75069814
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.cc.gatech.edu/pipermail/mlpack-git/attachments/20160816/7983437b/attachment.html>


More information about the mlpack-git mailing list