confusion_matrix#
- sklearn.metrics.confusion_matrix(y_true, y_pred, *, метки=None, sample_weight=None, нормализовать=None)[источник]#
Вычисление матрицы ошибок для оценки точности классификации.
По определению матрица ошибок \(C\) такой, что \(C_{i, j}\) равно количеству наблюдений, известных как принадлежащих группе \(i\) и предсказано быть в группе \(j\).
Таким образом, в бинарной классификации количество истинно отрицательных равно \(C_{0,0}\), ложноотрицательные значения это \(C_{1,0}\), истинные положительные результаты — это \(C_{1,1}\) и ложные срабатывания - это \(C_{0,1}\).
Подробнее в Руководство пользователя.
- Параметры:
- y_truearray-like формы (n_samples,)
Истинные (правильные) целевые значения.
- y_predarray-like формы (n_samples,)
Оценённые цели, возвращаемые классификатором.
- меткиarray-like формы (n_classes,), по умолчанию=None
Список меток для индексации матрицы. Может использоваться для переупорядочивания или выбора подмножества меток. Если
Noneзадано, те, которые появляются хотя бы один раз вy_trueилиy_predиспользуются в отсортированном порядке.- sample_weightarray-like формы (n_samples,), по умолчанию=None
Веса выборок.
Добавлено в версии 0.18.
- нормализовать{‘true’, ‘pred’, ‘all’}, по умолчанию=None
Нормализует матрицу ошибок по истинным (строки), предсказанным (столбцы) условиям или по всей популяции. Если None, матрица ошибок не будет нормализована.
- Возвращает:
- Cndarray формы (n_classes, n_classes)
Матрица ошибок, в которой элемент i-й строки и j-го столбца указывает количество выборок с истинной меткой i-го класса и предсказанной меткой j-го класса.
Смотрите также
ConfusionMatrixDisplay.from_estimatorПостроить матрицу ошибок для заданного оценщика, данных и метки.
ConfusionMatrixDisplay.from_predictionsПостройте матрицу ошибок по истинным и предсказанным меткам.
ConfusionMatrixDisplayВизуализация матрицы ошибок.
confusion_matrix_at_thresholdsДля бинарной классификации вычислять количество истинно отрицательных, ложноположительных, ложноотрицательных и истинно положительных результатов на порог.
Ссылки
[1]Статья в Википедии о матрице ошибок (Википедия и другие источники могут использовать другое соглашение для осей).
Примеры
>>> from sklearn.metrics import confusion_matrix >>> y_true = [2, 0, 2, 2, 0, 1] >>> y_pred = [0, 0, 2, 2, 0, 2] >>> confusion_matrix(y_true, y_pred) array([[2, 0, 0], [0, 0, 1], [1, 0, 2]])
>>> y_true = ["cat", "ant", "cat", "cat", "ant", "bird"] >>> y_pred = ["ant", "ant", "cat", "cat", "ant", "cat"] >>> confusion_matrix(y_true, y_pred, labels=["ant", "bird", "cat"]) array([[2, 0, 0], [0, 0, 1], [1, 0, 2]])
В бинарном случае мы можем извлечь истинно положительные и т.д. следующим образом:
>>> tn, fp, fn, tp = confusion_matrix([0, 1, 0, 1], [1, 1, 1, 0]).ravel().tolist() >>> (tn, fp, fn, tp) (0, 2, 1, 1)
Примеры галереи#
Оценить производительность классификатора с помощью матрицы ошибок
Последующая настройка порога принятия решений для обучения с учетом стоимости