Pada level model, untuk menilai kontribusi / kepentingan prediktor, kita dapat menggunakan:
- Model Teknik Khusus - mis. Kemurnian (Indeks Gini) untuk model berbasis pohon, koefisien model jika dapat diterapkan, dll.
- Model Teknik Independen - misalnya Pentingnya Fitur Permutasi, Ketergantungan Sebagian, dll.
Apa yang tidak disampaikan ini adalah untuk prediksi tertentu (katakanlah klasifikasi biner yang memberikan kemungkinan 92% keanggotaan kelas 1) apa yang paling "berpengaruh" dalam membuat prediksi itu.
Setelah memikirkan masalah ini sedikit, menurut saya ada beberapa pendekatan yang bisa diambil:
- Model Teknik Khusus - misalnya koefisien model linier yang berlaku, teknik seperti yang dijelaskan di sini untuk mengatakan XGBoost ( https://medium.com/applied-data-science/new-r-package-the-xgboost-explainer-51dd7d1aa211 )
- Model Independen Teknik - misalnya semacam "metode perturbation" mirip dengan Partial Dependence untuk memahami bagaimana prediksi berubah ketika kita mengganggu prediktor dan mungkin model itu ?, atau teknik seperti LIME dijelaskan dalam makalah ini ( https://arxiv.org/ pdf / 1602.04938.pdf dan https://github.com/marcotcr/lime ), teknik Permutasi Penting yang dimodifikasi?
Menurut saya pendekatan yang paling berharga adalah teknik model independen mengingat sifat agak "kotak hitam" dari banyak algoritma, dan memberikan kemampuan untuk menafsirkan algoritma dan teknik baru dan baru.
Salah satu metode naif, dijelaskan di sini ( http://amunategui.github.io/actionable-instights/index.html ) adalah untuk mengambil setiap prediktor, "menetralkan" dampaknya dengan mengatakan merusak mean "populasi", dan menjalankan prediksi lagi mendapatkan perbedaan antara prediksi asli dan versi yang dinetralkan memberikan ukuran penting. Ini sepertinya kasus khusus dari metode "perturbation" yang diisyaratkan di atas. Beberapa kekurangan yang saya lihat dalam hal ini adalah bahwa 1) tampaknya menyiratkan bahwa prediksi yang memiliki "rata-rata" (atau setara) dari setiap fitur tentu merupakan prediksi "menengah", dan 2) fitur yang merupakan "sarana" ”(Atau yang setara) tentu tidak berdampak?
Secara umum, teknik apa pun harus menjelaskan:
- Cara menangani berbagai tipe data (numerik, kategorikal, dll.)
- Cara menangani data yang hilang
- Bagaimana menangani kepentingan bersyarat mungkin (yaitu bahwa prediktor mungkin hanya penting berpasangan dll.)
- Efisiensi komputasi (apakah benar-benar praktis untuk menjalankan prediksi kali di mana adalah jumlah prediktor, atau untuk metode gangguan mana adalah jumlah prediksi per prediktor, dll.)
Dengan pemikiran longgar dan mungkin salah tentang masalah ini, saya bertanya-tanya pendekatan apa terhadap masalah yang orang sadari, telah pertimbangkan, telah digunakan, akan disarankan dll.?
sumber
Dua metode lain yang layak disebutkan di sini adalah:
1) Algoritma SHAP Lundberg & Lee , perpanjangan dari pendekatan teori permainan Štrumbelj & Kononenko yang mereka klaim menyatukan LIME dan sejumlah tindakan penting lokal lainnya; dan
2) Metode kontrafaktual Wachter et al. , Berdasarkan jaringan permusuhan generatif.
Kedua metode memiliki kelebihan dan kekurangan. SHAP sangat cepat dan dilengkapi dengan implementasi Python yang mudah digunakan . Sayangnya, bagaimanapun, selalu membandingkan poin terhadap data centroid, yang mungkin tidak kontras yang relevan dalam beberapa kasus. Juga, seperti LIME dan sejumlah algoritma lainnya, ia mengasumsikan (atau menegakkan) linearitas lokal, yang dapat menyebabkan hasil yang tidak stabil atau tidak informatif ketika kasus minat kami berada di dekat wilayah nonlinear yang jelas dari batas keputusan atau permukaan regresi.
Solusi Wachter et al. Lebih fleksibel dalam hal ini, penyimpangan menyegarkan dari apa yang disebut Lundberg & Lee paradigma "atribusi fitur tambahan". Saya tidak mengetahui adanya implementasi open source. Biaya tambahan pelatihan GAN juga bisa sangat sulit untuk beberapa set data.
sumber