[mlpack-svn] [MLPACK] #282: create a "worst-case" tree type to test algorithms with

MLPACK Trac trac at coffeetalk-1.cc.gatech.edu
Wed May 8 19:52:37 EDT 2013


#282: create a "worst-case" tree type to test algorithms with
----------------------+-----------------------------------------------------
 Reporter:  rcurtin   |        Owner:                                    
     Type:  wishlist  |       Status:  new                               
 Priority:  minor     |    Milestone:  mlpack 1.1.0                      
Component:  mlpack    |     Keywords:  dual-tree algorithms, tree, random
 Blocking:            |   Blocked By:                                    
----------------------+-----------------------------------------------------
 In the paper 'Tree-Independent Dual-Tree Algorithms'
 (http://arxiv.org/abs/1304.4327) the general definitions for a space tree
 are laid out.  All of the dual-tree algorithms are written in the
 generalized format detailed in the paper (or, well... they should be
 converted...).  However, I'm nearly certain that the algorithms, as
 implemented, won't work for any arbitrary space tree type.

 So, we should make some kind of space tree which is meant to test these
 algorithms (keep in mind it is not meant to perform the algorithm
 quickly).

 I think it should maybe look something like this:

  * At the creation of each node, it is given a list of points which are
 going to be its descendants.  It picks a random subset of these to be its
 own points, and then passes the rest of the points, plus maybe some of its
 own points, to its children.  This way we get points that are in one
 level, but not the next, but then also in the one after that.

  * The convex subsets represented by each node can (and maybe should) be
 overlapping.

  * The way the convex subsets are expressed should not be dimension-
 specific.  Maybe some kind of n-gon which encloses the descendant points
 and where n is some random number that is different at each node.

  * Some child nodes should be identical copies of the parent node.

 Then, if this is implemented, we will almost certainly find that our dual-
 tree algorithms, as implemented, don't always work with any type of space
 tree.

-- 
Ticket URL: <http://trac.research.cc.gatech.edu/fastlab/ticket/282>
MLPACK <www.fast-lab.org>
MLPACK is an intuitive, fast, and scalable C++ machine learning library developed by the FASTLAB at Georgia Tech under Dr. Alex Gray.


More information about the mlpack-svn mailing list