5.1. Визуализации

Scikit-learn определяет простой API для создания визуализаций для машинного обучения. Ключевой особенностью этого API является возможность быстрого построения графиков и визуальных корректировок без пересчета. В следующем примере мы строим кривую ROC для подобранной машины опорных векторов:

from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import plot_roc_curve
from sklearn.datasets import load_wine

X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42)
svc = SVC(random_state=42)
svc.fit(X_train, y_train)

svc_disp = plot_roc_curve(svc, X_test, y_test)

Возвращенный svc_disp объект позволяет нам продолжать использовать уже вычисленную кривую ROC для SVC в будущих графиках. В этом случае, svc_disp это RocCurveDisplay что сохраняет вычисленные значения как атрибуты называются roc_aucfpr и tpr. Затем мы обучаем случайный классификатор леса и снова строим ранее вычисленную кривую roc, используя plot метод Display объекта.

import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier(random_state=42)
rfc.fit(X_train, y_train)

ax = plt.gca()
rfc_disp = plot_roc_curve(rfc, X_test, y_test, ax=ax, alpha=0.8)
svc_disp.plot(ax=ax, alpha=0.8)

Обратите внимание, что мы переходим alpha=0.8 к функциям построения графиков, чтобы настроить альфа-значения кривых.

5.1. Доступные утилиты для построения

5.1.1. Функции

inspection.plot_partial_dependence(…[, …])Графики частичной зависимости (PD) и индивидуального условного ожидания (ICE).
metrics.plot_confusion_matrix(estimator, X, …)Постройте матрицу путаницы.
metrics.plot_det_curve(estimator, X, y, *[, …])Постройте кривую компромисса ошибок обнаружения (DET).
metrics.plot_precision_recall_curve(…[, …])Постройте кривую точного вызова для двоичных классификаторов.
metrics.plot_roc_curve(estimator, X, y, *[, …])Постройте кривую рабочей характеристики приемника (ROC).

5.1.2. Отображать объекты

inspection.PartialDependenceDisplay(…[, …])График частичной зависимости (PDP).
metrics.ConfusionMatrixDisplay(…[, …])Визуализация матрицы неточностей.
metrics.DetCurveDisplay(*, fpr, fnr[, …])Визуализация кривой DET.
metrics.PrecisionRecallDisplay(precision, …)Визуализация Precision Recall.
metrics.RocCurveDisplay(*, fpr, tpr[, …])Визуализация кривой ROC.