classification_report
- sklearn.metrics.classification_report(y_true, y_pred, *, labels=None, target_names=None, sample_weight=None, digits=2, output_dict=False, zero_division='warn')[source]
-
Построение текстового отчета, отображающего основные метрики классификации.
Подробнее см. в Руководстве пользователя.
- Параметры:
-
- y_trueодномерный массив-подобный объект или массив/разреженная матрица меток
-
Истинные (правильные) значения целевых переменных.
- y_predодномерный массив-подобный объект или массив/разреженная матрица меток
-
Оцененные целевые переменные, возвращаемые классификатором.
- labelsмассив-подобный объект формы (n_labels,), по умолчанию None
-
Необязательный список индексов меток для включения в отчет.
- target_namesмассив-подобный объект формы (n_labels,), по умолчанию None
-
Необязательные отображаемые имена, соответствующие меткам (в том же порядке).
- sample_weightмассив-подобный объект формы (n_samples,), по умолчанию None
-
Веса образцов.
- digitsцелое число, по умолчанию 2
-
Количество знаков для форматирования значений с плавающей точкой в выводе. При
output_dictэтоTrue, это будет проигнорировано, и возвращаемые значения не будут округляться. - output_dictбулево значение, по умолчанию False
-
Если True, возвращает вывод в виде словаря.
Добавлен в версии 0.20.
- zero_division{“warn”, 0.0, 1.0, np.nan}, по умолчанию “warn”
-
Устанавливает значение для возврата при делении на ноль. Если установлено в “warn”, это действует как 0, но также выводятся предупреждения.
Добавлен в версии 1.3:
np.nanдобавлено опция.
- Возвращает:
-
- reportстрока или словарь
-
Текстовый сводный отчет о точности, полноте, F1-мере для каждого класса. Возвращает словарь, если output_dict равно True. Структура словаря следующая:
{'label 1': {'precision':0.5, 'recall':1.0, 'f1-score':0.67, 'support':1}, 'label 2': { ... }, ... }Отчетные средние значения включают среднее значение макро (усреднение несвязного среднего по метке), взвешенное среднее (усреднение взвешенного по поддержке среднего по метке) и выборочное среднее (только для многоклассовой классификации). Микросреднее значение (усреднение всех истинно положительных, ложно отрицательных и ложно положительных) отображается только для многоклассовой или многоклассовой с подмножеством классов, поскольку в противном случае оно соответствует точности и будет одинаковым для всех метрик. См. также
precision_recall_fscore_supportдля получения дополнительной информации о средних значениях.Обратите внимание, что в бинарной классификации полнота положительного класса также известна как «чувствительность»; полнота отрицательного класса — «специфичность».
См. также
precision_recall_fscore_support-
Вычисление точности, полноты, F-меры и поддержки для каждого класса.
confusion_matrix-
Вычисление матрицы неточностей для оценки точности классификации.
multilabel_confusion_matrix-
Вычисление матрицы неточностей для каждого класса или образца.
Примеры
>>> from sklearn.metrics import classification_report >>> y_true = [0, 1, 2, 2, 2] >>> y_pred = [0, 0, 2, 2, 1] >>> target_names = ['class 0', 'class 1', 'class 2'] >>> print(classification_report(y_true, y_pred, target_names=target_names)) precision recall f1-score support class 0 0.50 1.00 0.67 1 class 1 0.00 0.00 0.00 1 class 2 1.00 0.67 0.80 3 accuracy 0.60 5 macro avg 0.50 0.56 0.49 5 weighted avg 0.70 0.60 0.61 5 >>> y_pred = [1, 1, 0] >>> y_true = [1, 1, 1] >>> print(classification_report(y_true, y_pred, labels=[1, 2, 3])) precision recall f1-score support 1 1.00 0.67 0.80 3 2 0.00 0.00 0.00 0 3 0.00 0.00 0.00 0 micro avg 1.00 0.67 0.80 3 macro avg 0.33 0.22 0.27 3 weighted avg 1.00 0.67 0.80 3
Примеры из галереи
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.metrics.classification_report.html