1
0
mirror of https://github.com/sjwhitworth/golearn.git synced 2025-04-30 13:48:57 +08:00

79 Commits

Author SHA1 Message Date
Ayush
a380d191f4 Removed Changing Seed 2020-09-06 09:30:38 +05:30
Ayush
333997b024 Adding Comments 2020-08-30 18:17:18 +05:30
Ayush
0270ec8579 IsolationForest in trees.go
Adding info on Isolation Forest in trees.go
2020-08-27 18:04:34 +05:30
Ayush
d20c03e2b3 Adding isolation_test 2020-08-25 09:59:19 +05:30
Ayush
452acbabb3 Adding Isolation + Fixing previous import issue 2020-08-24 14:26:45 +05:30
Ayush
27b86ce3ea Delete tmp 2020-08-06 21:43:47 +05:30
Ayush
b689fe0c58 Fixing Typo + tmp file 2020-08-03 09:41:35 +05:30
Ayush
cd2b86aa2e Changing var name 2020-08-01 11:43:14 +05:30
Ayush
6a42fcd4ae catching nInstances == 0 2020-08-01 11:36:53 +05:30
Ayush
9d1ac82a40 Optimizing Loss Calculation 2020-08-01 11:25:53 +05:30
Ayush
ae2338c2c1 Updating package level details 2020-07-31 12:38:34 +05:30
Ayush
7f8ce6d113 Removing Panics 2020-07-31 11:01:20 +05:30
Ayush
d587340e4a Renaming Impurity Functions 2020-07-30 11:21:06 +05:30
Ayush
1954aae7a6 Changing name of Use_not 2020-07-30 10:27:16 +05:30
Ayush
2d2af0a58f Removing Clutter
Partial Modularization of best split method. Shorten method by declaring variables in same line as well.

Also removing redundant functions, and adding into cart_utils.
2020-07-28 14:17:18 +05:30
Ayush
ef751e62c4 Adding cart_test.go 2020-07-27 17:08:44 +05:30
Ayush
91a27e3ca0 Fixing Comments 2020-07-27 15:03:12 +05:30
Ayush
abed408f9b Updating Dataset + Naming 2020-07-26 11:21:20 +05:30
Ayush
c0c3b2e1bf Fixing Sorting 2020-07-25 13:22:15 +05:30
Ayush
b16b60fcb5 Adding Example script for CART 2020-07-23 16:45:31 +05:30
Ayush
c083759523 Adding Changes 2020-07-22 14:34:59 +05:30
Ayush
08529c42cf Added Comments for Regressor 2020-07-18 14:21:50 +05:30
Ayush
16eac7d86d Adding Regression Trees 2020-07-18 12:26:50 +05:30
Ayush
d1228c5508 Adding Integration For Fixed Data Grid in Predict And Evaluate 2020-07-18 10:47:22 +05:30
Ayush
8848652943 Added Decision Tree Classifier
CART implementation of Decision Tree Classifier, based on Gini Impurity or Entropy, as selected by the user.
2020-07-16 13:37:34 +05:30
Richard Townsend
ac9fa85307 Fix for error that happens on Go 1.11 and above 2019-03-23 18:54:04 +00:00
Soypete
019f1015dd change gonum matrix definitions to match with current gonum version 2019-03-19 22:49:58 -06:00
ss8651twtw
1e1b5f11fb Format code 2018-06-16 22:14:18 +08:00
yenck
bf907556f5 testcase 2018-06-16 22:11:59 +08:00
yenck
80bc1ac6f8 some test for C0 2018-06-16 22:11:59 +08:00
yenck
30071eb8a4 some test for C9 2018-06-16 22:11:59 +08:00
Ilya Tocar
676f69a426 trees: speed-up training
Avoid quadratic loop in getNumericAttributeEntropy.
We don't need to recalculate whole distribution for each split,
just move changed values. Also use array of slices instead of
map of maps of strings to avoid map overhead.

For our case I see time reductions from 100+ hours to 50 minutes.
I've added benchmark with synthetic data (iris.csv repeated 100 times)
and it also shows a nice improvement:

name               old time/op  new time/op  delta
RandomForestFit-8    117s ± 4%      0s ± 1%  -99.61%  (p=0.001 n=5+10)

0 is a rounding quirk of benchstat, it should be closer to 0.5s:

name               time/op
RandomForestFit-8  460ms ± 1%
2018-05-08 14:59:41 -05:00
Richard Townsend
58ae6f4d1b trees: Try to fix premature write-after-Close issue 2018-01-28 16:35:55 +00:00
Richard Townsend
e2279995c1 Fixing all tests 2018-01-28 16:22:33 +00:00
Richard Townsend
ce78cd0406 Passes the tests 2018-01-27 18:56:01 +00:00
Richard Townsend
f722f2e59d trees: implement serialization 2018-01-27 18:00:52 +00:00
Richard Townsend
e7fee0a2d1 Reformat, fix tests 2017-09-10 21:10:54 +01:00
Richard Townsend
fc110aab48 Fix bad import, reformat 2017-09-10 20:35:34 +01:00
Richard Townsend
aee475ca14 Fix the trees tests 2017-09-10 20:13:41 +01:00
Richard Townsend
e27215052b ensemble: tests pass 2017-09-10 19:30:02 +01:00
Richard Townsend
768d2cd19f meta: tests are almost passing 2017-09-10 16:59:05 +01:00
Richard Townsend
57e6054404 base: fix unmarshalling attributes, add JSON 2017-08-26 14:56:31 +01:00
Richard Townsend
e68361c162 Genericize for ensemble use 2017-08-08 12:37:57 +01:00
Richard Townsend
a90ef09781 Remove excessive logging 2017-08-08 12:29:00 +01:00
Richard Townsend
d23619eac2 OK, but with a lot of extra printing 2017-08-07 17:26:11 +01:00
meirwahnon
674de9cae3 change Probability order 2017-07-17 16:01:49 +03:00
meirwahnon
518c0d84c4 extren fields of ClassProba 2017-07-17 15:35:35 +03:00
meirwahnon
2b478a0513 fix to float precise 2017-07-17 15:01:08 +03:00
meirwahnon
f56fce1a43 support PredictProba 2017-07-17 14:48:38 +03:00
Ryan Schmukler
cf6192c81c fix(id3): fix panic on SplitAttribute being nil 2016-06-28 14:36:48 -04:00