Açıklanabilir yapay zekaya giriş

Python ile Açıklanabilir AI

Fouad Trad

Machine Learning Engineer

Hakkımda

fouadtrad.jpg

Fouad Trad
  • Makine öğrenimi mühendisi
  • Doktora adayı
  • Siber güvenlik için yapay zekâ alanında uzman
LinkedIn

mylinkedin.jpg

Python ile Açıklanabilir AI

Yapay zekâ

  • Yapay zekâ, makinelerin insan benzeri görevleri yapmasını sağlar

Bir insanın bir makineyle satranç oynadığını gösteren görsel.

Python ile Açıklanabilir AI

Açıklanabilirliğin gerekliliği

 

Girdi alan ve çıktı üreten kapalı bir kara kutu sistemini gösteren görsel.

 

  • Kara kutu YZ: kararların nasıl alındığı anlaşılmaz
Python ile Açıklanabilir AI

Açıklanabilirliğin gerekliliği

 

Girdi alan ve çıktı üreten açık bir sistem (beyaz kutu) görseli.

 

  • Kara kutu YZ: kararların nasıl alındığı anlaşılmaz
  • Açıklanabilir YZ: modelin iç işleyişi anlaşılır
Python ile Açıklanabilir AI

Açıklanabilirlik vs. doğruluk

  • Basit modeller:

    • Daha açıklanabilir
    • Daha az kesin
  • Karmaşık modeller:

    • Daha kesin
    • Daha az açıklanabilir

Temel modellerden karmaşık modellere (kural tabanlı, doğrusal modeller, karar ağaçları, k-NN, SVM ve sinir ağları) uzanan bir grafikte, temel modellerin genelde daha açıklanabilir ama daha az kesin, karmaşık modellerin ise daha kesin ama yorumlanması zor olduğunu gösteren görsel

Python ile Açıklanabilir AI

Karar ağaçları ve sinir ağları

Karar ağaçları

Koşullara göre karar yolunu gösterir

Birden çok koşula göre tahminlerin nasıl yapıldığını gösteren karar ağacı temsili

Python ile Açıklanabilir AI

Karar ağaçları ve sinir ağları

Karar ağaçları

Koşullara göre karar yolunu gösterir

Kabul örneği için karar ağacı: Öğrencinin lisans derecesi yoksa reddedilir; varsa notu 8.5'tan yüksekse kabul edilir

Python ile Açıklanabilir AI

Karar ağaçları ve sinir ağları

Karar ağaçları

Koşullara göre karar yolunu gösterir

Kabul örneği için karar ağacı: Öğrencinin lisans derecesi yoksa reddedilir; varsa notu 8.5'tan yüksekse kabul edilir

Sinir ağları

Doğası gereği şeffaf değildir

Bir sinir ağının yapısını gösteren görsel: birden çok nörona sahip gizli katmanlar.

Python ile Açıklanabilir AI

Karar ağaçları ve sinir ağları

Karar ağaçları

Koşullara göre karar yolunu gösterir

Kabul örneği için karar ağacı: Öğrencinin lisans derecesi yoksa reddedilir; varsa notu 8.5'tan yüksekse kabul edilir

Sinir ağları

Doğası gereği şeffaf değildir

Aynı sinir ağının öğrenci özelliklerini alıp kabul/red tahmini yaptığını gösteren görsel

Python ile Açıklanabilir AI

Öğrenci kabul tahmini

GRE Puanı TOEFL Puanı Üniversite Puanı SOP LOR CGPA Kabul
337 118 4 4.5 4.5 9.65 1
316 104 3 3 3.5 8.00 1
314 103 2 2 3 8.21 0

 

  • Test puanları: GRE ve TOEFL
  • Üniversite puanı
  • SOP: amaç bildirisi
  • LOR: referans mektubu
  • CGPA: kümülatif not ortalaması
Python ile Açıklanabilir AI

Öğrenci kabul tahmini

Karar Ağacı
from sklearn.tree import DecisionTreeClassifier

model = DecisionTreeClassifier(max_depth=5)

model.fit(X_train, y_train)
y_pred = model.predict(y_test)
acc = accuracy_score(y_test, y_pred) print(f"Accuracy of Decision Tree: {acc}")
Accuracy of Decision Tree: 0.82
Sinir Ağı
from sklearn.neural_network import MLPClassifier

model = MLPClassifier(hidden_layer_sizes=(1000,1000))

model.fit(X_train, y_train)
y_pred = model.predict(y_test)
acc = accuracy_score(y_test, y_pred) print(f"Accuracy of Neural Network: {acc}")
Accuracy of Neural Network: 0.9
Python ile Açıklanabilir AI

Karar ağacı kuralları

from sklearn.tree export_text

rules = export_text(model, feature_names=list(X_train.columns))

print(rules)
|--- CGPA <= 8.34
|   |--- GRE Score <= 320.50
|   |   |--- class: 0

| |--- GRE Score > 320.50 | | |--- class: 1
|--- CGPA > 8.34 | |--- GRE Score <= 319.50 | | |--- class: 1 ...
Python ile Açıklanabilir AI

Modele özgü vs. modelden bağımsız teknikler

Modele özgü

Belirli bir modele uygulanır

Belirli bir kilit için tasarlanmış anahtarı gösteren görsel

Python ile Açıklanabilir AI

Modele özgü vs. modelden bağımsız teknikler

Modele özgü

Belirli bir modele uygulanır

Belirli bir kilit için tasarlanmış anahtarı gösteren görsel

Modelden bağımsız

Her modele uygulanır

Birden çok kilidi açabilen maymuncuğu gösteren görsel

Python ile Açıklanabilir AI

Sırada ne var?

  • Modele özgü ve modelden bağımsız teknikler
  • Yerel ve küresel yöntemler
  • İleri konular:
    • Açıklanabilirlik metrikleri
    • Denetimsiz açıklanabilirlik
    • Üretken yapay zekâ açıklanabilirliği

Şu kütüphanelerin logoları: SHAP, LIME ve Scikit-learn

Python ile Açıklanabilir AI

Ayo berlatih!

Python ile Açıklanabilir AI

Preparing Video For Download...