* add function computing balanced accuracy
* documentation for the balanced_accuracy_score
* apply common tests to balanced_accuracy_score
* constrained to binary classification problems only
* add balanced_accuracy_score for CLF test
* add scorer for balanced_accuracy
* reorder the place of importing balanced_accuracy_score to be consistent with others
* eliminate an accidentally added non-ascii character
* remove balanced_accuracy_score from METRICS_WITH_LABELS
* eliminate all non-ascii charaters in the doc of balanced_accuracy_score
* fix doctest for nonexistent scoring function
* fix documentation, clarify linkages to recall and auc
* FIX: added changes as per last review See #6752, fixes#6747
* FIX: fix typo
* FIX: remove flake8 errors
* DOC: merge fixes
* DOC: remove unwanted files
* DOC update what's new
* DOC cleaning up what's new for 0.19
* More cleaning up
* More cleaning up
* Deprecations
* Clean up merge
* Update
* TODOs to prose and minor changes
* Changed models and minor fixes
* sort
* Merge in 0.18.2 docs
* Missing entry from 0.18 logs
* Optimistically add some features to highlights
* Forgotten user directive
* Fix alignment
* Cleaning up for Andy's comments
* Mention beta_loss=0 speedup
* Update
* Clean up new what's new entries
* DOC Add changes missed from what's new
And other minor things.
This took lots of effort which I would have not committed where I not home sick...
* ENH cross_val_score now supports multiple metrics
* DOCFIX permutation_test_score
* ENH validate multiple metric scorers
* ENH Move validation of multimetric scoring param out
* ENH GridSearchCV and RandomizedSearchCV now support multiple metrics
* EXA Add an example demonstrating the multiple metric in GridSearchCV
* ENH Let check_multimetric_scoring tell if its multimetric or not
* FIX For single metric name of scorer should remain 'score'
* ENH validation_curve and learning_curve now support multiple metrics
* MNT move _aggregate_score_dicts helper into _validation.py
* TST More testing/ Fixing scores to the correct values
* EXA Add cross_val_score to multimetric example
* Rename to multiple_metric_evaluation.py
* MNT Remove scaffolding
* FIX doctest imports
* FIX wrap the scorer and unwrap the score when using _score() in rfe
* TST Cleanup the tests. Test for is_multimetric too
* TST Make sure it registers as single metric when scoring is of that type
* PEP8
* Don't use dict comprehension to make it work in python2.6
* ENH/FIX/TST grid_scores_ should not be available for multimetric evaluation
* FIX+TST delegated methods NA when multimetric is enabled...
TST Add general tests to GridSearchCV and RandomizedSearchCV
* ENH add option to disable delegation on multimetric scoring
* Remove old function from __all__
* flake8
* FIX revert disable_on_multimetric
* stash
* Fix incorrect rebase
* [ci skip]
* Make sure refit works as expected and remove irrelevant tests
* Allow passing standard scorers by name in multimetric scorers
* Fix example
* flake8
* Address reviews
* Fix indentation
* Ensure {'acc': 'accuracy'} and ['precision'] are valid inputs
* Test that for single metric, 'score' is a key
* Typos
* Fix incorrect rebase
* Compare multimetric grid search with multiple single metric searches
* Test X, y list and pandas input; Test multimetric for unsupervised grid search
* Fix tests; Unsupervised multimetric gs will not pass until #8117 is merged
* Make a plot of Precision vs ROC AUC for RandomForest varying the n_estimators
* Add example to grid_search.rst
* Use the classic tuning of C param in SVM instead of estimators in RF
* FIX Remove scoring arg in deafult scorer test
* flake8
* Search for min_samples_split in DTC; Also show f-score
* REVIEW Make check_multimetric_scoring private
* FIX Add more samples to see if 3% mismatch on 32 bit systems gets fixed
* REVIEW Plot best score; Shorten legends
* REVIEW/COSMIT multimetric --> multi-metric
* REVIEW Mark the best scores of P/R scores too
* Revert "FIX Add more samples to see if 3% mismatch on 32 bit systems gets fixed"
This reverts commit ba766d98353380a186fbc3dade211670ee72726d.
* ENH Use looping for iid testing
* FIX use param grid as scipy's stats dist in 0.12 do not accept seed
* ENH more looping less code; Use small non-noisy dataset
* FIX Use named arg after expanded args
* TST More testing of the refit parameter
* Test that in multimetric search refit to single metric, the delegated methods
work as expected.
* Test that setting probability=False works with multimetric too
* Test refit=False gives sensible error
* COSMIT multimetric --> multi-metric
* REV Correct example doc
* COSMIT
* REVIEW Make tests stronger; Fix bugs in _check_multimetric_scorer
* REVIEW refit param: Raise for empty strings
* TST Invalid refit params
* REVIEW Use <scorer_name> alone; recall --> Recall
* REV specify when we expect scorers to not be None
* FLAKE8
* REVERT multimetrics in learning_curve and validation_curve
* REVIEW Simpler coding style
* COSMIT
* COSMIT
* REV Compress example a bit. Move comment to top
* FIX fit_grid_point's previous API must be preserved
* Flake8
* TST Use loop; Compare with single-metric
* REVIEW Use dict-comprehension instead of helper
* REVIEW Remove redundant test
* Fix tests incorrect braces
* COSMIT
* REVIEW Use regexp
* REV Simplify aggregation of score dicts
* FIX precision and accuracy test
* FIX doctest and flake8
* TST the best_* attributes multimetric with single metric
* Address @jnothman's review
* Address more comments \o/
* DOCFIXES
* Fix use the validated fit_param from fit's arguments
* Revert alpha to a lower value as before
* Using def instead of lambda
* Address @jnothman's review batch 1: Fix tests / Doc fixes
* Remove superfluous tests
* Remove more superfluous testing
* TST/FIX loop over refit and check found n_clusters
* Cosmetic touches
* Use zip instead of manually listing the keys
* Fix inverse_transform
* FIX bug in fit_grid_point; Allow only single score
TST if fit_grid_point works as intended
* ENH Use only ROC-AUC and F1-score
* Fix typos and flake8; Address Andy's reviews
MNT Add a comment on why we do such a transpose + some fixes
* ENH Better error messages for incorrect multimetric scoring values +...
ENH Avoid exception traceback while using incorrect scoring string
* Dict keys must be of string type only
* 1. Better error message for invalid scoring 2...
Internal functions return single score for single metric scoring
* Fix test failures and shuffle tests
* Avoid wrapping scorer as dict in learning_curve
* Remove doc example as asked for
* Some leftover ones
* Don't wrap scorer in validation_curve either
* Add a doc example and skip it as dict order fails doctest
* Import zip from six for python2.7 compat
* Make cross_val_score return a cv_results-like dict
* Add relevant sections to userguide
* Flake8 fixes
* Add whatsnew and fix broken links
* Use AUC and accuracy instead of f1
* Fix failing doctests cross_validation.rst
* DOC add the wrapper example for metrics that return multiple return values
* Address andy's comments
* Be less weird
* Address more of andy's comments
* Make a separate cross_validate function to return dict and a cross_val_score
* Update the docs to reflect the new cross_validate function
* Add cross_validate to toc-tree
* Add more tests on type of cross_validate return and time limits
* FIX failing doctests
* FIX ensure keys are not plural
* DOC fix
* Address some pending comments
* Remove the comment as it is irrelevant now
* Remove excess blank line
* Fix flake8 inconsistencies
* Allow fit_times to be 0 to conform with windows precision
* DOC specify how refit param is to be set in multiple metric case
* TST ensure cross_validate works for string single metrics + address @jnothman's reviews
* Doc fixes
* Remove the shape and transform parameter of _aggregate_score_dicts
* Address Joel's doc comments
* Fix broken doctest
* Fix the spurious file
* Address Andy's comments
* MNT Remove erroneous entry
* Address Andy's comments
* FIX broken links
* Update whats_new.rst
missing newline
* Add deprecation message and test.
* Adding performance warning and ignore_warnings in test
* Add deprecation to whatsnew and remove LSHForest references from docs.
Removing benchmark for lsh
* resurrect quantile scaler
* move the code in the pre-processing module
* first draft
* Add tests.
* Fix bug in QuantileNormalizer.
* Add quantile_normalizer.
* Implement pickling
* create a specific function for dense transform
* Create a fit function for the dense case
* Create a toy examples
* First draft with sparse matrices
* remove useless functions and non-negative sparse compatibility
* fix slice call
* Fix tests of QuantileNormalizer.
* Fix estimator compatibility
* List of functions became tuple of functions
* Check X consistency at transform and inverse transform time
* fix doc
* Add negative ValueError tests for QuantileNormalizer.
* Fix cosmetics
* Fix compatibility numpy <= 1.8
* Add n_features tests and correct ValueError.
* PEP8
* fix fill_value for early scipy compatibility
* simplify sampling
* Fix tests.
* removing last pring
* Change choice for permutation
* cosmetics
* fix remove remaining choice
* DOC
* Fix inconsistencies
* pep8
* Add checker for init parameters.
* hack bounds and make a test
* FIX/TST bounds are provided by the fitting and not X at transform
* PEP8
* FIX/TST axis should be <= 1
* PEP8
* ENH Add parameter ignore_implicit_zeros
* ENH match output distribution
* ENH clip the data to avoid infinity due to output PDF
* FIX ENH restraint to uniform and norm
* [MRG] ENH Add example comparing the distribution of all scaling preprocessor (#2)
* ENH Add example comparing the distribution of all scaling preprocessor
* Remove Jupyter notebook convert
* FIX/ENH Select feat before not after; Plot interquantile data range for all
* Add heatmap legend
* Remove comment maybe?
* Move doc from robust_scaling to plot_all_scaling; Need to update doc
* Update the doc
* Better aesthetics; Better spacing and plot colormap only at end
* Shameless author re-ordering ;P
* Use env python for she-bang
* TST Validity of output_pdf
* EXA Use OrderedDict; Make it easier to add more transformations
* FIX PEP8 and replace scipy.stats by str in example
* FIX remove useless import
* COSMET change variable names
* FIX change output_pdf occurence to output_distribution
* FIX partial fixies from comments
* COMIT change class name and code structure
* COSMIT change direction to inverse
* FIX factorize transform in _transform_col
* PEP8
* FIX change the magic 10
* FIX add interp1d to fixes
* FIX/TST allow negative entries when ignore_implicit_zeros is True
* FIX use np.interp instead of sp.interpolate.interp1d
* FIX/TST fix tests
* DOC start checking doc
* TST add test to check the behaviour of interp numpy
* TST/EHN Add the possibility to add noise to compute quantile
* FIX factorize quantile computation
* FIX fixes issues
* PEP8
* FIX/DOC correct doc
* TST/DOC improve doc and add random state
* EXA add examples to illustrate the use of smoothing_noise
* FIX/DOC fix some grammar
* DOC fix example
* DOC/EXA make plot titles more succint
* EXA improve explanation
* EXA improve the docstring
* DOC add a bit more documentation
* FIX advance review
* TST add subsampling test
* DOC/TST better example for the docstring
* DOC add ellipsis to docstring
* FIX address olivier comments
* FIX remove random_state in sparse.rand
* FIX spelling doc
* FIX cite example in user guide and docstring
* FIX olivier comments
* EHN improve the example comparing all the pre-processing methods
* FIX/DOC remove title
* FIX change the scaling of the figure
* FIX plotting layout
* FIX ratio w/h
* Reorder and reword the plot_all_scaling example
* Fix aspect ratio and better explanations in the plot_all_scaling.py example
* Fix broken link and remove useless sentence
* FIX fix couples of spelling
* FIX comments joel
* FIX/DOC address documentation comments
* FIX address comments joel
* FIX inline sparse and dense transform
* PEP8
* TST/DOC temporary skipping test
* FIX raise an error if n_quantiles > subsample
* FIX wording in smoothing_noise example
* EXA Denis comments
* FIX rephrasing
* FIX make smoothing_noise to be a boolearn and change doc
* FIX address comments
* FIX verbose the doc slightly more
* PEP8/DOC
* ENH: 2-ways interpolation to avoid smoothing_noise
Simplifies also the code, examples, and documentation
* ENH add suppress validation option
* TST skip problematic doctest
* Rename SUPPRESS_VALIDATION to PRESUME_FINITE
* Change PRESUME_ to ASSUME_ for convention's sake
* DOC add note regarding assert_all_finite
* ENH add set_config context manager for ASSUME_FINITE
* Make ASSUME_FINITE private and provide get_config
* Fix ImportError due to incomplete change in last commit
* TST/DOC tests and more cautious documentation for set_config
* DOC what's new entry for validation suppression
* context manager is now config_context; set_config affects global config
* Rename missed set_config to config_context
* Fix mis-named test
* Mention set_config in narrative docs
* More explicit about limmited restoration of context
* Handle case where error raised in config_context
* Reset all settings after exiting context manager
* Add _RepeatedSplits and RepeatedKFold class
* Add RepeatedStratifiedKFold and doc for repeated cvs
* Change default value of n_repeats
* Change input parameters of repeated cv constructor to n_splits, n_repeats, random_state
* Generate random states in split function rather than store it beforehand
* Doc changes, inheriting RepeatedKFold, RepeatedStratifiedKFold from _RepeatedSplits and other review changes
* Remove blank line, put testcases for deterministic split in loop and add StopIteration check in testcase
* Using rng directly as random_state param to create cv instance and added a check for cvargs
* Fix pep8 warnings
* Changing default values for n_splits and n_repeats and add entry in changelog
* Adding name to the feature
* Missing space
* remove stuff to be removed 0.19
* more changes
* remove classes from 0.19 whatsnew
* remove _LearntSelectorMixin
* remove ProjectedGradientNMF, load_lwf_*
* minor fixes
* remove more copy from logistic regression path
* remove lda, qda from __init__.__all__
* remove pg solver in nmf from tests etc
* remove class_weight="auto" from tests
* doctest change for decision_function_shape="ovr"
* remove transfrom from tree test, minor fixes to tree tests
* some fixes in the tests
* undo changes in functions which still allow 1d input...
* also allow 1d in scale
* more test fixes...
* last test fixes in forest and tree
* svm default value change doctest failures
* pep8
* remove more class_weight="auto" stuff
* minor cosmetics in docstrings deprecated / removed behavior.
* say that store_covariance has been moved to __init__ in discriminant_analysis
* ENH Implement mean squared log error in sklearn.metrics.regression
* TST Add tests for mean squared log error.
* DOC Write user guide and docstring about mean squared log error.
* ENH Add neg_mean_squared_log_error in metrics.scorer
* DOC framework for keeping API refs for deprecated classes/funcs
* DOC tagging deprecated for 0.20
* suggestion for LDA/QDA deprecation
* simplify deprecation message for GaussianProcess
* simplify deprecation messages
* fixup avoid import QuadraticDiscriminantAnalysis in qda.QDA (and similar for LDA).
* fixup test alias lda.LDA is instance of LinearDiscriminantAnalysis
* LOF algorithm
add tests and example
fix DepreciationWarning by reshape(1,-1) one-sample data
LOF with inheritance
lof and lof2 return same score
fix bugs
fix bugs
optimized and cosmit
rm lof2
cosmit
rm MixinLOF + fit_predict
fix travis - optimize pairwise_distance like in KNeighborsMixin.kneighbors
add comparison example + doc
LOF -> LocalOutlierFactor
cosmit
change LOF API:
-fit(X).predict() and fit(X).decision_function() do prediction on X without
considering samples as their own neighbors (ie without considering X as a
new dataset as does fit(X).predict(X))
-rm fit_predict() method
-add a contamination parameter st predict returns a binary value like other
anomaly detection algos
cosmit
doc + debug example
correction doc
pass on doc + examples
pep8 + fix warnings
first attempt at fixing API issues
minor changes
takes into account tguillemot advice
-remove pairwise_distance calculation as to heavy in memory
-add benchmarks
cosmit
minor changes + deals with duplicates
fix depreciation warnings
* factorize the two for loops
* take into account @albertthomas88 review and cosmit
* fix doc
* alex review + rebase
* make predict private add outlier_factor_ attribute and update tests
* make fit_predict take y argument
* fix benchmarks file
* update examples
* make decision_function public (rm X=None default)
* fix travis
* take into account tguillemot review + remove useless k_distance function
* fix broken links :meth:`kneighbors`
* cosmit
* whatsnew
* amueller review + remove _local_outlier_factor method
* add n_neighbors_ parameter the effective nb neighbors we use
* make decision_function private and negative_outlier_factor attribute
* Add the new BayesianGaussianMixture class.
Add the test file for the BayesianGaussianMixture.
* Add the use of the cholesky decomposition of the precision matrix.
* Fix some bugs.
* Modification of GaussianMixture class.
The purpose here is to prepare the integration of BayesianGaussianMixture.
* Fix comments.
* Modification of the Docstring.
* Add license and author.
* Fix pb typo of eq 10.64 and 10.62.
* Correct VBGMM bugs.
* Fix full version.
* Fix the precision normalisation pb.
* Fix all cov_type algo for BayesianGaussianMixture.
* Optimisation of spherical and diag computation.
* Code simplification.
* Check the Gaussian Mixture tests are ok.
* Add test.
* Add new tests for BayesianGaussianMixture and GaussianMixture.
* Add the bayesian_gaussian_example and the doc.
* Fix comments.
* Fix review comments and add license and author.
* Fix test compare covar type.
* Fix reviews.
* Fix tests.
* Fix review comments.
* Correct reviews.
* Fix travis pb.
* Fix circleci pb.
* Fix review comments.
* Fix typo.
* Fix comments.
Add reg_covar and what's new.
* Fix comments.
* Fix comments.
* [ci skip] Correct legend.
Register OneVsRestRegressor as meta estimator
Rename to a more sensible name
Parallel predict and sparse support
Started MultiOutput documentation
Move code to new file multioutput.py
Continuing the move to new multioutput module
Added sample weight support
Better test for sample weights and actually support weights
Added a new test using weighted vs repeated samples to
test sample weight support. Uncovered that weights
were not actually passed on to underlying estimator.
Comment on multiprocess overheads
Move parallel_helper to utils.fixes
This helper works around a python2 limitation on pickling
instance methods
Example of multi-output regression with gradient boosting
Switch to uniform weighted score and updated example
The example now uses a RF with and without the MultiOutput
meta estimator
Added note for removing `score` method
Addressing comments on MultiOutputRegressor
MultiOutputregressor better test for weighted samples
Fix ups
Use explicit keyword argument for passing sample weights and
fix random_state on train-test split in the example
Add gradient calculation in _huber_loss_and_gradient
Add tests to check the correctness of the loss and gradient
Fix for old scipy
Add parameter sigma for robust linear regression
Add gradient formula to robust _huber_loss_and_gradient
Add fit_intercept option and fix tests
Add docs to HuberRegressor and the helper functions
Add example demonstrating ridge_regression vs huber_regression
Add sample_weight implementation
Add scaling invariant huber test
Remove exp and add bounds to fmin_l_bfgs_b
Add sparse data support
Add more tests and refactoring of code
Add narrative docs
review huber regressor
Minor additions to docs and tests
Minor fixes that deals with dealing with NaN values in targets
and old verions of SciPy and NumPy
Add HuberRegressor to robust estimator
Refactored computation of gradient and make docs render properly
Temp
Remove float64 dtype conversion
trivial optimizations and add a note about R
Remove sample_weights special_casing
address @amueller comments
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
ENH NonBLASDotWarning -> EfficiencyWarning; Improve error message
DOC Add exceptions module to modules/classes.rst
MAINT Move ConvergenceWarning, UndefinedMetricWarning et al into exceptions
MAINT Remove ChangedBehaviorWarning from base
DOC/FIX Improve DataConversionWarning's docstring