recall_score
- sklearn.metrics.recall_score(y_true, y_pred, *, labels=None, pos_label=1, average='binary', sample_weight=None, zero_division='warn')[исходный код]
-
Вычисляет полноту.
Полнота — это отношение
tp / (tp + fn), гдеtp— количество истинно положительных результатов, аfn— количество ложноотрицательных результатов. Интуитивно полнота показывает способность классификатора находить все положительные образцы.Наилучшее значение — 1, наихудшее — 0.
Поддержка целей, выходящих за рамки бинарных, реализуется путем обработки данных многоклассовой и многометочной классификации как набора бинарных задач — по одной для каждой метки. Для бинарного случая установка
average='binary'вернет полноту дляpos_label. Еслиaverageне равно'binary',pos_labelигнорируется, полнота вычисляется для обоих классов, а затем результаты усредняются или возвращаются оба значения (если заданоaverage=None). Аналогично, для целей многоклассовой и многометочной классификации полнота для всехlabelsлибо возвращается, либо усредняется в зависимости от параметраaverage. Используйтеlabels, чтобы указать набор меток, для которых нужно вычислить полноту.Подробнее см. в руководстве пользователя.
- Параметры:
-
- y_true1d array-like или массив индикаторов меток / разреженная матрица
-
Истинные (корректные) целевые значения. Разреженная матрица поддерживается, только если цели имеют тип многометочной классификации.
- y_pred1d array-like или массив индикаторов меток / разреженная матрица
-
Предсказанные целевые значения, возвращенные классификатором. Разреженная матрица поддерживается, только если цели имеют тип многометочной классификации.
- labelsarray-like, по умолчанию=None
-
Набор меток, которые следует включить при
average != 'binary', и их порядок, еслиaverage is None. Присутствующие в данных метки можно исключить, например, в многоклассовой классификации, чтобы исключить «отрицательный класс». Метки, отсутствующие в данных, можно включить; им будет «назначено» 0 образцов. Для многометочных целей метки представляют собой индексы столбцов. По умолчанию все метки изy_trueиy_predиспользуются в отсортированном порядке.Изменено в версии 0.17: Параметр
labelsусовершенствован для многоклассовых задач. - pos_labelint, float, bool или str, по умолчанию=1
-
Класс, для которого нужно вывести результат, если
average='binary'и данные бинарные; в противном случае этот параметр игнорируется. Для многоклассовых или многометочных целей задайтеlabels=[pos_label]иaverage != 'binary', чтобы вывести метрики только для одной метки. - average{‘micro’, ‘macro’, ‘samples’, ‘weighted’, ‘binary’} или None, по умолчанию=’binary’
-
Для многоклассовых/многометочных целей этот параметр обязателен. Если задано
None, возвращаются метрики для каждого класса. В противном случае он определяет тип усреднения данных:-
'binary': -
Выводить результаты только для класса, заданного параметром
pos_label. Применимо только для бинарных целей (y_{true,pred}). -
'micro': -
Вычислять метрики глобально, подсчитывая общее число истинно положительных, ложноотрицательных и ложноположительных результатов.
-
'macro': -
Вычислять метрики для каждой метки и находить их невзвешенное среднее. При этом дисбаланс меток не учитывается.
-
'weighted': -
Вычислять метрики для каждой метки и находить среднее, взвешенное по поддержке (числу истинных экземпляров каждой метки). В отличие от «macro», этот способ учитывает дисбаланс меток; в результате оценка F может не находиться между точностью и полнотой. Взвешенная полнота равна точности.
-
'samples': -
Вычислять метрики для каждого экземпляра и находить их среднее (имеет смысл только для многометочной классификации, где отличается от
accuracy_score).
-
- sample_weightarray-like формы (n_samples,), по умолчанию=None
-
Веса образцов.
- zero_division{“warn”, 0.0, 1.0, np.nan}, по умолчанию=”warn”
-
Задает возвращаемое значение при делении на ноль.
Примечания:
- Если задано значение “warn”, оно действует как 0, но также выдается предупреждение.
- Если задано
np.nan, такие значения исключаются из среднего.
Добавлено в версии 1.3: Добавлен параметр
np.nan.
- Возвращает:
-
- recallfloat (если average не равно None) или массив float формы (n_unique_labels,)
-
Полнота положительного класса в бинарной классификации или взвешенное среднее полноты каждого класса для многоклассовой задачи.
См. также
precision_recall_fscore_support-
Вычисляет точность, полноту, F-меру и поддержку для каждого класса.
precision_score-
Вычисляет отношение
tp / (tp + fp), гдеtp— количество истинно положительных результатов, аfp— количество ложноположительных результатов. balanced_accuracy_score-
Вычисляет сбалансированную точность для работы с несбалансированными наборами данных.
multilabel_confusion_matrix-
Вычисляет матрицу ошибок для каждого класса или образца.
PrecisionRecallDisplay.from_estimator-
Строит кривую точности-полноты на основе оценщика и данных.
PrecisionRecallDisplay.from_predictions-
Строит кривую точности-полноты на основе предсказаний бинарных классов.
Примечания
Когда
true positive + false negative == 0, функция recall возвращает 0 и выдаетUndefinedMetricWarning. Это поведение можно изменить с помощьюzero_division.Примеры
>>> import numpy as np >>> from sklearn.metrics import recall_score >>> y_true = [0, 1, 2, 0, 1, 2] >>> y_pred = [0, 2, 1, 0, 0, 1] >>> recall_score(y_true, y_pred, average='macro') 0.33 >>> recall_score(y_true, y_pred, average='micro') 0.33 >>> recall_score(y_true, y_pred, average='weighted') 0.33 >>> recall_score(y_true, y_pred, average=None) array([1., 0., 0.]) >>> y_true = [0, 0, 0, 0, 0, 0] >>> recall_score(y_true, y_pred, average=None) array([0.5, 0. , 0. ]) >>> recall_score(y_true, y_pred, average=None, zero_division=1) array([0.5, 1. , 1. ]) >>> recall_score(y_true, y_pred, average=None, zero_division=np.nan) array([0.5, nan, nan])
>>> # multilabel classification >>> y_true = [[0, 0, 0], [1, 1, 1], [0, 1, 1]] >>> y_pred = [[0, 0, 0], [1, 1, 1], [1, 1, 0]] >>> recall_score(y_true, y_pred, average=None) array([1. , 1. , 0.5])
Примеры из галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.metrics.recall_score.html