Commit Graph
13123 Commits
Author SHA1 Message Date
Ryan Curtin 431392d8a7 Add new contributor. 2015-05-20 11:15:20 -04:00
Ryan Curtin 7811d53cb3 Document new feature. 2015-05-20 11:14:27 -04:00
Ryan Curtin 822efa58c7 Add new tree trait. 2015-05-20 11:13:42 -04:00
Ryan Curtin 6c7ac8c0e8 Reinclude dual-tree cover tree test for k-means. 2015-05-20 11:13:42 -04:00
Ryan Curtin 4c71640e73 Fix unnecessary copy. 2015-05-20 11:13:42 -04:00
Ryan Curtin cdb9c34c0b Fix include ordering. 2015-05-20 11:13:41 -04:00
Ryan Curtin 8943424494 Fix include ordering. 2015-05-20 11:13:41 -04:00
Ryan Curtin 644dfd9808 Fix unnecessary copy. 2015-05-20 11:13:41 -04:00
Ryan Curtin 722d37594b Remove debugging output. Cover trees work. 2015-05-20 11:13:41 -04:00
Ryan Curtin 1915392315 Fix typo. 2015-05-20 11:13:41 -04:00
Ryan Curtin 64b52e0c12 Refactor UpdateTree() to pass parent bounds.
This is a little bit tighter, I think, and is necessary for cover trees, where the MaxDistance() to a node is not necessarily bounded above by the MaxDistance() to the node's parent.
2015-05-20 11:13:41 -04:00
Ryan Curtin fc380437e1 Fix centroid calculation for cover tree. 2015-05-20 11:13:41 -04:00
Ryan Curtin 37c5173940 Fix includes. 2015-05-20 11:13:41 -04:00
Ryan Curtin ac2d3a0f48 Only unmap if necessary. 2015-05-20 11:13:41 -04:00
Ryan Curtin 5538fb0441 Remove self-flagellation; no longer necessary. 2015-05-20 11:13:41 -04:00
Ryan Curtin 55a7ba8909 Adapt to trees that aren't just binary. 2015-05-20 11:13:41 -04:00
Ryan Curtin 77d750c8fd Merge pull request #438 from jahabrewer/master
Add OpenMP support to density estimation tree code
2015-05-20 11:13:26 -04:00
Janzen Brewer a63ddcdd77 Replace unsupported array operation with arma::vec
Dynamic length arrays are a g++ extension and their initialization is
only supported from g++-4.9.
2015-05-15 22:44:25 +00:00
Janzen Brewer 340b34b091 Optimize small things in density estimation trees
While doing other work, I noticed a few things that could use
improvement:
  * An std::vector that is used as an array
  * Unnecessary dynamic memory allocation
I fixed these things and measured a marginal speedup.
2015-05-15 07:48:54 -07:00
Janzen Brewer fecccd38d9 Add OpenMP support to density estimation tree code
There are two parts to the OpenMP support. First, cmake was instructed
to compile with compiler-appropriate OpenMP flags. Second, three OpenMP
pragmas were added to dt_utils.cpp to parallelize the cross-validation
loop. No non-pragma code changes were necessary.
2015-05-14 07:53:25 -07:00
Ryan Cirtin 322deab1ff Fix typo/bug and memory leak. 2015-05-12 14:23:44 -04:00
Marcus Edel 8fce9086d1 Handle 3rd tensors, when calculating the first derivatives of the identity function. 2015-05-10 13:33:07 +02:00
Marcus Edel a1ff4e1722 Add convenience typedefs: ConvLayer, PoolingLayer. 2015-05-10 13:33:07 +02:00
Ryan Curtin f7c45b202a When BinarySpaceTree was refactored, its traits were not.
And thus the traits didn't work unless you were using the default SplitType.
2015-05-08 12:03:02 -04:00
Ryan Curtin dde839eaf3 Don't specify the exact type; that's superfluous. 2015-05-08 11:53:08 -04:00
Ryan Curtin bece04ae4d Fix header guard. 2015-05-08 11:47:15 -04:00
Ryan Curtin 148bfca48c Use MidpointSplit by default. 2015-05-07 15:10:52 -04:00
Ryan Curtin 07a099f2b6 Add midpoint split. This often produces better trees than mean split... 2015-05-07 15:10:51 -04:00
Ryan Curtin 34eb8da76f Remove pedantic ;s. 2015-05-07 15:10:51 -04:00
Marcus Edel 237ab40b5a Refactor the convolutional neural network class, it's almost idenical with the ffnn code, but we add more features in the future, so copy the code right away. 2015-05-05 22:15:57 +02:00
Marcus Edel b0ab609870 Add the convolution neural network to the network traits. 2015-05-05 22:15:57 +02:00
Ryan Curtin 9c34c98c8d Refactor LSH. Don't used squared distances. 2015-05-05 15:38:14 -04:00
Ryan Curtin 66341ba1d7 Add methods for counting distance computations. 2015-05-05 15:38:14 -04:00
Marcus Edel 6137e52d32 Refactor neuron layer class to support 3rd order tensors. 2015-05-04 21:13:35 +02:00
Marcus Edel 5b5e1cf5b9 Add method to get the number of slices. 2015-05-04 21:13:35 +02:00
Marcus Edel 47dd33db77 Refactor conv connection to support 3rd order tensors. 2015-05-04 21:13:34 +02:00
Marcus Edel 2c868b684f Rename the conv connection class. 2015-05-04 21:13:34 +02:00
Marcus Edel 89fb9ec142 Style overhaul, and clarify some comments. 2015-05-04 21:13:34 +02:00
Marcus Edel 609ee9c7ad Refactor pooling connection to support 3rd order tensors. 2015-05-04 21:13:34 +02:00
Ryan Curtin 6caf31a493 Fix memory leak and bug. 2015-05-04 11:36:13 -04:00
Ryan Curtin b9d571606d Refactor to use BoundTraits. Remove nextDimension.
The extra overhead of tracking the number of tied dimensions is overkill, when that situation will happen so infrequently in practice.  It used to happen with the BallBound where all dimensions are always the same, but the BoundTraits solution is better.
2015-05-04 11:12:39 -04:00
Ryan Curtin acbf832a79 Add a BoundTraits<> class for template metaprogramming. 2015-05-04 10:20:35 -04:00
Ryan Curtin 744b3268b4 Count base cases and scores correctly. 2015-05-03 21:37:45 -04:00
Ryan Curtin 9d8c55236d Oops, did not apply changes to other overload. 2015-05-03 21:37:37 -04:00
Ryan Curtin 076156df78 This wasn't actually mean split before. Now it is. 2015-05-03 19:34:14 -04:00
Ryan Curtin 77893ce4a5 Make sure the tree doesn't split on the same dimension over and over again when there's a tie. 2015-05-03 19:12:00 -04:00
Ryan Curtin e603caa2af Refactor BinarySpaceTree to use instantiated splitter.
This isn't currently user-passable, but, maybe later.
2015-05-03 18:41:35 -04:00
Marcus Edel 174d2de995 Fix ambiguous constructor. 2015-05-03 22:14:54 +02:00
Marcus Edel d60fca25a2 Add new connection trait. 2015-05-03 22:14:54 +02:00
Marcus Edel f2dcb8fcbc Adapt new design pattern. 2015-05-03 22:14:54 +02:00