LIME: Penjelasan Lokal yang Dapat Diinterpretasikan
lime.tabular.LimeTabularExplainer, mengubah input, pendekatan linear lokal.
LIME: Penjelasan Lokal yang Dapat Diinterpretasikan adalah pelajaran Learn AI with Python gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Learn AI with Python, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa Itu LIME
LIME (Penjelasan Lokal yang Dapat Diinterpretasikan dan Tidak Bergantung pada Model) menjelaskan satu prediksi dengan menyesuaikan model sederhana yang mudah ditafsirkan (seperti regresi linear) pada perilaku model kompleks di lingkungan kecil sekitar satu instans tersebut.
Lokal, Bukan Global
Model kotak hitam mungkin sangat nonlinier secara keseluruhan, tetapi di dekat satu titik model tersebut kira-kira bersifat linier. LIME memanfaatkan hal ini: LIME tidak menjelaskan seluruh model, melainkan hanya perilakunya secara lokal di sekitar instans yang Anda perhatikan.
Cara Kerja LIME
LIME mengubah instans sedikit untuk membuat banyak sampel di dekatnya, meminta model kotak hitam memberi label pada sampel tersebut, memberikan bobot berdasarkan kedekatannya dengan sampel asli, lalu menyesuaikan model pengganti yang dapat ditafsirkan. Koefisien model pengganti tersebut menjadi penjelasannya.
Tidak Bergantung pada Model
Karena LIME hanya memanggil fungsi prediksi model, LIME bekerja dengan pengklasifikasi atau regresor apa pun: jaringan saraf, peningkatan gradien, bahkan API eksternal. LIME memperlakukan model sebagai kotak hitam.
LimeTabularExplainer
Untuk data tabular, Anda membuat LimeTabularExplainer dari data pelatihan dan nama fitur. Alat ini menggunakan distribusi pelatihan untuk menghasilkan perubahan kecil yang realistis.
from lime.lime_tabular import LimeTabularExplainer
explainer = LimeTabularExplainer(
training_data=X_train.values,
feature_names=X_train.columns.tolist(),
class_names=["denied", "approved"],
mode="classification",
)explain_instance
Untuk menjelaskan satu baris, panggil explain_instance dengan baris tersebut dan fungsi predict_proba model. LIME membuat perubahan kecil di sekitar baris tersebut dan menyesuaikan model pengganti lokal.
exp = explainer.explain_instance(
data_row=X_test.values[0],
predict_fn=model.predict_proba,
num_features=5,
)predict_proba, bukan predict
LIME untuk klasifikasi memerlukan probabilitas, bukan label tegas, karena model pengganti melakukan regresi pada permukaan probabilitas. Selalu teruskan model.predict_proba (atau fungsi apa pun yang mengembalikan probabilitas kelas).
Parameter num_features
num_features membatasi jumlah fitur yang ditampilkan dalam penjelasan. Jumlah yang lebih kecil menghasilkan penjelasan yang lebih sederhana dan mudah dipahami, yang hanya menyoroti faktor lokal terkuat.
Membaca Bobot Fitur
exp.as_list() mengembalikan penjelasan sebagai pasangan (kondisi fitur, bobot). Bobot positif mendorong prediksi menuju kelas yang diprediksi; bobot negatif menjauhkannya.
for feature, weight in exp.as_list():
print(feature, round(weight, 3))
# income > 50000 0.21
# debt_ratio > 0.4 -0.18Memvisualisasikan Penjelasan
LIME dapat menampilkan penjelasan sebagai bagan interaktif atau tampilan buku catatan, yang memperlihatkan batang kontribusi dan probabilitas prediksi secara berdampingan.
exp.show_in_notebook(show_table=True)
# or
fig = exp.as_pyplot_figure()LIME vs SHAP
Keduanya menjelaskan prediksi individual, tetapi memiliki perbedaan:
- SHAP memiliki jaminan teoretis yang kuat (aditivitas, konsistensi) dan tampilan global
- LIME lebih cepat dipahami, tidak bergantung pada model, dan intuitif, tetapi model pengganti lokalnya merupakan pendekatan yang dapat berubah akibat keacakan perubahan kecil
Uji Singkat
Uji pengetahuan Anda tentang LIME.
Ringkasan
Anda telah mempelajari penjelasan lokal dengan LIME:
- LimeTabularExplainer dibuat dari data pelatihan dan nama fitur
explain_instancemenggunakanmodel.predict_probauntuk menyesuaikan model pengganti lokal- num_features mengendalikan ukuran penjelasan
as_list()mengembalikan bobot fitur bertanda- LIME tidak bergantung pada model dan bersifat lokal, sehingga melengkapi SHAP
Pertanyaan yang Sering Diajukan
Apakah pelajaran “LIME: Penjelasan Lokal yang Dapat Diinterpretasikan” gratis?
Ya — teks lengkap “LIME: Penjelasan Lokal yang Dapat Diinterpretasikan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Learn AI with Python, upgrade ke CoddyKit PRO. Kursus Learn AI with Python mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “LIME: Penjelasan Lokal yang Dapat Diinterpretasikan”?
lime.tabular.LimeTabularExplainer, mengubah input, pendekatan linear lokal. Kamu berlatih Learn AI with Python dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Learn AI with Python?
Tidak diperlukan pengalaman sebelumnya. Learn AI with Python di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “LIME: Penjelasan Lokal yang Dapat Diinterpretasikan” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Learn AI with Python ini?
Ya. Setiap pelajaran Learn AI with Python menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mendeteksi Bias dalam Model Pembelajaran Mesin
- Nilai SHAP untuk Penjelasan Model
- LIME: Penjelasan Lokal yang Dapat Diinterpretasikan
- Kerangka Etika dan Tata Kelola Kecerdasan Buatan