SHAP (SHapley Additive exPlanations) dalam Data Science

SHAP (SHapley Additive exPlanations)

Di dunia data science, membangun model dengan akurasi tinggi sering dianggap sebagai pencapaian utama. Namun, seiring berkembangnya implementasi machine learning di industri mulai dari fintech, healthcare, hingga e-commerce muncul satu pertanyaan penting seperti kenapa model ini membuat prediksi seperti itu? Akurasi saja tidak cukup. Model yang tidak bisa dijelaskan ibarat mesin canggih tanpa panel kontrol transparan. Kamu tahu hasilnya, tapi tidak tahu proses berpikirnya.

Di sinilah SHAP (SHapley Additive exPlanations) hadir sebagai solusi. SHAP membantu menjelaskan kontribusi setiap fitur terhadap prediksi model secara matematis dan terukur. Bagi mahasiswa IT, maupun data scientist, memahami SHAP bukan sekadar teori tambahan, melainkan skill penting dalam membangun sistem AI yang transparan, adil, dan dapat dipertanggungjawabkan.

Apa Itu SHAP (SHapley Additive exPlanations)?

SHAP adalah metode interpretasi model machine learning yang menggunakan konsep Shapley Value dari teori permainan untuk menghitung kontribusi setiap fitur terhadap hasil prediksi. Intinya, SHAP mencoba menjawab satu pertanyaan sederhana yaitu Seberapa besar peran masing-masing fitur dalam menghasilkan prediksi ini?

Konsep utamanya disebut additive feature attribution, di mana prediksi model direpresentasikan sebagai:

Prediksi=NilaiDasar+KontribusiFitur1+KontribusiFitur2+...+KontribusiFiturNPrediksi = Nilai Dasar + Kontribusi Fitur 1 + Kontribusi Fitur 2 + … + Kontribusi Fitur N

Pendekatan ini membuat hasil interpretasi lebih konsisten dan adil dibanding metode lain. SHAP memiliki beberapa karakteristik penting:

  • Konsisten secara matematis
  • Dapat digunakan untuk berbagai jenis model
  • Memberikan interpretasi lokal dan global
  • Berdasarkan teori permainan yang kuat

Keunggulan utama SHAP adalah konsistensinya. Jika sebuah fitur memiliki pengaruh lebih besar pada model, maka nilai SHAP-nya juga akan lebih besar. Tidak ada ambiguitas.

Konsep Dasar Shapley Value dalam Game Theory

Shapley Value berasal dari teori permainan kooperatif yang dikembangkan oleh Lloyd Shapley pada tahun 1953. Dalam teori ini, beberapa pemain bekerja sama menghasilkan keuntungan. Pertanyaannya seperti bagaimana cara membagi keuntungan secara adil?

Misalnya ada tiga pemain yang bekerja sama menghasilkan keuntungan 100 juta. Kontribusi masing-masing pemain berbeda. Shapley Value menghitung kontribusi rata-rata setiap pemain terhadap semua kemungkinan kombinasi kerja sama.

Dalam konteks machine learning:

  • Pemain = Fitur
  • Keuntungan = Prediksi Model
  • Koalisi = Kombinasi fitur

Shapley Value menghitung rata-rata kontribusi marginal suatu fitur di semua kemungkinan subset fitur lainnya.

Pendekatan ini dianggap adil karena:

  1. Mempertimbangkan semua kemungkinan kombinasi
  2. Menghindari bias urutan fitur
  3. Memiliki sifat matematis seperti fairness dan consistency

Inilah yang membuat SHAP sangat kuat. Ia bukan sekadar teknik visualisasi, tetapi metode berbasis teori yang solid.

Rumus Matematis Shapley Value

Secara matematis, Shapley Value untuk suatu fitur i dirumuskan sebagai:

φ(i)=Σ[(|S|!(n|S|1)!)/n!]×[f(Si)f(S)]φ(i) = Σ [ (|S|! (n – |S| – 1)! ) / n! ] × [ f(S ∪ {i}) – f(S) ]

Penjelasan simbol:

  • φ(i) = nilai Shapley untuk fitur i
  • S = subset fitur yang tidak mengandung i
  • n = total jumlah fitur
  • f(S) = prediksi model menggunakan subset fitur S
  • f(S ∪ {i}) = prediksi dengan fitur i ditambahkan

Rumus ini menghitung kontribusi marginal fitur i terhadap setiap subset S, lalu dirata-ratakan dengan bobot tertentu.

Masalahnya, jumlah kombinasi meningkat secara eksponensial seiring bertambahnya jumlah fitur. Jika ada 10 fitur, kombinasi subset bisa mencapai 2¹⁰ atau 1024 kombinasi. Jika 20 fitur? Angkanya melonjak drastis.

Contoh Shapley Value dalam Kasus Nyata

Bayangkan sebuah model memprediksi harga rumah berdasarkan tiga fitur:

  • Luas bangunan
  • Lokasi
  • Jumlah kamar

Prediksi model untuk rumah tertentu adalah 1 miliar rupiah. Nilai baseline (rata-rata harga rumah) adalah 700 juta. Artinya ada kenaikan 300 juta yang perlu dijelaskan.

SHAP akan membagi 300 juta tersebut ke masing-masing fitur berdasarkan kontribusinya. Misalnya:

  • Luas bangunan: +150 juta
  • Lokasi: +120 juta
  • Jumlah kamar: +30 juta

Totalnya tetap 300 juta. Ini memenuhi prinsip efficiency.

Yang menarik, kontribusi ini dihitung dengan mempertimbangkan berbagai kombinasi fitur. Misalnya, efek luas bangunan mungkin lebih besar jika lokasi premium. SHAP menghitung rata-rata kontribusi dalam semua skenario tersebut.

Dari sini, kamu bisa langsung melihat fitur mana yang paling berpengaruh terhadap prediksi tertentu. Ini sangat berguna dalam debugging model atau menjelaskan hasil ke stakeholder.

SHAP tidak hanya memberi angka, tapi memberi cerita di balik angka tersebut.

Proses Perhitungan SHAP

Agar lebih jelas, berikut gambaran proses perhitungan SHAP secara konseptual dalam bentuk tahapan sederhana:

  1. Hitung Nilai Rata-rata Model (Baseline)
    Ini adalah nilai awal sebelum fitur individual diperhitungkan. Misalnya rata-rata prediksi probabilitas default kredit adalah 0.2.
  2. Pilih Satu Data Instance
    SHAP biasanya menjelaskan satu prediksi spesifik (local explanation).
  3. Buat Kombinasi Fitur
    Sistem membuat berbagai kombinasi fitur untuk melihat dampaknya terhadap prediksi.
  4. Tambahkan Fitur Target ke Setiap Kombinasi
    Perubahan nilai prediksi dicatat setiap kali fitur ditambahkan.
  5. Hitung Kontribusi Marginal
    Selisih prediksi sebelum dan sesudah fitur ditambahkan dihitung sebagai kontribusi marginal.
  6. Rata-rata dengan Bobot Kombinatorial
    Semua kontribusi dirata-ratakan dengan bobot khusus sesuai rumus Shapley.
  7. Hasil Akhir: Nilai SHAP per Fitur
    Total kontribusi seluruh fitur akan sama dengan selisih antara prediksi aktual dan baseline.

Tahapan ini terlihat kompleks, namun secara konsep bisa dipahami seperti eksperimen berulang untuk melihat seberapa besar dampak suatu fitur dalam berbagai kondisi.

Inilah yang membuat SHAP dianggap sebagai metode interpretasi yang paling adil secara matematis.

Jenis-Jenis SHAP

SHAP memiliki beberapa varian yang disesuaikan dengan tipe model. Setiap jenis memiliki karakteristik dan efisiensi berbeda.

Kernel SHAP

Kernel SHAP adalah versi model-agnostic yang dapat digunakan pada hampir semua model machine learning. Pendekatan ini menggunakan teknik sampling dan regresi berbobot untuk memperkirakan Shapley Value.

Keunggulan:

  • Fleksibel untuk berbagai model
  • Tidak tergantung arsitektur tertentu

Kekurangan:

  • Lebih lambat dibanding varian khusus model
  • Membutuhkan sampling yang cukup untuk hasil stabil

Kernel SHAP cocok digunakan ketika bekerja dengan model custom atau model yang tidak memiliki dukungan SHAP khusus.

Tree SHAP

Tree SHAP dirancang khusus untuk model berbasis pohon seperti:

  • Decision Tree
  • Random Forest
  • XGBoost
  • LightGBM

Keunggulan utamanya adalah efisiensi komputasi. Algoritma ini dapat menghitung nilai SHAP secara eksak dalam waktu polinomial.

Keunggulan:

  • Cepat dan akurat
  • Tidak membutuhkan sampling

Kekurangan:

  • Hanya untuk model berbasis tree

Dalam praktik industri, Tree SHAP adalah yang paling sering digunakan karena banyak model produksi berbasis boosting.

Deep SHAP

Deep SHAP digunakan untuk model deep learning. Metode ini menggabungkan ide Shapley Value dengan teknik DeepLIFT.

Keunggulan:

  • Cocok untuk neural network
  • Lebih efisien dibanding perhitungan Shapley murni

Kekurangan:

  • Bergantung pada struktur model
  • Interpretasi bisa kompleks

Deep SHAP banyak digunakan dalam riset computer vision dan NLP.

Linear SHAP

Linear SHAP digunakan untuk model linear seperti regresi linear dan logistic regression.

Keunggulan:

  • Perhitungan cepat
  • Interpretasi sangat jelas

Kekurangan:

  • Terbatas pada model linear

Pada model linear, nilai SHAP sering kali sejalan dengan koefisien model, tetapi tetap mempertimbangkan distribusi data.

Perbandingan Jenis SHAP

Jenis SHAPCocok untuk ModelKecepatanAkurasiFleksibilitas
Kernel SHAPSemua modelLambatAproksimasiTinggi
Tree SHAPModel tree-basedCepatEksakSedang
Deep SHAPNeural networkSedangAproksimasiTerbatas
Linear SHAPModel linearSangat cepatEksakRendah

Pemilihan jenis SHAP sangat bergantung pada model yang digunakan dalam pipeline machine learning.

Kelebihan SHAP

  • Konsisten Secara Matematis
    SHAP memiliki dasar teori permainan yang kuat. Properti seperti efficiency dan symmetry membuat pembagian kontribusi fitur menjadi adil dan tidak bias terhadap urutan fitur tertentu.
  • Mendukung Interpretasi Lokal dan Global
    SHAP bisa menjelaskan satu prediksi spesifik (local explanation) maupun keseluruhan perilaku model (global explanation). Ini sangat membantu saat debugging maupun presentasi ke stakeholder.
  • Model-Agnostic (pada varian tertentu)
    Kernel SHAP memungkinkan interpretasi hampir semua model, bahkan model custom sekalipun.
  • Transparansi Tinggi untuk Model Kompleks
    Model seperti XGBoost atau neural network yang biasanya sulit dijelaskan bisa dianalisis dengan lebih transparan.
  • Cocok untuk Kebutuhan Regulasi
    Dalam sektor seperti perbankan dan kesehatan, SHAP membantu menjelaskan keputusan otomatis secara kuantitatif.

Kekurangan SHAP

  • Kompleksitas Komputasi Tinggi
    Perhitungan Shapley Value bersifat eksponensial, sehingga membutuhkan optimasi khusus agar tetap efisien.
  • Interpretasi Bisa Membingungkan Jika Fitur Banyak
    Jika jumlah fitur puluhan atau ratusan, membaca kontribusi masing-masing fitur menjadi menantang.
  • Ketergantungan pada Distribusi Data
    Nilai SHAP dapat berubah tergantung distribusi data referensi yang digunakan sebagai baseline.
  • Tidak Selalu Mudah Dipahami Non-Teknis
    Meskipun lebih transparan, tetap diperlukan pemahaman statistik untuk menjelaskan hasilnya dengan benar.

Memahami kelebihan dan kekurangan ini penting agar SHAP tidak digunakan secara membabi buta. Seperti alat lain dalam data science, konteks penggunaan menentukan efektivitasnya.

Best Practice Menggunakan SHAP

Agar penggunaan SHAP optimal, beberapa praktik terbaik perlu diperhatikan:

Tips Interpretasi yang Benar

  • Gunakan baseline yang representatif
  • Jangan hanya melihat satu instance, analisis juga pola global
  • Gabungkan dengan metrik evaluasi model

Kesalahan Umum dalam Membaca SHAP

  • Menganggap kontribusi sebagai hubungan sebab-akibat
  • Mengabaikan korelasi antar fitur
  • Terlalu fokus pada nilai absolut tanpa konteks

Optimasi Performa Saat Menggunakan SHAP

  • Gunakan Tree SHAP untuk model tree-based
  • Kurangi jumlah fitur jika memungkinkan
  • Gunakan sampling untuk dataset besar

Pendekatan yang tepat membuat SHAP lebih efektif dan efisien.

Kesimpulan

Pada pembahasan kita di atas dapat kita simpulkan bahwa SHAP (SHapley Additive exPlanations) merupakan metode interpretasi model machine learning berbasis teori permainan yang menawarkan pembagian kontribusi fitur secara adil dan konsisten. Dengan pendekatan Shapley Value, SHAP mampu menjelaskan prediksi model kompleks seperti XGBoost dan neural network dalam bentuk kontribusi numerik yang mudah dianalisis.

Dalam praktik data science modern, interpretabilitas tidak lagi menjadi opsi tambahan, melainkan kebutuhan utama. SHAP membantu meningkatkan transparansi, mendeteksi bias, memenuhi regulasi, serta mempermudah proses debugging model. Baik dalam prediksi kredit, diagnosis medis, maupun fraud detection, SHAP memberikan nilai tambah yang signifikan.

Artikel ini merupakan bagian dari seri artikel belajar Kecerdasan Buatan dan jika ada ide topik yang mau kami bahas silahkan komen di bawah ya..

Write a Comment

Leave a Comment

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Subscribe to our Newsletter

Subscribe to our email newsletter to get the latest posts delivered right to your email.
Pure inspiration, zero spam ✨