Skip to content

Commit e5698bd

Browse files
ogriselcgsavardjnothmanthomasjpfankwinkunks
authored
0.22.1 release (#15998)
* DOC fixed default values in dbscan (#15753) * DOC fix incorrect branch reference in contributing doc (#15779) * DOC relabel Feature -> Efficiency in change log (#15770) * DOC fixed Birch default value (#15780) * STY Minior change on code padding in website theme (#15768) * DOC Fix yticklabels order in permutation importances example (#15799) * Fix yticklabels order in permutation importances example * STY Update wrapper width (#15793) * DOC Long sentence was hard to parse and ambiguous in _classification.py (#15769) * DOC Removed duplicate 'classes_' attribute in Naive Bayes classifiers (#15811) * BUG Fixes pandas dataframe bug with boolean dtypes (#15797) * BUG Returns only public estimators in all_estimators (#15380) * DOC improve doc for multiclass and types_of_target (#15333) * TST Increases tol for check_pca_float_dtype_preservation assertion (#15775) * update _alpha_grid class in _coordinate_descent.py (#15835) * FIX Explicit conversion of ndarray to object dtype. (#15832) * BLD Parallelize sphinx builds on circle ci (#15745) * DOC correct url for preprocessing (#15853) * MNT avoid generating too many cross links in examples (#15844) * DOC Correct wrong doc in precision_recall_fscore_support (#15833) * DOC add comment in check_pca_float_dtype_preservation (#15819) Documenting the changes in #15775 * DOC correct indents in docstring _split.py (#15843) * DOC fix docstring of KMeans based on sklearn guideline (#15754) * DOC fix docstring of AgglomerativeClustering based on sklearn guideline (#15764) * DOC fix docstring of AffinityPropagation based on sklearn guideline (#15777) * DOC fixed SpectralCoclustering and SpectralBiclustering docstrings following sklearn guideline (#15778) * DOC fix FeatureAgglomeration and MiniBatchKMeans docstring following sklearn guideline (#15809) * TST Specify random_state in test_cv_iterable_wrapper (#15829) * DOC Include LinearSV{C, R} in models that support sample_weights (#15871) * DOC correct some indents (#15875) * DOC Fix documentation of default values in tree classes (#15870) * DOC fix typo in docstring (#15887) * DOC FIX default value for xticks_rotation in plot_confusion_matrix (#15890) * Fix imports in pip3 ubuntu by suffixing affected files (#15891) * MNT Raise erorr when normalize is invalid in confusion_matrix (#15888) * [MRG] DOC Increases search results for API object results (#15574) * MNT Ignores warning in pyamg for deprecated scipy.random (#15914) * DOC Instructions to troubleshoot Windows path length limit (#15916) * DOC add versionadded directive to some estimators (#15849) * DOC clarify doc-string of roc_auc_score and add references (#15293) * MNT Adds skip lint to azure pipeline CI (#15904) * BLD Fixes bug when building with NO_MATHJAX=1 (#15892) * [MRG] BUG Checks to number of axes in passed in ax more generically (#15760) * EXA Minor fixes in plot_sparse_logistic_regression_20newsgroups.py (#15925) * BUG Do not shadow public functions with deprecated modules (#15846) * Import sklearn._distributor_init first (#15929) * DOC Fix typos, via a Levenshtein-style corrector (#15923) * DOC in canned comment, mention that PR title becomes commit me… (#15935) * DOC/EXA Correct spelling of "Classification" (#15938) * BUG fix pip3 ubuntu update by suffixing file (#15928) * [MRG] Ways to compute center_shift_total were different in "full" and "elkan" algorithms. (#15930) * TST Fixes integer test for train and test indices (#15941) * BUG ensure that parallel/sequential give the same permutation importances (#15933) * Formatting fixes in changelog (#15944) * MRG FIX: order of values of self.quantiles_ in QuantileTransformer (#15751) * [MRG] BUG Fixes constrast in plot_confusion_matrix (#15936) * BUG use zero_division argument in classification_report (#15879) * DOC change logreg solver in plot_logistic_path (#15927) * DOC fix whats new ordering (#15961) * COSMIT use np.iinfo to define the max int32 (#15960) * DOC Apply numpydoc validation to VotingRegressor methods (#15969) Co-authored-by: Tiffany R. Williams <Tiffany8@users.noreply.github.com> * DOC improve naive_bayes.py documentation (#15943) Co-authored-by: Jigna Panchal <40188288+jigna-panchal@users.noreply.github.com> * DOC Fix default values in Perceptron documentation (#15965) * DOC Improve default values in logistic documentation (#15966) Co-authored-by: Guillaume Lemaitre <g.lemaitre58@gmail.com> * DOC Improve documentation of default values for imputers (#15964) * EXA/MAINT Simplify code in manifold learning example (#15949) * DOC Improve default values in SGD documentation (#15967) * DOC Improve defaults in neural network documentation (#15968) * FIX use safe_sparse_dot for callable kernel in LabelSpreading (#15868) * BUG Adds attributes back to check_is_fitted (#15947) Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org> * DOC update check_is_fitted what's new * DOC change python-devel to python3-devel for yum. (#15986) * DOC Correct the default value of values_format in plot_confusion_matrix (#15981) * [MRG] MNT Updates pypy to use 7.2.0 (#15954) * FIX Add missing 'values_format' param to disp.plot() in plot_confusion_matrix (#15937) * FIX support scalar values in fit_params in SearchCV (#15863) * support a scalar fit param * pep8 * TST add test for desired behavior * FIX introduce _check_fit_params to validate parameters * DOC update whats new * TST tests both grid-search and randomize-search * PEP8 * DOC revert unecessary change * TST add test for _check_fit_params * olivier comments * TST fixes * DOC whats new * DOC whats new * TST revert type of error * add olivier suggestions * address olivier comments * address thomas comments * PEP8 * comments olivier * TST fix test by passing X * avoid to call twice tocsr * add case column/row sparse in check_fit_param * provide optional indices * TST check content when indexing params * PEP8 * TST update tests to check identity * stupid fix * use a distribution in RandomizedSearchCV * MNT add lightgbm to one of the CI build * move to another build * do not install dependencies lightgbm * MNT comments on the CI setup * address some comments * Test fit_params compat without dependency on lightgbm Co-authored-by: Guillaume Lemaitre <g.lemaitre58@gmail.com> Co-authored-by: Olivier Grisel <olivier.grisel@ensta.org> * Remove abstractmethod that silently brake downstream packages (#15996) * FIX restore BaseNB._check_X without abstractmethod decoration (#15997) * Update v0.22 changelog for 0.22.1 (#16002) - set the date - move entry for quantile transformer to the 0.22.1 section - fix alphabetical ordering of modules * STY Removes hidden scroll bar (#15999) * Flake8 fixes * Fix: remove left-over lines that should have been deleted during conflict resolution when rebasing * Fix missing imports * Update version * Fix test_check_is_fitted * Make test_sag_regressor_computed_correctly deterministic (#16003) Fix #15818. Co-authored-by: cgsavard <claire.savard@colorado.edu> Co-authored-by: Joel Nothman <joel.nothman@gmail.com> Co-authored-by: Thomas J Fan <thomasjpfan@gmail.com> Co-authored-by: Matt Hall <matt@agilegeoscience.com> Co-authored-by: Kathryn Poole <kathryn.poole2@gmail.com> Co-authored-by: lucyleeow <jliu176@gmail.com> Co-authored-by: JJmistry <jayminm22@gmail.com> Co-authored-by: Juan Carlos Alfaro Jiménez <JuanCarlos.Alfaro@uclm.es> Co-authored-by: SylvainLan <sylvain.s.lannuzel@gmail.com> Co-authored-by: Nicolas Hug <contact@nicolas-hug.com> Co-authored-by: Hanmin Qin <qinhanmin2005@sina.com> Co-authored-by: Adrin Jalali <adrin.jalali@gmail.com> Co-authored-by: Vachan D A <vachanda@users.noreply.github.com> Co-authored-by: Sambhav Kothari <sambhavs.email@gmail.com> Co-authored-by: wenliwyan <12013376+wenliwyan@users.noreply.github.com> Co-authored-by: shivamgargsya <shivam.gargshya@gmail.com> Co-authored-by: Reshama Shaikh <rs2715@stern.nyu.edu> Co-authored-by: Oliver Urs Lenz <oulenz@users.noreply.github.com> Co-authored-by: Loïc Estève <loic.esteve@ymail.com> Co-authored-by: Brian Wignall <BrianWignall@gmail.com> Co-authored-by: Ritchie Ng <ritchieng@u.nus.edu> Co-authored-by: Guillaume Lemaitre <g.lemaitre58@gmail.com> Co-authored-by: inderjeet <43402782+inder128@users.noreply.github.com> Co-authored-by: scibol <scibol@users.noreply.github.com> Co-authored-by: Tirth Patel <tirthasheshpatel@gmail.com> Co-authored-by: Bibhash Chandra Mitra <bibhashm220896@gmail.com> Co-authored-by: Alexandre Gramfort <alexandre.gramfort@m4x.org> Co-authored-by: Tiffany R. Williams <Tiffany8@users.noreply.github.com> Co-authored-by: Jigna Panchal <40188288+jigna-panchal@users.noreply.github.com> Co-authored-by: @nkish <19225359+ankishb@users.noreply.github.com> Co-authored-by: Pulkit Mehta <pulkit_mehta_work@yahoo.com> Co-authored-by: David Breuer <DavidBreuer@users.noreply.github.com> Co-authored-by: Niklas <niklas.sm+github@gmail.com> Co-authored-by: Windber <guolipengyeah@126.com> Co-authored-by: Stephen Blystone <29995339+blynotes@users.noreply.github.com> Co-authored-by: Brigitta Sipőcz <b.sipocz@gmail.com>
1 parent 7e85a6d commit e5698bd

File tree

124 files changed

+2087
-1230
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

124 files changed

+2087
-1230
lines changed

.circleci/config.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ jobs:
101101

102102
pypy3:
103103
docker:
104-
- image: pypy:3.6-7.1.1
104+
- image: pypy:3.6-7.2.0
105105
steps:
106106
- restore_cache:
107107
keys:

azure-pipelines.yml

+9-4
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,14 @@ jobs:
1212
- bash: conda create --name flake8_env --yes flake8
1313
displayName: Install flake8
1414
- bash: |
15-
source activate flake8_env
16-
./build_tools/circle/linting.sh
15+
if [[ $BUILD_SOURCEVERSIONMESSAGE =~ \[lint\ skip\] ]]; then
16+
# skip linting
17+
echo "Skipping linting"
18+
exit 0
19+
else
20+
source activate flake8_env
21+
./build_tools/circle/linting.sh
22+
fi
1723
displayName: Run linting
1824
1925
@@ -65,10 +71,9 @@ jobs:
6571
JOBLIB_VERSION: '0.12.3'
6672
COVERAGE: 'true'
6773
# Linux environment to test the latest available dependencies and MKL.
68-
# It runs tests requiring pandas and PyAMG.
74+
# It runs tests requiring lightgbm, pandas and PyAMG.
6975
pylatest_pip_openblas_pandas:
7076
DISTRIB: 'conda-pip-latest'
71-
# FIXME: pinned until SciPy wheels are available for Pyhon 3.8
7277
PYTHON_VERSION: '3.8'
7378
PYTEST_VERSION: '4.6.2'
7479
COVERAGE: 'true'

benchmarks/bench_plot_randomized_svd.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@
104104
# in case the reconstructed (dense) matrix is too large
105105
MAX_MEMORY = np.int(2e9)
106106

107-
# The following datasets can be dowloaded manually from:
107+
# The following datasets can be downloaded manually from:
108108
# CIFAR 10: https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz
109109
# SVHN: http://ufldl.stanford.edu/housenumbers/train_32x32.mat
110110
CIFAR_FOLDER = "./cifar-10-batches-py/"

benchmarks/bench_text_vectorizers.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ def f():
3232
text = fetch_20newsgroups(subset='train').data[:1000]
3333

3434
print("="*80 + '\n#' + " Text vectorizers benchmark" + '\n' + '='*80 + '\n')
35-
print("Using a subset of the 20 newsrgoups dataset ({} documents)."
35+
print("Using a subset of the 20 newsgroups dataset ({} documents)."
3636
.format(len(text)))
3737
print("This benchmarks runs in ~1 min ...")
3838

build_tools/azure/install.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ make_conda() {
1313
version_ge() {
1414
# The two version numbers are separated with a new line is piped to sort
1515
# -rV. The -V activates for version number sorting and -r sorts in
16-
# decending order. If the first argument is the top element of the sort, it
16+
# descending order. If the first argument is the top element of the sort, it
1717
# is greater than or equal to the second argument.
1818
test "$(printf "${1}\n${2}" | sort -rV | head -n 1)" == "$1"
1919
}
@@ -92,6 +92,8 @@ elif [[ "$DISTRIB" == "conda-pip-latest" ]]; then
9292
python -m pip install numpy scipy cython joblib
9393
python -m pip install pytest==$PYTEST_VERSION pytest-cov pytest-xdist
9494
python -m pip install pandas matplotlib pyamg
95+
# do not install dependencies for lightgbm since it requires scikit-learn
96+
python -m pip install lightgbm --no-deps
9597
fi
9698

9799
if [[ "$COVERAGE" == "true" ]]; then

build_tools/circle/build_test_pypy.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,14 @@ source pypy-env/bin/activate
1818
python --version
1919
which python
2020

21-
# XXX: numpy version pinning can be reverted once PyPy
22-
# compatibility is resolved for numpy v1.6.x. For instance,
23-
# when PyPy3 >6.0 is released (see numpy/numpy#12740)
24-
pip install --extra-index https://antocuni.github.io/pypy-wheels/ubuntu numpy Cython pytest
25-
pip install scipy sphinx numpydoc docutils joblib pillow
21+
pip install -U pip
22+
23+
# pins versions to install wheel from https://antocuni.github.io/pypy-wheels/manylinux2010
24+
pip install --extra-index-url https://antocuni.github.io/pypy-wheels/manylinux2010 numpy==1.18.0 scipy==1.3.2
25+
26+
# Install Cython directly
27+
pip install https://antocuni.github.io/pypy-wheels/ubuntu/Cython/Cython-0.29.14-py3-none-any.whl
28+
pip install sphinx numpydoc docutils joblib pillow pytest
2629

2730
ccache -M 512M
2831
export CCACHE_COMPRESS=1

conftest.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def pytest_collection_modifyitems(config, items):
3737
skip_marker = pytest.mark.skip(
3838
reason='FeatureHasher is not compatible with PyPy')
3939
for item in items:
40-
if item.name.endswith(('hashing.FeatureHasher',
40+
if item.name.endswith(('_hash.FeatureHasher',
4141
'text.HashingVectorizer')):
4242
item.add_marker(skip_marker)
4343

doc/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#
33

44
# You can set these variables from the command line.
5-
SPHINXOPTS =
5+
SPHINXOPTS = -j auto
66
SPHINXBUILD ?= sphinx-build
77
PAPER =
88
BUILDDIR = _build

doc/conf.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@
5151
if os.environ.get('NO_MATHJAX'):
5252
extensions.append('sphinx.ext.imgmath')
5353
imgmath_image_format = 'svg'
54+
mathjax_path = ''
5455
else:
5556
extensions.append('sphinx.ext.mathjax')
5657
mathjax_path = ('https://cdn.jsdelivr.net/npm/mathjax@3/es5/'
@@ -304,7 +305,9 @@ def __call__(self, directory):
304305
'branch': binder_branch,
305306
'dependencies': './binder/requirements.txt',
306307
'use_jupyter_lab': True
307-
}
308+
},
309+
# avoid generating too many cross links
310+
'inspect_global_variables': False,
308311
}
309312

310313

doc/developers/advanced_installation.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ feature, code or documentation improvement).
4949
If you plan on submitting a pull-request, you should clone from your fork
5050
instead.
5151

52-
#. Install a compiler with OpenMP_ support for your platform. See intructions
52+
#. Install a compiler with OpenMP_ support for your platform. See instructions
5353
for :ref:`compiler_windows`, :ref:`compiler_macos`, :ref:`compiler_linux`
5454
and :ref:`compiler_freebsd`.
5555

@@ -339,7 +339,7 @@ architecture (e.g. ARM), you can install the system versions::
339339

340340
On Red Hat and clones (e.g. CentOS), install the dependencies using::
341341

342-
sudo yum -y install gcc gcc-c++ python-devel numpy scipy
342+
sudo yum -y install gcc gcc-c++ python3-devel numpy scipy
343343

344344
Linux compilers from conda-forge
345345
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

doc/developers/contributing.rst

+3-2
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ modifying code and submitting a PR:
251251
to record your changes in Git, then push the changes to your GitHub
252252
account with::
253253

254-
$ git push -u origin my-feature
254+
$ git push -u origin my_feature
255255

256256
10. Follow `these
257257
<https://help.github.com/articles/creating-a-pull-request-from-a-fork>`_
@@ -377,7 +377,7 @@ complies with the following rules before marking a PR as ``[MRG]``. The
377377
methods available in scikit-learn.
378378

379379
10. New features often need to be illustrated with narrative documentation in
380-
the user guide, with small code snipets. If relevant, please also add
380+
the user guide, with small code snippets. If relevant, please also add
381381
references in the literature, with PDF links when possible.
382382

383383
11. The user guide should also include expected time and space complexity
@@ -437,6 +437,7 @@ message, the following actions are taken.
437437
---------------------- -------------------
438438
[scipy-dev] Add a Travis build with our dependencies (numpy, scipy, etc ...) development builds
439439
[ci skip] CI is skipped completely
440+
[lint skip] Azure pipeline skips linting
440441
[doc skip] Docs are not built
441442
[doc quick] Docs built, but excludes example gallery plots
442443
[doc build] Docs built including example gallery plots

doc/developers/maintainer.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ Making a release
6262
2. On the branch for releasing, update the version number in
6363
sklearn/__init__.py, the ``__version__`` variable by removing ``dev*`` only
6464
when ready to release.
65-
On master, increment the verson in the same place (when branching for
65+
On master, increment the version in the same place (when branching for
6666
release).
6767

6868
3. Create the tag and push it::

doc/developers/tips.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -181,10 +181,10 @@ Issue/Comment: Linking to comments
181181

182182
Please use links to comments, which make it a lot easier to see what you are referring to, rather than just linking to the issue. See [this](https://stackoverflow.com/questions/25163598/how-do-i-reference-a-specific-issue-comment-on-github) for more details.
183183

184-
PR-NEW: Better description
184+
PR-NEW: Better description and title
185185
::
186186

187-
Thanks for the pull request! Please make the title of the PR descriptive so that we can easily recall the issue it is resolving. You should state what issue (or PR) it fixes/resolves in the description (see [here](http://scikit-learn.org/dev/developers/contributing.html#contributing-pull-requests)).
187+
Thanks for the pull request! Please make the title of the PR more descriptive. The title will become the commit message when this is merged. You should state what issue (or PR) it fixes/resolves in the description using the syntax described [here](http://scikit-learn.org/dev/developers/contributing.html#contributing-pull-requests).
188188

189189
PR-NEW: Fix #
190190
::

doc/glossary.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -1161,7 +1161,7 @@ Methods
11611161

11621162
TODO: `This gist
11631163
<https://gist.github.com/jnothman/4807b1b0266613c20ba4d1f88d0f8cf5>`_
1164-
higlights the use of the different formats for multilabel.
1164+
highlights the use of the different formats for multilabel.
11651165
multioutput classification
11661166
A list of 2d arrays, corresponding to each multiclass decision
11671167
function.

doc/install.rst

+36-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ If you have not installed NumPy or SciPy yet, you can also install these using
126126
conda or pip. When using pip, please ensure that *binary wheels* are used,
127127
and NumPy and SciPy are not recompiled from source, which can happen when using
128128
particular configurations of operating system and hardware (such as Linux on
129-
a Raspberry Pi).
129+
a Raspberry Pi).
130130

131131
If you must install scikit-learn and its dependencies with pip, you can install
132132
it as ``scikit-learn[alldeps]``.
@@ -255,3 +255,38 @@ WinPython for Windows
255255

256256
The `WinPython <https://winpython.github.io/>`_ project distributes
257257
scikit-learn as an additional plugin.
258+
259+
260+
Troubleshooting
261+
===============
262+
263+
.. _windows_longpath:
264+
265+
Error caused by file path length limit on Windows
266+
-------------------------------------------------
267+
268+
It can happen that pip fails to install packages when reaching the default path
269+
size limit of Windows if Python is installed in a nested location such as the
270+
`AppData` folder structure under the user home directory, for instance::
271+
272+
C:\Users\username>C:\Users\username\AppData\Local\Microsoft\WindowsApps\python.exe -m pip install scikit-learn
273+
Collecting scikit-learn
274+
...
275+
Installing collected packages: scikit-learn
276+
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'C:\\Users\\username\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python37\\site-packages\\sklearn\\datasets\\tests\\data\\openml\\292\\api-v1-json-data-list-data_name-australian-limit-2-data_version-1-status-deactivated.json.gz'
277+
278+
In this case it is possible to lift that limit in the Windows registry by
279+
using the ``regedit`` tool:
280+
281+
#. Type "regedit" in the Windows start menu to launch ``regedit``.
282+
283+
#. Go to the
284+
``Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem``
285+
key.
286+
287+
#. Edit the value of the ``LongPathsEnabled`` property of that key and set
288+
it to 1.
289+
290+
#. Reinstall scikit-learn (ignoring the previous broken installation)::
291+
292+
pip install --exists-action=i scikit-learn

doc/modules/clustering.rst

+1-1
Original file line numberDiff line numberDiff line change
@@ -775,7 +775,7 @@ core sample, and is at least ``eps`` in distance from any core sample, is
775775
considered an outlier by the algorithm.
776776

777777
While the parameter ``min_samples`` primarily controls how tolerant the
778-
algorithm is towards noise (on noisy and large data sets it may be desiable
778+
algorithm is towards noise (on noisy and large data sets it may be desirable
779779
to increase this parameter), the parameter ``eps`` is *crucial to choose
780780
appropriately* for the data set and distance function and usually cannot be
781781
left at the default value. It controls the local neighborhood of the points.

doc/modules/model_evaluation.rst

+10-6
Original file line numberDiff line numberDiff line change
@@ -1348,8 +1348,8 @@ the one-vs-rest algorithm computes the average of the ROC AUC scores for each
13481348
class against all other classes. In both cases, the predicted labels are
13491349
provided in an array with values from 0 to ``n_classes``, and the scores
13501350
correspond to the probability estimates that a sample belongs to a particular
1351-
class. The OvO and OvR algorithms supports weighting uniformly
1352-
(``average='macro'``) and weighting by the prevalence (``average='weighted'``).
1351+
class. The OvO and OvR algorithms support weighting uniformly
1352+
(``average='macro'``) and by prevalence (``average='weighted'``).
13531353

13541354
**One-vs-one Algorithm**: Computes the average AUC of all possible pairwise
13551355
combinations of classes. [HT2001]_ defines a multiclass AUC metric weighted
@@ -1380,10 +1380,10 @@ the keyword argument ``multiclass`` to ``'ovo'`` and ``average`` to
13801380
``'weighted'``. The ``'weighted'`` option returns a prevalence-weighted average
13811381
as described in [FC2009]_.
13821382

1383-
**One-vs-rest Algorithm**: Computes the AUC of each class against the rest.
1384-
The algorithm is functionally the same as the multilabel case. To enable this
1385-
algorithm set the keyword argument ``multiclass`` to ``'ovr'``. Similar to
1386-
OvO, OvR supports two types of averaging: ``'macro'`` [F2006]_ and
1383+
**One-vs-rest Algorithm**: Computes the AUC of each class against the rest
1384+
[PD2000]_. The algorithm is functionally the same as the multilabel case. To
1385+
enable this algorithm set the keyword argument ``multiclass`` to ``'ovr'``.
1386+
Like OvO, OvR supports two types of averaging: ``'macro'`` [F2006]_ and
13871387
``'weighted'`` [F2001]_.
13881388

13891389
In applications where a high false positive rate is not tolerable the parameter
@@ -1422,6 +1422,10 @@ to the given limit.
14221422
<https://www.math.ucdavis.edu/~saito/data/roc/ferri-class-perf-metrics.pdf>`_
14231423
Pattern Recognition Letters. 30. 27-38.
14241424
1425+
.. [PD2000] Provost, F., Domingos, P. (2000). Well-trained PETs: Improving
1426+
probability estimation trees (Section 6.2), CeDER Working Paper #IS-00-04,
1427+
Stern School of Business, New York University.
1428+
14251429
.. [F2006] Fawcett, T., 2006. `An introduction to ROC analysis.
14261430
<http://www.sciencedirect.com/science/article/pii/S016786550500303X>`_
14271431
Pattern Recognition Letters, 27(8), pp. 861-874.

0 commit comments

Comments
 (0)