Commit Graph

240 Commits

Author SHA1 Message Date
seales 0485ada58b General spelling fixes 2015-12-16 09:46:42 -08:00
Rémy Léone 845a7a166b MAINT Use with to handle file 2015-11-20 11:46:12 +01:00
Gilles Louppe 5c8855d0fc Merge pull request #4163 from ngoix/iforest
[MRG + 1] Isolation forest - new anomaly detection algo
2015-10-24 19:53:55 +02:00
ngoix a75eb63194 iforest
example + benchmark

explanation

make some private functions + fix public API

IForest using BaseForest base class for trees

debug + plot_iforest

classic anomaly detection datasets and benchmark

small modif

BaseBagging inheritance

shuffle dataset before benchmarking

BaseBagging inheritance

remove class label 4 from shuttle dataset

pep8 + rm shuttle.csv bench_IsolationForest.png + doc decision_function

add tests

remove comments

fetching kddcup99 and shuttle datasets

fetching kddcup99 and shuttle datasets

pep8

fetching kddcup99 and shuttle datasets

pep8

new files iforest.py and test_iforest.py

sc

alternative to pandas (but very slow)
in kddcup99.py

faster parser

sc

pep8 + cleanup + simplification

example outlier detection

clean and correct

idem

random_state added

percent10=True in benchmark

mc

remove shuttle + minor changes

sc

undo modif on forest.py and recompile cython on _tree.c

fix travis

cosmit

change bagging to fix travis

Revert "change bagging to fix travis"

This reverts commit 30ea500eb818c7a2c6ea5c3d63e75c6935aa3a35.

add max_samples_ in BaseBagging.fit to fix travis

mc

API : don't add fit param but use a private _fit + update tests + examples to avoid warning

adapt to the new structure of _tree.pyx

cosmit

add performance test for iforest

add _tree.c _utils.c _criterion.c

TST : pass on tests

remove test

relax roc-auc to fix AppVeyor

add test on toy samples

Handle depth averaging at python level

plot example: rm html add png

load_kddcup99 -> fetch_kddcup99 + doc

Take into account arjoly comments

sh -> shuffle

add decision_path code from #5487 to bench

Take into account arjoly comments

Revert "add decision_path code from #5487 to bench"

This reverts commit 46ad44ab487f4fd2728d927cbe09000330e8663e.

fix bug with max_samples != int
2015-10-24 15:17:32 +02:00
Glenn Qian 917bacb66e Finish up mlp_refactoring and squash previous commits 2015-10-23 12:08:11 -04:00
Andreas Mueller 3891af8d99 iterate, improve. Nesterov's momentum. 2015-10-21 14:43:38 -04:00
Olivier Grisel 3c8210f752 ENH better 'constant' learning rate schedule 2015-10-21 14:41:41 -04:00
Andreas Mueller cb4c935834 minor fixes to bench_mnist. 2015-10-21 14:41:40 -04:00
Issam Laradji 587315e3a9 (WIP) Added Multi-layer perceptron (MLP)
Seeking to finalize MLP
2015-10-21 14:41:40 -04:00
giorgiop b18f2951e4 randomized_svd: power iter, normalization, benchmark 2015-10-21 11:21:40 +02:00
TomDLT ceeef70037 ENH refactor NMF and add CD solver 2015-09-21 11:42:07 +02:00
TomDLT 94eb61960a ENH add sag solver in LogisticRegression and Ridge 2015-09-10 13:28:02 -04:00
Raghav R V 664d78eb7c MAINT Remove support for the deprecated sequence of sequences
MAINT Remove sequence of sequence support from datasets
MAINT Remove return_indicator param
MAINT Remove multilabel-seq test in OVR
MAINT Remove multilable-seq test in check_cv
MAINT Remove multilabel seq test in label_binarizer
TST type_of_target returns "unknown" for multilabel-sequence types
TST _check_targets should raise a ValueError
DOC show multilabel indicator as an example; remove return_indicator param
DOC use consistent lower case y for target
2015-08-11 22:26:44 +05:30
Joel Nothman 7fca5a1257 COSMIT prefer loops to repetition in LSHForest benchmark 2015-08-09 16:21:18 +10:00
Andreas Mueller 806cb221e7 remove some style errors in bench code. 2015-03-10 16:24:48 -04:00
Saket Choudhary 6f9ce0bbae FIX precompute_gram->precompute as in #2224
Signed-off-by: Saket Choudhary <saketkc@gmail.com>
2015-02-08 11:14:22 -08:00
Arnaud Joly 5bb3cbfd82 DOC add performance for all available classifiers 2015-01-14 09:48:18 +01:00
Arnaud Joly b0dba06d2d ENH Improve script output display 2015-01-12 12:06:07 +01:00
Arnaud Joly fa0ceee4dc ENH add a benchmark on mnist 2015-01-12 11:51:48 +01:00
Joel Nothman ed5c63fb0f TST LSHForest benchmark script uses vectorised queries and fixed random_state 2014-12-23 07:49:14 +11:00
Lars Buitinck 8181fe98ac FIX LSH benchmark: joblib import, hardcoded /tmp 2014-12-18 19:50:02 +01:00
Olivier Grisel fa70b57b7b DOC: explain the importance of iid index and queries in bench script 2014-12-18 19:47:03 +01:00
maheshakya 53e04ed9cb FIX Fixed benchmark.
ENH Added error bars to scalability example plots.
2014-12-18 19:47:03 +01:00
maheshakya b018524136 Created benchmark for approximate nearest neighbors. 2014-12-18 19:45:07 +01:00
Joel Nothman 081a554698 FIX P/R/F metrics and scorers are now for binary problems only by default
Scorers for different average parameters have been added.
2014-12-09 13:56:51 +11:00
Arnaud Joly 2838a1409f Benchmark: Add more estimators + uncomment text 2014-11-06 13:58:34 +01:00
Arnaud Joly bf9891683b Temporarily allows to set algorithm switching through an environment variable 2014-11-06 13:58:34 +01:00
Arnaud Joly c31d5653b3 wip benchmark 2014-11-06 13:58:34 +01:00
Arnaud Joly 24281b1e74 Lower number of trees 2014-11-06 13:58:33 +01:00
Arnaud Joly 06701fcfe0 ENH add a benchmark script for sparse input data 2014-11-06 13:58:33 +01:00
Danny Sullivan a0f0d461bc fixing merge conflicts 2014-10-09 16:23:45 +02:00
Danny Sullivan d0ea44d5e1 adding space to shape and putting // in average division 2014-10-07 12:47:08 +02:00
Danny Sullivan d6c912969c changing parameters for asgd regression benchmark and changing array shape for docstring 2014-10-07 11:25:37 +02:00
Danny Sullivan 984e9aa8f3 increasing testing precision, putting comment on one line and adding asgd to regression benchmark 2014-10-06 14:39:16 +02:00
Kyle Kastner b2d6a30aeb IncrementalPCA implementation 2014-09-22 13:12:29 -04:00
Arnaud Joly 52023128fe MAINT simplify covertype benchmark 2014-08-14 09:39:58 +02:00
Joel Nothman 0e31553de5 ENH Sparse multilabel target support
All multilabel metric calculation is now performed efficiently over
sparse CSR matrices.
2014-07-30 22:13:11 +10:00
Gael Varoquaux 572709920a MISC: avoid overridding figure in benchs 2014-07-15 17:00:22 +02:00
Andrew Tulloch 3753563c1d ENH - Improve performance of isotonic regression
This supercedes #2940.

PAVA runs in linear time, but the existing algorithm was scaling
approximately quadratically, due to the array pop in the inner loop
being O(N).

I implemented the O(N) version of PAVA using the decreasing subsequences
trick, and the performance is significantly faster in benchmarking.

The benchmarks in this diff (adapted from one of the existing unit
tests) show significant performance improvements - on the order of ~7x
faster for problems of size ~1000, ~30x faster for problems of size
10,000, and ~250x faster for problems of size 100,000.

On correctness - unit tests cover the isotonic regression code fairly
well, and all pass before and after the change. It's a fairly well known
algorithm with a bunch of implementations, so I think this is correct.
In coding up this algorithm I made some mistakes and the unit tests
caught the failures, which makes me more confident in the correctness
now. Still, the performance improvements are surprisingly high.

Added a benchmark script. For an example usage, run:

```
python benchmarks/bench_isotonic.py --iterations 10 --log_min_problem_size 2 --log_max_problem_size 8 --dataset logistic
```
2014-03-09 22:37:38 +01:00
Gael Varoquaux 39f3a76dd6 Merge pull request #2199 from GaelVaroquaux/hc_linkage
[MRG+1] Hierarchical Agglomerative Clustering
2014-03-05 07:00:27 +01:00
Lars Buitinck b97fb3c5fc MAINT drop support for NumPy < 1.6.1 2014-03-02 20:13:57 +01:00
Lars Buitinck eb9bc96b22 FIX GBRT missing from covertype benchmark usage 2014-03-02 13:29:41 +01:00
Gael Varoquaux 75705e2b24 MISC: remove reference to deprecated Ward 2014-02-07 09:25:08 +01:00
Lars Buitinck cdebc18b22 FIX don't put data in source dir in bench_covtype
When running under a tool such as @fabianp's profiler yep,
dirname(__file__) is the location of the tool's __main__.py
instead of the benchmarks directory.

Also, we shipped a tarball containing a large dataset before.
2014-01-13 23:26:50 +01:00
Arnaud Joly 5f57f855df Merge pull request #2643 from jnothman/bench_mutilabel_metrics
[MRG] Add benchmarking script for multilabel metrics
2013-12-09 04:07:57 -08:00
Joel Nothman 84ec4f9bcf COSMIT in response to feedback 2013-12-09 21:11:59 +11:00
Joel Nothman fa5acb2371 TST Add benchmarking script for multilabel metrics 2013-12-07 22:58:56 +11:00
eustache c7c6999a0a fix for np.count_nonzero not present in Numpy < 1.6 2013-11-05 16:57:05 +01:00
eustache 1bdb7b2e06 completed sparsity sections; added benchmark 2013-11-04 14:33:53 +01:00
Lars Buitinck d208c13644 COSMIT friendlier output from faster NMF benchmark
Tolerance lowered to make it run in reasonable time; see #2537.
2013-10-20 19:17:26 +02:00