Metrik keterjelasan

Explainable AI in Python

Fouad Trad

Machine Learning Engineer

Konsistensi

  • Menilai kestabilan penjelasan saat model dilatih pada subset berbeda
  • Konsistensi rendah → penjelasan tidak kuat

Gambar menampilkan dataset dibagi menjadi dua subset: subset 1 dan subset 2.

Explainable AI in Python

Konsistensi

  • Menilai kestabilan penjelasan saat model dilatih pada subset berbeda
  • Konsistensi rendah → penjelasan tidak kuat

Model dilatih pada tiap subset.

Explainable AI in Python

Konsistensi

  • Menilai kestabilan penjelasan saat model dilatih pada subset berbeda
  • Konsistensi rendah → penjelasan tidak kuat

Setiap kali model dilatih pada subset, kita turunkan importance fitur dan hitung kemiripan kosinusnya.

Explainable AI in Python

Kemiripan kosinus untuk mengukur konsistensi

 

 

 

Gambar menampilkan nilai kunci Konsistensi dan artinya: 1 = penjelasan sangat konsisten.

Explainable AI in Python

Kemiripan kosinus untuk mengukur konsistensi

 

 

 

Gambar menampilkan nilai kunci Konsistensi dan artinya: 1 = penjelasan sangat konsisten, 0 = tidak konsisten,

Explainable AI in Python

Kemiripan kosinus untuk mengukur konsistensi

 

 

 

Gambar menampilkan nilai kunci Konsistensi dan artinya: 1 = penjelasan sangat konsisten, 0 = tidak konsisten, -1 = penjelasan berlawanan.

Explainable AI in Python

Dataset penerimaan

Skor GRE Skor TOEFL Peringkat Universitas SOP LOR IPK Peluang Diterima
337 118 4 4.5 4.5 9.65 0.92
324 107 4 4 4.5 8.87 0.76
316 104 3 3 3.5 8 0.72
322 110 3 3.5 2.5 8.67 0.8
314 103 2 2 3 8.21 0.45

 

  • X1, y1: bagian pertama dataset
  • X2, y2: bagian kedua dataset
  • model1, model2: random forest regressor
Explainable AI in Python

Menghitung konsistensi

from sklearn.metrics.pairwise import cosine_similarity

explainer1 = shap.TreeExplainer(model1) explainer2 = shap.TreeExplainer(model2)
shap_values1 = explainer1.shap_values(X1) shap_values2 = explainer2.shap_values(X2)
feature_importance1 = np.mean(np.abs(shap_values1), axis=0) feature_importance2 = np.mean(np.abs(shap_values2), axis=0)
consistency = cosine_similarity([feature_importance1], [feature_importance2]) print("Consistency between SHAP values:", consistency)
Consistency between SHAP values: [[0.99706516]]
Explainable AI in Python

Faithfulness

  • Mengevaluasi apakah fitur penting memengaruhi prediksi model
  • Faithfulness rendah → menyesatkan kepercayaan pada penalaran model
  • Berguna pada aplikasi sensitif

Gambar menampilkan model yang menghasilkan prediksi awal untuk sebuah sampel masukan.

Explainable AI in Python

Faithfulness

  • Mengevaluasi apakah fitur penting memengaruhi prediksi model
  • Faithfulness rendah → menyesatkan kepercayaan pada penalaran model
  • Berguna pada aplikasi sensitif

SHAP atau LIME digunakan untuk menjelaskan prediksi awal ini secara lokal.

Explainable AI in Python

Faithfulness

  • Mengevaluasi apakah fitur penting memengaruhi prediksi model
  • Faithfulness rendah → menyesatkan kepercayaan pada penalaran model
  • Berguna pada aplikasi sensitif

Sampel yang dimodifikasi dimasukkan ke model untuk menghasilkan prediksi baru.

Explainable AI in Python

Faithfulness

  • Mengevaluasi apakah fitur penting memengaruhi prediksi model
  • Faithfulness rendah → menyesatkan kepercayaan pada penalaran model
  • Berguna pada aplikasi sensitif

Gambar menampilkan rumus menghitung faithfulness sebagai nilai absolut selisih antara prediksi baru dan prediksi awal.

Explainable AI in Python

Menghitung faithfulness

X_instance = X_test.iloc[[0]]

original_prediction = model.predict_proba(X_instance)[0, 1] print(f"Original prediction: {original_prediction}")
Original prediction: 0.43

Gambar menampilkan penjelasan pentingnya fitur LIME untuk sampel terpilih.

Explainable AI in Python

Menghitung faithfulness

X_instance['GRE Score'] = 310  


new_prediction = model.predict_proba(X_instance)[0, 1] print(f"Prediction after perturbing {important_feature}: {new_prediction}")
faithfulness_score = np.abs(original_prediction - new_prediction) print(f"Local Faithfulness Score: {faithfulness_score}")
Prediction after perturbing GRE Score: 0.77

Local Faithfulness Score: 0.34
Explainable AI in Python

Ayo berlatih!

Explainable AI in Python

Preparing Video For Download...