Interpretabilitas model

Artikel ini menjelaskan metode yang dapat Anda gunakan untuk interpretasi model dalam Azure Machine Learning.

Penting

Dengan dirilisnya dasbor Responsible AI yang mencakup kemampuan interpretasi model, sebaiknya pengguna bermigrasi ke pengalaman baru karena dasbor kemampuan interpretasi model pratinjau SDK v1 yang lebih lama tidak lagi dipelihara secara aktif.

Mengapa kemampuan interpretasi model penting untuk penelusuran kesalahan model

Saat Anda menggunakan model pembelajaran mesin dengan cara yang memengaruhi kehidupan orang, sangat penting untuk memahami apa yang memengaruhi perilaku model. Kemampuan interpretasi membantu menjawab pertanyaan dalam skenario seperti:

  • Penelusuran kesalahan model: Mengapa model saya membuat kesalahan ini? Bagaimana cara meningkatkan model saya?
  • Kolaborasi Manusia-AI: Bagaimana saya dapat memahami dan mempercayai keputusan model?
  • Kepatuhan terhadap peraturan: Apakah model saya memenuhi persyaratan hukum?

Komponen interpretabilitas dasbor AI Yang Bertanggung Jawab berkontribusi pada tahap "diagnosis" alur kerja siklus hidup model dengan menghasilkan deskripsi yang dapat dipahami manusia dari prediksi model pembelajaran mesin. Ini menyediakan beberapa tampilan ke dalam perilaku model:

  • Penjelasan Global: Misalnya, fitur apa yang memengaruhi perilaku keseluruhan model alokasi pinjaman?
  • Penjelasan lokal: Misalnya, mengapa aplikasi pinjaman pelanggan disetujui atau ditolak?

Seseorang juga dapat mengamati penjelasan model untuk kohor yang dipilih sebagai subgrup poin data. Pendekatan ini berharga ketika, misalnya, menilai keadilan dalam prediksi model untuk individu dalam kelompok demografis tertentu. Tab Penjelasan lokal dari komponen ini juga mewakili visualisasi data lengkap, yang sangat bagus untuk mengamati data secara umum dan melihat perbedaan antara prediksi yang benar dan salah dari setiap kohor.

Kemampuan komponen ini dibuat oleh paket InterpretML, yang menghasilkan penjelasan model.

Gunakan kemampuan interpretasi saat Anda perlu:

  • Tentukan seberapa tepercaya prediksi sistem AI Anda dengan memahami fitur apa yang paling penting untuk prediksi.
  • Lakukan pendekatan penelusuran kesalahan model Anda dengan memahaminya terlebih dahulu dan mengidentifikasi apakah model tersebut menggunakan fitur yang sehat atau hanya korelasi palsu.
  • Temukan sumber potensi ketidakadilan dengan memahami apakah model memprediksi berdasarkan fitur sensitif atau fitur yang sangat berkorelasi dengan fitur tersebut.
  • Bangun kepercayaan pengguna pada keputusan model Anda dengan menghasilkan penjelasan lokal untuk mengilustrasikan hasilnya.
  • Selesaikan audit peraturan sistem AI untuk memvalidasi model dan memantau dampak keputusan model pada manusia.

Cara menginterpretasikan model Anda

Dalam pembelajaran mesin, fitur adalah bidang data yang digunakan untuk memprediksi poin data target. Misalnya, untuk memprediksi risiko kredit, bidang data untuk usia, ukuran akun, dan usia akun dapat digunakan. Dalam hal ini, usia, ukuran akun, dan usia akun adalah fitur. Kepentingan fitur memberi tahu Anda bagaimana setiap bidang data memengaruhi prediksi model. Misalnya, meskipun Anda mungkin banyak menggunakan usia dalam prediksi, ukuran akun dan usia akun mungkin tidak memengaruhi nilai prediksi secara signifikan. Melalui proses ini, ilmuwan data dapat menjelaskan prediksi yang dihasilkan dengan cara yang memberikan visibilitas pemangku kepentingan ke dalam fitur paling penting model.

Dengan menggunakan kelas dan metode di dasbor Responsible AI dan dengan menggunakan SDK v2 dan CLI v2, Anda dapat:

  • Menjelaskan prediksi model dengan menghasilkan nilai kepentingan fitur untuk keseluruhan model (penjelasan global) dan/atau poin data individual (penjelasan lokal).
  • Mencapai interpretabilitas model pada himpunan data dunia nyata dalam skala besar.
  • Menggunakan dasbor visualisasi interaktif untuk menemukan pola dalam data dan penjelasan pada waktu pelatihan.

Dengan menggunakan kelas dan metode di SDK v1, Anda dapat:

  • Jelaskan prediksi model dengan menghasilkan nilai-nilai penting fitur untuk seluruh model dan/atau poin data individual.
  • Mencapai kemampuan interpretasi model pada himpunan data dunia nyata dalam skala besar, selama pelatihan dan inferensi.
  • Menggunakan dasbor visualisasi interaktif untuk menemukan pola dalam data dan penjelasan pada waktu pelatihan.

Catatan

Kelas kemampuan interpretasi model tersedia melalui paket SDK v1. Untuk informasi selengkapnya, lihat Menginstal paket SDK untuk Azure Machine Learning dan azureml.interpret.

Teknik kemampuan interpretasi model yang didukung

Dasbor Responsible AI dan azureml-interpret menggunakan teknik kemampuan interpretasi yang dikembangkan di Interpret-Community, paket Python sumber terbuka untuk melatih model yang dapat ditafsirkan dan membantu menjelaskan sistem AI kotak-opaque. Model kotak buram adalah model yang informasi tentang cara kerja internalnya tidak kami miliki.

Interpret-Community berfungsi sebagai host untuk penjelasan yang didukung berikut, dan saat ini mendukung teknik kemampuan interpretasi yang dijabarkan di bagian berikutnya.

Didukung di dasbor AI yang Bertanggung Jawab di Python SDK v2 dan CLI v2

Teknik kemampuan interpretasi Deskripsi Jenis
Mimic Explainer (Pengganti Global) + pohon SHAP Mimic explainer didasarkan pada gagasan untuk melatih model pengganti global guna meniru model kotak opaque. Model pengganti global adalah model yang dapat diinterpretasikan secara intrinsik yang dilatih untuk memperkirakan prediksi model kotak buram apa pun seakurat mungkin.

Ilmuwan data dapat menginterpretasikan model pengganti untuk menarik kesimpulan tentang model kotak buram. Dasbor Responsible AI menggunakan LightGBM (LGBMExplainableModel), dipasangkan dengan SHAP (SHapley Additive exPlanations) Tree Explainer, yang merupakan penjelas khusus untuk pohon dan ansambel pohon. Kombinasi pohon LightGBM dan SHAP memberikan penjelasan global dan lokal model-agnostik dari model pembelajaran mesin Anda.
Model-agnostik

Teknik interpretasi model yang didukung untuk model teks

Teknik kemampuan interpretasi Deskripsi Jenis Tugas Teks
Teks SHAP SHAP (SHapley Additive exPlanations) adalah metode penjelasan populer untuk jaringan neural mendalam yang memberikan wawasan tentang kontribusi setiap fitur input ke prediksi tertentu. Ini didasarkan pada konsep nilai Shapley, yang merupakan metode untuk menetapkan kredit kepada pemain individu dalam permainan kooperatif. SHAP menerapkan konsep ini ke fitur input jaringan neural dengan menghitung kontribusi rata-rata setiap fitur ke output model di semua kombinasi fitur yang mungkin. Untuk teks secara khusus, SHAP memisahkan kata-kata dengan cara hierarkis, memperlakukan setiap kata atau token sebagai fitur. Ini menghasilkan serangkaian nilai atribusi yang mengukur pentingnya setiap kata atau token untuk prediksi yang diberikan. Peta atribusi akhir dihasilkan dengan memvisualisasikan nilai-nilai ini sebagai peta panas di atas dokumen teks asli. SHAP adalah metode model-agnostik dan dapat digunakan untuk menjelaskan berbagai model pembelajaran mendalam, termasuk CN, RNN, dan transformator. Selain itu, ini menyediakan beberapa properti yang diinginkan, seperti konsistensi, akurasi, dan keadilan, menjadikannya teknik yang dapat diandalkan dan dapat ditafsirkan untuk memahami proses pengambilan keputusan model. Model Agnostik Klasifikasi Multi-kelas Teks, Klasifikasi Multi-label Teks

Teknik interpretabilitas model yang didukung untuk model gambar

Teknik kemampuan interpretasi Deskripsi Jenis Tugas Visi
Visi SHAP SHAP (SHapley Additive exPlanations) adalah metode penjelasan populer untuk jaringan neural mendalam yang memberikan wawasan tentang kontribusi setiap fitur input ke prediksi tertentu. Ini didasarkan pada konsep nilai Shapley, yang merupakan metode untuk menetapkan kredit kepada pemain individu dalam permainan kooperatif. SHAP menerapkan konsep ini ke fitur input jaringan neural dengan menghitung kontribusi rata-rata setiap fitur ke output model di semua kombinasi fitur yang mungkin. Untuk penglihatan secara khusus, SHAP memisahkan gambar secara hierarkis, memperlakukan area superpiksel gambar sebagai setiap fitur. Ini menghasilkan serangkaian nilai atribusi yang mengukur pentingnya setiap superpiksel atau area gambar untuk prediksi yang diberikan. Peta atribusi akhir dihasilkan dengan memvisualisasikan nilai-nilai ini sebagai peta panas. SHAP adalah metode model-agnostik dan dapat digunakan untuk menjelaskan berbagai model pembelajaran mendalam, termasuk CN, RNN, dan transformator. Selain itu, ini menyediakan beberapa properti yang diinginkan, seperti konsistensi, akurasi, dan keadilan, menjadikannya teknik yang dapat diandalkan dan dapat ditafsirkan untuk memahami proses pengambilan keputusan model. Model Agnostik Klasifikasi Multi-kelas Gambar, Klasifikasi Multi-label Gambar
Backprop Terpandu Guided-backprop adalah metode penjelasan populer untuk jaringan neural mendalam yang memberikan wawasan tentang representasi model yang dipelajari. Ini menghasilkan visualisasi fitur input yang mengaktifkan neuron tertentu dalam model, dengan menghitung gradien output sehubungan dengan gambar input. Tidak seperti metode berbasis gradien lainnya, backprop terpandu hanya backpropagate melalui gradien positif dan menggunakan fungsi aktivasi ReLU yang dimodifikasi untuk memastikan bahwa gradien negatif tidak memengaruhi visualisasi. Ini menghasilkan peta saliency yang lebih dapat ditafsirkan dan resolusi tinggi yang menyoroti fitur terpenting dalam gambar input untuk prediksi tertentu. Guided-backprop dapat digunakan untuk menjelaskan berbagai model pembelajaran mendalam, termasuk jaringan neural konvolusional (CN), jaringan saraf berulang (RNN), dan transformator. AutoML Klasifikasi Multi-kelas Gambar, Klasifikasi Multi-label Gambar
GradCAM terpandu GradCAM terpandu adalah metode penjelasan populer untuk jaringan neural mendalam yang memberikan wawasan tentang representasi model yang dipelajari. Ini menghasilkan visualisasi fitur input yang paling berkontribusi pada kelas output tertentu, dengan menggabungkan pendekatan berbasis gradien dari backpropagation terpandu dengan pendekatan pelokalan GradCAM. Secara khusus, ia menghitung gradien kelas output sehubungan dengan peta fitur lapisan konvolusional terakhir dalam jaringan, dan kemudian menimbang setiap peta fitur sesuai dengan pentingnya aktivasinya untuk kelas tersebut. Ini menghasilkan peta panas resolusi tinggi yang menyoroti wilayah paling diskriminatif dari gambar input untuk kelas output yang diberikan. GradCAM terpandu dapat digunakan untuk menjelaskan berbagai model pembelajaran mendalam, termasuk CN, RNN, dan transformer. Selain itu, dengan menggabungkan backpropagation terpandu, ia memastikan bahwa visualisasi bermakna dan dapat ditafsirkan, menghindari aktivasi yang memuaskan dan kontribusi negatif. AutoML Klasifikasi Multi-kelas Gambar, Klasifikasi Multi-label Gambar
Gradien Terintegrasi Gradien Terintegrasi adalah metode penjelasan populer untuk jaringan neural mendalam yang memberikan wawasan tentang kontribusi setiap fitur input ke prediksi tertentu. Ini menghitung integral gradien kelas output sehubungan dengan gambar input, di sepanjang jalur lurus antara gambar garis besar dan gambar input aktual. Jalur ini biasanya dipilih untuk menjadi interpolasi linier antara kedua gambar, dengan garis besar menjadi gambar netral yang tidak memiliki fitur yang penting. Dengan mengintegrasikan gradien di sepanjang jalur ini, Gradien Terintegrasi menyediakan ukuran bagaimana setiap fitur input berkontribusi pada prediksi, memungkinkan peta atribusi dihasilkan. Peta ini menyoroti fitur input yang paling berpengaruh, dan dapat digunakan untuk mendapatkan wawasan tentang proses pengambilan keputusan model. Gradien Terintegrasi dapat digunakan untuk menjelaskan berbagai model pembelajaran mendalam, termasuk CN, RNN, dan transformator. Selain itu, ini adalah teknik yang membumi secara teoritis yang memenuhi serangkaian properti yang diinginkan, seperti sensitivitas, invariansi implementasi, dan kelengkapan. AutoML Klasifikasi Multi-kelas Gambar, Klasifikasi Multi-label Gambar
XRAI XRAI adalah metode saliency berbasis wilayah baru berdasarkan Integrated Gradients (IG). Ini secara berlebihan mengesegmentasi gambar dan secara berulang menguji pentingnya setiap wilayah, menyatukan wilayah yang lebih kecil ke segmen yang lebih besar berdasarkan skor atribusi. Strategi ini menghasilkan wilayah ludah berkualitas tinggi dan terikat erat yang mengungguli teknik saliency yang ada. XRAI dapat digunakan dengan model berbasis DNN selama ada cara untuk mengklusterkan fitur input ke dalam segmen melalui beberapa metrik kesamaan. AutoML Klasifikasi Multi-kelas Gambar, Klasifikasi Multi-label Gambar
D-RISE D-RISE adalah metode agnostik model untuk membuat penjelasan visual untuk prediksi model deteksi objek. Dengan memperhitungkan aspek pelokalan dan kategorisasi deteksi objek, D-RISE dapat menghasilkan peta saliency yang menyoroti bagian gambar yang paling berkontribusi pada prediksi detektor. Tidak seperti metode berbasis gradien, D-RISE lebih umum dan tidak memerlukan akses ke pekerjaan dalam detektor objek; hanya memerlukan akses ke input dan output model. Metode ini dapat diterapkan ke detektor satu tahap (misalnya, YOLOv3), detektor dua tahap (misalnya, Faster-RCNN), dan Vision Transformers (misalnya, DETR, OWL-ViT).
D-Rise menyediakan peta kelenduran dengan membuat masker acak dari gambar input dan akan mengirimkannya ke detektor objek dengan masker acak dari gambar input. Dengan menilai perubahan skor detektor objek, ia menggabungkan semua deteksi dengan setiap masker dan menghasilkan peta saliency akhir.
Model Agnostik Deteksi Objek

Didukung di Python SDK v1

Teknik kemampuan interpretasi Deskripsi Jenis
Penjelas Pohon SHAP SHAP Tree Explainer, yang berfokus pada algoritma estimasi nilai polinomial, kecepatan waktu, SHAP yang spesifik untuk pohon dan ansambel pohon. Khusus model
Penjelas Mendalam SHAP Berdasarkan penjelas dari SHAP, Deep Explainer "adalah algoritma pendekatan berkecepatan tinggi untuk nilai SHAP dalam model pembelajaran mendalam yang dibangun berdasarkan koneksi dengan DeepLIFT yang dijelaskan dalam artikel SHAP NIPS. Model TensorFlow dan model Keras yang menggunakan backend TensorFlow didukung (ada juga dukungan awal untuk PyTorch)." Khusus model
Penjelas Linear SHAP SHAP Linear Explainer menghitung nilai SHAP untuk model linear, secara opsional memperhitungkan korelasi antar-fitur. Khusus model
Penjelas Kernel SHAP SHAP Kernel Explainer menggunakan regresi linier lokal terhitung khusus untuk memperkirakan nilai SHAP untuk model apa pun. Model-agnostik
Penjelas Mimic (Pengganti Global) Mimic explainer didasarkan pada gagasan untuk melatih model pengganti global guna meniru model kotak opaque. Model pengganti global adalah model yang dapat diinterpretasikan secara intrinsik yang dilatih untuk memperkirakan prediksi model kotak buram apa pun seakurat mungkin. Ilmuwan data dapat menginterpretasikan model pengganti untuk menarik kesimpulan tentang model kotak buram. Anda dapat menggunakan salah satu model yang dapat ditafsirkan berikut sebagai model pengganti Anda: LightGBM (LGBMExplainableModel), Linear Regression (LinearExplainableModel), model yang dapat dijelaskan Stochastic Gradient Descent (SGDExplainableModel), dan Decision Tree (DecisionTreeExplainableModel). Model-agnostik
Penjelas Kepentingan Fitur Permutasi (PFI) Kepentingan Fitur Permutasi (PFI) adalah teknik yang digunakan untuk menjelaskan model klasifikasi dan regresi yang terinspirasi oleh artikel Hutan Acak Breiman (lihat bagian 10). Pada tingkat tinggi, cara kerjanya adalah dengan mengacak data satu fitur secara acak pada satu waktu untuk seluruh himpunan data dan menghitung berapa banyak metrik performa menarik berubah. Semakin besar perubahan, semakin penting fitur itu. PFI dapat menjelaskan perilaku keseluruhan model dasar apa pun, tetapi tidak menjelaskan prediksi individu. Model-agnostik

Selain teknik interpretasi yang dijelaskan di bagian sebelumnya, kami mendukung penjelas berbasis SHAP lain, yang disebut Tabular Explainer. Bergantung pada model, Tabular Explainer menggunakan salah satu penjelas SHAP yang didukung:

  • Tree Explainer untuk semua model berbasis pohon
  • Deep Explainer untuk model jaringan neural dalam (DNN)
  • Explainer untuk model linear
  • Kernel Explainer untuk semua model lainnya

Tabular Explainer juga telah membuat fitur yang signifikan dan peningkatan kinerja atas Penjelas SHAP langsung:

  • Ringkasan himpunan data inisialisasi: Ketika kecepatan penjelasan paling penting, kami meringkas himpunan data inisialisasi dan menghasilkan sekumpulan kecil sampel perwakilan. Pendekatan ini mempercepat pembuatan nilai kepentingan fitur secara keseluruhan dan individual.
  • Pengambilan sampel himpunan data evaluasi: Jika pengguna melewati serangkaian besar sampel evaluasi tetapi tidak benar-benar membutuhkan semuanya untuk dievaluasi, parameter pengambilan sampel dapat diatur ke true untuk mempercepat penghitungan penjelasan model secara keseluruhan.

Diagram berikut menunjukkan struktur saat ini dari penjelas yang didukung:

 Diagram of Machine Learning Interpretability architecture.

Model pembelajaran mesin yang didukung

Paket azureml.interpret SDK mendukung model yang dilatih dengan format himpunan data berikut:

  • numpy.array
  • pandas.DataFrame
  • iml.datatypes.DenseData
  • scipy.sparse.csr_matrix

Fungsi penjelasan menerima kedua model dan alur sebagai input. Jika model disediakan, model harus mengimplementasikan fungsi prediksi predict atau predict_proba yang sesuai dengan konvensi Scikit. Jika model Anda tidak mendukung ini, Anda dapat membungkus model Anda dalam fungsi yang menghasilkan hasil yang sama seperti predict atau predict_proba di Scikit dan menggunakan fungsi pembungkus itu dengan penjelasan yang dipilih.

Jika alur disediakan, fungsi penjelasan mengasumsikan bahwa skrip alur yang berjalan menampilkan prediksi. Saat Anda menggunakan teknik pembungkusan ini, azureml.interpret dapat mendukung model yang dilatih melalui PyTorch, TensorFlow, kerangka kerja pembelajaran mendalam Keras, dan model pembelajaran mesin klasik.

Target komputasi lokal dan jarak jauh

Paket azureml.interpret ini dirancang untuk bekerja dengan target komputasi lokal dan jarak jauh. Jika dijalankan secara lokal, fungsi SDK tidak akan menghubungi layanan Azure apa pun.

Anda dapat menjalankan penjelasan dari jarak jauh di Azure Machine Learning Compute dan mencatat info penjelasan ke dalam Azure Machine Learning Run History Service. Setelah informasi ini dicatat, laporan dan visualisasi dari penjelasan sudah tersedia di studio Azure Machine Learning untuk dianalisis.

Langkah berikutnya