Marcus Edel
aaa17fc7f5
Avoid generation of the backtrace.hpp entirely.
2015-03-25 21:14:27 +01:00
Ryan Curtin
73b48dd8d3
Refactor tests to eliminate random failures.
...
The tolerance is looser, but the tests now checks whether or not using momentum gives close to the same results as without momentum (s/momentum/regularization/, too).
Fixes #417 .
2015-03-25 02:57:18 -04:00
Ryan Curtin
9724d6c63e
Add a comment, and fix macro name.
2015-03-24 22:32:04 -04:00
Ryan Curtin
15c5546655
Refactor CMake to get version info from git.
...
Instead of subversion. This has been a long time coming...
2015-03-24 22:31:31 -04:00
Ryan Curtin
d34523ae6f
Update comments.
2015-03-24 19:00:46 -04:00
Ryan Curtin
cbccdc7849
Include default unconfigured backtrace.hpp file.
2015-03-24 18:38:05 -04:00
Ryan Curtin
02a4f44aad
Link mlpack against backtrace, but not everything.
2015-03-24 18:27:03 -04:00
Ryan Curtin
bff92b7fcb
Don't include inside the mlpack namespace.
...
A downstream user may try to re-include execinfo and get very confused when it silently fails.
2015-03-24 18:26:19 -04:00
Marcus Edel
98fd81bd84
I was not going to revert the last commit.
2015-03-23 14:05:05 +01:00
Marcus Edel
e0e54db5b4
Add simple Log::Assert test case.
2015-03-23 13:54:43 +01:00
Marcus Edel
3b9e6e362c
Minor cleanup of double header inclusion and file comments.
2015-03-23 13:06:29 +01:00
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