0Pricing
Learn AI with Python · Ders

Model Açıklanabilirliği için SHAP Değerleri

shap.Explainer, TreeExplainer, kuvvet grafikleri, arı sürüsü grafikleri, özellik önem sıralaması.

Model Açıklanabilirliği için SHAP Değerleri, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 4 dersten oluşur.

Açıklanabilirlik Neden Önemlidir

Karmaşık modeller doğru sonuçlar verir, ancak şeffaf değildir. Açıklanabilirlik, "model bu tahmini neden yaptı?" sorusunu yanıtlar; bu da güven, hata ayıklama ve mevzuata uyum için çok önemlidir. SHAP, en yaygın kullanılan açıklama yöntemlerinden biridir.

SHAP Neyi Ölçer

SHAP (SHapley Toplamsal exPlanations), her özelliğe tek bir tahmine yaptığı katkıyı atar. Değerler, iş birliğine dayalı oyun kuramındaki Shapley değerlerine dayanır: her özellik bir "oyuncudur" ve SHAP değeri, temel değere göre tahmine yaptığı adil katkı payıdır.

Toplanabilirlik

SHAP değerleri toplanabilirdir: temel değer (model çıktısının ortalaması) ile tüm özelliklerin SHAP değerlerinin toplamı, gerçek tahmine eşittir. Bu sayede her açıklama, çıktının eksiksiz ve denetlenebilir bir dökümünü sunar.

# prediction = base_value + sum(shap_values_for_each_feature)

TreeExplainer

Ağaç tabanlı modellerde (XGBoost, LightGBM, rastgele ormanlar) shap.TreeExplainer, ağaç yapısından yararlanarak tam SHAP değerlerini hızlı biçimde hesaplar.

import shap
import xgboost

model = xgboost.XGBClassifier().fit(X_train, y_train)
explainer = shap.TreeExplainer(model)

shap_values Hesaplama

explainer.shap_values(X_test), her satırdaki her özellik için bir SHAP değeri içeren bir matris döndürür. Bunlar, görselleştireceğiniz ham katkılardır.

shap_values = explainer.shap_values(X_test)
print(shap_values.shape)  # (n_samples, n_features)

summary_plot Arı Sürüsü Grafiği

shap.summary_plot bir arı sürüsü grafiği oluşturur: her nokta, bir özellik için tek bir örneği temsil eder. Konum SHAP değerini (etkinin yönünü ve büyüklüğünü), renk ise özellik değerini gösterir. Özellikler genel önemlerine göre sıralanır.

shap.summary_plot(shap_values, X_test)

Arı Sürüsü Grafiğini Okuma

Arı sürüsü grafiğini okumak için:

  • En üstteki özellikler, genel olarak en önemli olanlardır
  • Sağdaki noktalar tahmini yükseltir; soldaki noktalar düşürür
  • Renk yönü gösterir; örneğin sağdaki yüksek özellik değerleri (kırmızı), "yüksek değer tahmini artırır" anlamına gelir

Tek Bir Tahmini Açıklama

SHAP, bireysel düzeyde özellikle güçlüdür. Tek bir satırı açıklamak için satırın SHAP değerlerine ve modelin temel değerine ihtiyacınız vardır.

idx = 0
base = explainer.expected_value
row_shap = shap_values[idx]

force_plot

shap.force_plot, tek bir tahmini temel değerden başlayan kuvvetler olarak gösterir: kırmızı özellikler çıktıyı yükseltirken mavi özellikler düşürür. Net sonuç, nihai tahmine ulaşır.

shap.force_plot(
    explainer.expected_value,
    shap_values[0],
    X_test.iloc[0],
)

waterfall_plot

shap.waterfall_plot, tek bir tahmini göstermenin en kolay okunan yoludur. Temel değerden başlar ve her özellik katkısını büyüklüğüne göre sıralayarak nihai çıktıya ulaşana kadar adım adım üst üste ekler.

shap.waterfall_plot(
    shap.Explanation(
        values=shap_values[0],
        base_values=explainer.expected_value,
        data=X_test.iloc[0],
    )
)

Genel ve Yerel

SHAP iki ihtiyaca hizmet eder:

  • Genel: summary_plot, modeli genel olarak hangi özelliklerin yönlendirdiğini gösterir
  • Yerel: force_plot ve waterfall_plot, belirli bir tahmini açıklar

Her ikisi de aynı SHAP değerlerinden yararlanır; böylece farklı ölçeklerde tutarlı bir açıklama sunar.

Hızlı Kontrol

SHAP konusundaki bilginizi sınayın.

Özet

SHAP ile model açıklanabilirliğini öğrendiniz:

  • shap.TreeExplainer(model), ağaç tabanlı modeller için tam değerleri hesaplar
  • explainer.shap_values(X_test), özellik başına katkıları döndürür
  • summary_plot arı sürüsü grafiği, genel önemi gösterir
  • force_plot ve waterfall_plot, tek bir tahmini açıklar
  • SHAP değerleri toplanabilirdir: temel değer + katkılar = tahmin

Sıkça Sorulan Sorular

“Model Açıklanabilirliği için SHAP Değerleri” dersi ücretsiz mi?

Evet — “Model Açıklanabilirliği için SHAP Değerleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 4 dersten oluşur.

“Model Açıklanabilirliği için SHAP Değerleri” dersinde ne öğreneceğim?

shap.Explainer, TreeExplainer, kuvvet grafikleri, arı sürüsü grafikleri, özellik önem sıralaması. Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Model Açıklanabilirliği için SHAP Değerleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Makine Öğrenmesi Modellerinde Önyargı Tespiti
  2. Model Açıklanabilirliği için SHAP Değerleri
  3. LIME: Yerel Yorumlanabilir Açıklamalar
  4. Yapay Zeka Etiği ve Yönetişim Çerçeveleri
← Learn AI with Python Sayfasına Dön