Marcus Edel
|
2adbba4c04
|
Using backtrace() become somewhat tricky when going multi-platform. Use CMake to figure out the correct header and library.
|
2015-03-22 20:51:50 +01:00 |
|
Marcus Edel
|
1588ab09a9
|
FindPackageHandleStandardArgs.cmake ships with CMake from version 2.8 onwards, since we require CMake 2.8.5 delete the outdated copy.
|
2015-03-22 20:51:50 +01:00 |
|
Stephen Tu
|
9ea13de61f
|
fix unused parameter warning
|
2015-03-22 11:56:54 -07:00 |
|
Ryan Curtin
|
732598ddc1
|
Minor cleanup of backtrace code; all style fixes.
|
2015-03-20 17:30:04 -04:00 |
|
Ryan Curtin
|
8bd3f96474
|
Attempt 2: avoid min/max definitions.
|
2015-03-20 09:13:59 -04:00 |
|
Ryan Curtin
|
a12065450b
|
Undef max first (thabks Joseph for pointing this out).
|
2015-03-20 06:41:21 -04:00 |
|
Stephen Tu
|
b9edf2beec
|
Merge pull request #419 from stephentu/master
Cleanup: remove trailing whitespace in source files
|
2015-03-14 14:31:18 -07:00 |
|
Stephen Tu
|
507f91358b
|
Cleanup: remove trailing whitespace in source files
|
2015-03-14 13:50:38 -07:00 |
|
Stephen Tu
|
3c32013479
|
Remove un-necessary string copy for GetTimer()
|
2015-03-14 13:44:04 -07:00 |
|
Ryan Curtin
|
70342dd8e5
|
Comment out failing tests; to be fixed shortly.
|
2015-03-12 16:00:25 -04:00 |
|
Ryan Curtin
|
2c3c33d727
|
Revert "An attempt at making things faster. Might work?" It didn't.
This reverts commit 226baea962279aef52e2ab9ba90691e0e0200d31.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
8c7c81981e
|
An attempt at making things faster. Might work?
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
3f763886f3
|
Always mark the owner. This fixes some unusual and unexpected floating point errors where the owner will not actually be set.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
43ab267514
|
Make traversal depth-first in the queries. This results in less memory usage, and some amount of speedup.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
5ee125c678
|
Fix a bug where we pruned too tightly. Provide a little more debugging output for errors, too (but this debugging is commented out by default).
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
8d30f34835
|
More accurate counting of calculations.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
4003537371
|
Make the search *actually* breadth-first. Significant speedups result!
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
727edc7a24
|
Use one-leaf trees for better performance.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
01ec8a54be
|
A tighter, but random, prune. Minor speedup. Also add a commented-out check for the lower bounds, and fix a minor bug that screwed them up.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
b2fc22aefd
|
Pre-emptive prunes. Potentially a slowdown. Not always, though, I don't think. I may revert this.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
030d36d7fa
|
Implement Rescore(). Minor speedup.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
536c639f88
|
Prune nodes whose points and children are pruned. This gives significant speedup, and on my little test dataset, this is the fastest algorithm yet that I have created.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
078eef08d5
|
Update lower bounds when possible. Surprisingly, no speedup anywhere?
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
ba7f71b367
|
Don't perform cluster 1-NN unless we have to.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
e650149355
|
Unmap intercluster distances (oops). Minor speedup.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
95cb008c6d
|
Start applying prune on intercluster distances. Not quite done yet.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
f440ca00db
|
Perform tree update at start of iteration. Cache some variables inside DTNNKMeans.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
928fd6dde0
|
Coalesce and decoalesce the tree.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
4ab12266cb
|
Avoid iterating over every point when pruned. Cache the amount the upper bounds and lower bounds must change when the node becomes unpruned.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
99b8d56dc1
|
Add static point prunes. Fairly significant runtime improvement.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
51e14ecf1a
|
Fix a bug. And LastUpperBound() doesn't work. The bugfix speeds thigns up, too.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
853b4bf6e6
|
Basic static pruning. Minor speedup.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
670a56a58f
|
Refactor to apply mappings earlier.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
2201a2f05d
|
Do mapping correctly; handle cover trees right.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
45a731f7b4
|
Make DTNNKMeans work again. Next up, tree coalescion. (Is that a word?)
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
1d2edb9c20
|
Refactor DTNNKMeans according to the new algorithm. Lots of stuff torn out. It'll go back in when the time is right.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
06b279cace
|
Handle cover trees. They don't have two leaves. This still won't work *quite* right for coalescing/decoalescing though.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
905be1e614
|
Test with regular kd-trees and cover trees. The test conditions for the cover tree need to be adapted a little bit.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
540480ea66
|
Round four. Start over. This time, I proved that the algorithm is right before implementing it. This should help make debugging a lot easier.
|
2015-03-12 15:42:46 -04:00 |
|
Ryan Curtin
|
55c72afc77
|
Use default leaf size.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
595ae211e2
|
Try to keep the query and reference levels equal.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
3dc8249ce7
|
Use existing bounds, if we can.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
076fceb62d
|
Update reference to Github.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
70deac5abb
|
Allow autodetection of number of centroids.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
506c405bb8
|
Make the 'clustering' timer encompass everything. Including the tree building time.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
e2be4fb391
|
Compute max cluster distance after failed prune. This gives us another chance at a prune, and gives very minor speedup.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
e36e25f2d9
|
Coalesce the tree before kNN. Speedup! This is a fairly significant speedup, actually.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
820ba7490a
|
Refactoring, and tighten a bound for minor speedup.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
72f2ddd519
|
Refactoring to reduce runtime of tree update. It speeds things up in terms of distance computations too, a bit.
|
2015-03-12 15:42:45 -04:00 |
|
Ryan Curtin
|
b3c521ff48
|
Refactor: remove unnecessary temporary.
|
2015-03-12 15:42:45 -04:00 |
|