Tầm quan trọng hoán vị

Explainable AI trong Python

Fouad Trad

Machine Learning Engineer

Xáo trộn nốt để xác định tầm quan trọng nhạc cụ

Hình ảnh một ban nhạc với các nhạc công chơi nhạc cụ khác nhau.

Explainable AI trong Python

Tầm quan trọng hoán vị

  • Phương pháp độc lập mô hình
  • Đánh giá tầm quan trọng đặc trưng
    • Đo tác động của việc xáo trộn đặc trưng lên hiệu suất
  • Rất linh hoạt

Hình minh họa cấu trúc mạng nơ-ron: nhiều tầng ẩn, mỗi tầng có nhiều nơ-ron.

Explainable AI trong Python

Tầm quan trọng hoán vị trong thực tế

Hình minh họa một tập dữ liệu gồm 5 đặc trưng và một mô hình ML đã huấn luyện.

Explainable AI trong Python

Tầm quan trọng hoán vị trong thực tế

Hình minh họa: đưa dữ liệu vào mô hình ML để lấy hiệu suất gốc.

Explainable AI trong Python

Tầm quan trọng hoán vị trong thực tế

Hình minh họa: một đặc trưng được xáo trộn; trong dữ liệu gốc là [1, 2, 3, 4], sau khi xáo là [4, 2, 1, 3]. Dữ liệu đã xáo được đưa vào mô hình ML để lấy hiệu suất sau xáo.

Explainable AI trong Python

Tầm quan trọng hoán vị trong thực tế

Hình minh họa: độ quan trọng của đặc trưng đã xáo tỉ lệ thuận với mức giảm hiệu suất.

Explainable AI trong Python

Tầm quan trọng hoán vị trong thực tế

Hình minh họa: mức giảm lớn cho thấy đặc trưng quan trọng cao; mức giảm nhỏ gợi ý tầm quan trọng thấp.

Explainable AI trong Python

Bộ dữ liệu tuyển sinh

Điểm GRE Điểm TOEFL Xếp hạng ĐH SOP LOR CGPA Xác suất trúng tuyển Chấp nhận
337 118 4 4.5 4.5 9.65 0.92 1
324 107 4 4 4.5 8.87 0.76 1
316 104 3 3 3.5 8 0.72 1
322 110 3 3.5 2.5 8.67 0.8 1
314 103 2 2 3 8.21 0.45 0

 

Dữ liệu nằm trong: X_train, y_train

Explainable AI trong Python

MLPClassifier

from sklearn.neural_network import MLPClassifier
model = MLPClassifier(hidden_layer_sizes=(10,10))

model.fit(X_train, y_train)
Explainable AI trong Python

Tầm quan trọng hoán vị

from sklearn.inspection import permutation_importance

result = permutation_importance(model,
X_train, y_train,
n_repeats=10,
random_state=42,
scoring='accuracy')
print(result.importances_mean)
[0.16213568 0.13831658 0.10575377 0.10522613 0.11741206 0.20072864]
Explainable AI trong Python

Trực quan hóa tầm quan trọng

import matplotlib.pyplot as plt
plt.bar(X_train.columns,
        result.importances_mean)

Biểu đồ cột của tầm quan trọng hoán vị cho thấy CGPA cao nhất.

Explainable AI trong Python

So sánh với cách tiếp cận đặc thù mô hình

import matplotlib.pyplot as plt
plt.bar(X_train.columns, 
        result.importances_mean)

Biểu đồ cột của tầm quan trọng hoán vị cho thấy CGPA cao nhất.

Hồi quy logistic
plt.bar(X_train.columns, np.abs(log_reg.coef_[0]))

Biểu đồ cột của hệ số hồi quy logistic cho thấy CGPA cao nhất.

Explainable AI trong Python

Hãy luyện tập!

Explainable AI trong Python

Preparing Video For Download...