Trực quan hóa kết quả phân loại Python

Scikit-learning định nghĩa một API đơn giản để tạo trực quan hóa cho máy học. Tính năng chính của API này là cho phép vẽ sơ đồ và điều chỉnh trực quan nhanh chóng mà không cần tính toán lại. Chúng tôi cung cấp các lớp Display hiển thị hai phương thức để tạo các ô. from_estimatorfrom_predictions. Phương pháp from_estimator sẽ lấy một công cụ ước tính phù hợp và một số dữ liệu [

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

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
1 và
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
2] và tạo một đối tượng Display. Đôi khi, chúng tôi chỉ muốn tính toán các dự đoán một lần và người ta nên sử dụng from_predictions để thay thế. Trong ví dụ sau, chúng tôi vẽ đồ thị đường cong ROC cho máy vectơ hỗ trợ được trang bị

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

X, y = load_wine[return_X_y=True]
y = y == 2  # make binary
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 = RocCurveDisplay.from_estimator[svc, X_test, y_test]

Đối tượng

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

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
0 được trả về cho phép chúng tôi tiếp tục sử dụng đường cong ROC đã được tính toán cho SVC trong các ô trong tương lai. Trong trường hợp này,
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
0 là một lưu trữ các giá trị được tính toán dưới dạng các thuộc tính có tên là
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
3,
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
4 và
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
5. Xin lưu ý rằng chúng tôi có thể nhận được các dự đoán từ máy vectơ hỗ trợ và sau đó sử dụng from_predictions thay vì from_estimator. Tiếp theo, chúng tôi đào tạo một trình phân loại rừng ngẫu nhiên và vẽ lại đường cong roc đã tính toán trước đó bằng cách sử dụng phương thức
import matplotlib.pyplot as plt
from sklearn.ensemble import RandomForestClassifier

rfc = RandomForestClassifier[n_estimators=10, random_state=42]
rfc.fit[X_train, y_train]

ax = plt.gca[]
rfc_disp = RocCurveDisplay.from_estimator[rfc, X_test, y_test, ax=ax, alpha=0.8]
svc_disp.plot[ax=ax, alpha=0.8]
8 của đối tượng Display

Chủ Đề