Ryan Curtin
|
08e203341f
|
Check in modifications.
|
2012-05-21 15:54:30 +00:00 |
|
Ryan Curtin
|
a9581ba870
|
We can do polynomial kernels too.
|
2012-05-20 17:53:27 +00:00 |
|
Ryan Curtin
|
5e8f67e200
|
Add a kernel which I'll remove later. I don't like it...
|
2012-05-20 17:53:20 +00:00 |
|
Ryan Curtin
|
c652644a6b
|
Rewrite to only use one queue. Not very happy with this implementation.
|
2012-05-19 03:44:34 +00:00 |
|
Ryan Curtin
|
8c9380aa2c
|
Use unsafe_col() 'cause it's faster.
|
2012-05-18 23:03:13 +00:00 |
|
Ryan Curtin
|
c1e8043196
|
Initialize products to DBL_MIN.
|
2012-05-18 22:33:32 +00:00 |
|
Ryan Curtin
|
d0c81255b3
|
Ensmallen and randomize.
|
2012-05-18 22:30:35 +00:00 |
|
Ryan Curtin
|
3b3a802192
|
This file doesn't exist. I didn't need it.
|
2012-05-18 22:09:51 +00:00 |
|
Ryan Curtin
|
af7500b9d8
|
Reimplement single-tree search. It's faster now.
|
2012-05-18 22:00:35 +00:00 |
|
Ryan Curtin
|
171d9dc24d
|
UL and ULL extensions for older GCC.
|
2012-05-18 21:56:22 +00:00 |
|
Ryan Curtin
|
174fc0514d
|
unsafe_col() is faster.
|
2012-05-18 03:30:20 +00:00 |
|
Ryan Curtin
|
858356907d
|
Avoid double-evaluation of base case.
|
2012-05-18 03:25:21 +00:00 |
|
Ryan Curtin
|
ee59215607
|
Add template specalization for linear kernel.
|
2012-05-17 19:09:24 +00:00 |
|
Ryan Curtin
|
6511fbb92d
|
Don't get it backwards...
|
2012-05-17 18:40:56 +00:00 |
|
Ryan Curtin
|
7a9c7cb12d
|
Add maxip executable.
|
2012-05-17 18:10:14 +00:00 |
|
Ryan Curtin
|
c4eb63a837
|
Give number of prunes.
|
2012-05-17 18:10:06 +00:00 |
|
Ryan Curtin
|
121c87b0d0
|
It helps if the conditional is right, too.
|
2012-05-17 17:26:59 +00:00 |
|
Ryan Curtin
|
e06600362a
|
Clarify error message; k can be equal to the number of points.
|
2012-05-17 17:26:10 +00:00 |
|
Ryan Curtin
|
1833987d8a
|
Add simple first test for MaxIP.
|
2012-05-17 16:55:58 +00:00 |
|
Ryan Curtin
|
ee99f80295
|
Add maxip to project build.
|
2012-05-17 16:55:50 +00:00 |
|
Ryan Curtin
|
609523cd78
|
Add CMake configuration so MaxIP gets compiled.
|
2012-05-17 16:55:35 +00:00 |
|
Ryan Curtin
|
10788af881
|
Add MaxIP class.
|
2012-05-17 16:55:26 +00:00 |
|
Ryan Curtin
|
443e8d8c06
|
Add rules for the MaxIP single-tree search.
|
2012-05-17 16:55:16 +00:00 |
|
Ryan Curtin
|
f3c9fa6b35
|
Add the IPMetric, which is the "inner product" metric which calculates the
metric induced by a kernel.
|
2012-05-17 16:54:53 +00:00 |
|
Ryan Curtin
|
2f988945d8
|
Remove debugging output.
|
2012-05-17 15:57:00 +00:00 |
|
Ryan Curtin
|
70de44b54c
|
Add directory for implementation of MaxIP. I think it needs a better name...
|
2012-05-16 20:41:27 +00:00 |
|
Ryan Curtin
|
a4aed0d744
|
Add a dual-tree test for cover trees.
|
2012-05-16 18:59:22 +00:00 |
|
Ryan Curtin
|
b3ba215036
|
Add rules for cover tree search. This breaks the nice abstractions I was trying
for.
|
2012-05-16 18:58:36 +00:00 |
|
Ryan Curtin
|
067c07ecc7
|
Add preferred traverser and dual cover tree traverser (which doesn't prune at
the moment).
|
2012-05-16 18:57:39 +00:00 |
|
Ryan Curtin
|
6cdc78c9a0
|
Add a preferred dual tree traverser.
|
2012-05-16 18:46:38 +00:00 |
|
Ryan Curtin
|
1110261953
|
Correctly handle cases where implicit nodes are created.
|
2012-05-16 18:44:38 +00:00 |
|
Ryan Curtin
|
063a62a288
|
I didn't do this right; I forgot about the "UpdateAfterRecursion" step and broke
everything. So... revert to the recursive implementation for now.
|
2012-05-11 16:56:03 +00:00 |
|
Ryan Curtin
|
ea6b8b0d5d
|
Add DualTreeBreadthFirstTraverser (at this moment, not rigorously tested).
|
2012-05-10 01:11:32 +00:00 |
|
Ryan Curtin
|
61896da157
|
Well, that would break everything...
|
2012-05-09 22:29:37 +00:00 |
|
Ryan Curtin
|
9910cd107e
|
Make this an iterative implementation.
|
2012-05-09 22:11:04 +00:00 |
|
Ryan Curtin
|
b7a2c6dd5c
|
This bothers me a lot more than it should.
(used to say "5mins,4.3secs", now says "5mins, 4.3secs")
|
2012-05-09 20:30:16 +00:00 |
|
Ryan Curtin
|
dea573c5f0
|
Use DualTreeDepthFirstTraverser for naive and dual-tree calculations, and remove
all of the guts we previously needed but don't anymore (ComputeBaseCase,
ComputeDualNeighborsRecursion, ComputeSingleNeighborsRecursion).
|
2012-05-09 20:26:37 +00:00 |
|
Ryan Curtin
|
cb3af4bdfd
|
Add implementation of rules for dual-tree search.
|
2012-05-09 20:26:02 +00:00 |
|
Ryan Curtin
|
19578142f1
|
Add an option to use cover trees.
|
2012-05-09 20:25:47 +00:00 |
|
Ryan Curtin
|
46f8a38d07
|
Add dual_tree_depth_first_traverser.hpp to build list.
|
2012-05-09 20:25:01 +00:00 |
|
Ryan Curtin
|
bc32a30281
|
Include statistic.hpp (so we have EmptyStatistic).
|
2012-05-09 20:24:50 +00:00 |
|
Ryan Curtin
|
5218ec8afc
|
Save just a little time where we can.
|
2012-05-09 20:24:39 +00:00 |
|
Ryan Curtin
|
19853300b7
|
Add a dual-tree depth-first traverser.
|
2012-05-09 20:20:14 +00:00 |
|
Ryan Curtin
|
18743fcac2
|
Remove unnecessary debug output.
|
2012-05-09 20:18:18 +00:00 |
|
Ryan Curtin
|
bf25afc0bd
|
Fix some formatting and style issues, and then add a test for nearest-neighbors
cover tree.
|
2012-05-04 00:15:10 +00:00 |
|
Ryan Curtin
|
bc78baf138
|
Use the tree's preferred traverser type.
|
2012-05-04 00:14:44 +00:00 |
|
Ryan Curtin
|
52fde2b15a
|
Update API to use TreeType::MinDistance() because other tree types may not have
a bound object.
|
2012-05-04 00:14:29 +00:00 |
|
Ryan Curtin
|
115d43c1e8
|
Update our traversers so that they don't consider self-children. I am not too
happy with how unclean it is, but I expect it'll get cleaned later.
|
2012-05-04 00:13:55 +00:00 |
|
Ryan Curtin
|
48a8fe65f2
|
Modify CoverTree API towards a more standard API. It can be used with
NeighborSearch now... although it probably will fail miserably.
|
2012-05-04 00:12:44 +00:00 |
|
Ryan Curtin
|
12434a3776
|
Modify the API of BinarySpaceTree to include a few more methods. Starting to
settle on a more standard tree API.
|
2012-05-04 00:09:22 +00:00 |
|