Dalam artikel ini, kita menyelam ke dalam konsep pembelajaran mesin dan model kecerdasan buatan kebolehkerjaan dan tafsiran. Kami meneroka mengapa memahami bagaimana model membuat ramalan adalah penting, terutamanya kerana teknologi ini digunakan dalam bidang kritikal seperti penjagaan kesihatan, kewangan, dan sistem undang -undang. Melalui alat seperti Lime dan Shap, kami menunjukkan bagaimana untuk mendapatkan pandangan mengenai proses membuat keputusan model, menjadikan model kompleks lebih telus. Artikel ini menonjolkan perbezaan antara kebolehpecahan dan interpretasi, dan menerangkan bagaimana konsep -konsep ini menyumbang kepada membina kepercayaan dalam sistem AI, sementara juga menangani cabaran dan batasan mereka.
Sebaliknya, tafsiran adalah proses yang terlibat dengan menerjemahkan penjelasan dan keputusan model kepada pengguna bukan teknikal. Ia membantu para saintis data memahami perkara-perkara seperti berat dan pekali yang menyumbang kepada ramalan model, dan ia membantu pengguna bukan teknikal memahami bagaimana model membuat keputusan dan faktor-faktor apa yang diberikan oleh model penting dalam membuat ramalan tersebut.
Oleh kerana model AI dan ML menjadi lebih kompleks dengan beratus -ratus lapisan model dan beribu -ribu kepada berbilion parameter misalnya dalam model LLM dan mendalam, ia menjadi sangat sukar bagi kita untuk memahami keputusan tahap pemerhatian keseluruhan dan tempatan yang dibuat oleh model. Model Penjelasan memberikan penjelasan dengan pandangan dan penalaran untuk kerja -kerja dalaman model. Oleh itu, ia menjadi mustahak bagi saintis data dan pakar AI untuk memanfaatkan teknik penjelasan ke dalam proses pembinaan model mereka dan ini juga akan meningkatkan tafsiran model.Manfaat Meningkatkan Keterlaluan dan Tafsiran Model
amanah yang lebih baik
amanah dikaitkan dengan orang dan perkara yang tidak hidup. Sebagai contoh, bergantung kepada membuat keputusan rakan atau bergantung pada kereta memandu automatik sepenuhnya untuk mengangkut anda dari satu tempat ke tempat lain. Kekurangan ketelusan dan komunikasi juga boleh menyebabkan penghancuran kepercayaan. Juga, kepercayaan dibina dari masa ke masa melalui langkah -langkah kecil dan interaksi positif berulang. Apabila kita mempunyai interaksi positif yang konsisten dengan seseorang atau benda, ia menguatkan kepercayaan kita terhadap kebolehpercayaan mereka, niat positif, dan tidak berbahaya. Oleh itu, kepercayaan dibina dari masa ke masa melalui pengalaman kami.
dan, ia memainkan peranan penting bagi kita untuk bergantung kepada model ML & AI dan ramalan mereka.
ketelusan dan kerjasama yang lebih baik
Apabila sesuatu pecah atau tidak berfungsi seperti yang diharapkan, kita perlu mencari sumber masalah. Untuk melakukan ini, ketelusan ke dalam kerja dalaman sistem atau model adalah penting. Ia membantu mendiagnosis isu dan mengambil tindakan yang berkesan untuk menyelesaikannya. Sebagai contoh, pertimbangkan model yang meramalkan bahawa orang "B" tidak boleh diluluskan untuk pinjaman. Untuk memahami ini, kita mesti mengkaji ramalan dan keputusan model. Ini termasuk mengenal pasti faktor -faktor model yang diprioritaskan untuk pemerhatian orang "B".
Dalam senario sedemikian, penjelasan model akan menjadi sangat berguna dalam mencari lebih mendalam ke dalam ramalan model dan membuat keputusan yang berkaitan dengan orang "B". Juga, sambil melihat lebih jauh ke dalam kerja -kerja dalaman model, kami mungkin dengan cepat menemui beberapa kecenderungan yang mungkin mempengaruhi dan memberi kesan kepada keputusan model.
Oleh itu, mempunyai penjelasan dengan model ML dan AI dan menggunakannya akan membuat penyelesaian masalah, pemantauan, dan peningkatan berterusan yang cekap, dan membantu mengenal pasti dan mengurangkan kecenderungan, dan kesilapan untuk meningkatkan prestasi model.
Kami sentiasa berminat dengan keupayaan ramalan keseluruhan model untuk mempengaruhi dan membuat keputusan yang didorong oleh data. Terdapat banyak aplikasi untuk model ML dan AI dalam pelbagai industri seperti perbankan dan kewangan, runcit, penjagaan kesihatan, internet. Komersial, insurans, automotif, pembuatan, pendidikan, telekomunikasi, perjalanan, ruang, dan sebagainya.
berikut adalah beberapa contoh:
Bagi industri perbankan dan kewangan, adalah penting untuk mengenal pasti pelanggan yang tepat untuk memberi pinjaman atau mengeluarkan kad kredit. Mereka juga berminat untuk mencegah urus niaga penipuan. Juga, industri ini sangat dikawal.
Untuk membuat proses dalaman seperti kelulusan permohonan dan pemantauan penipuan yang cekap, pemodelan ML dan Leverage ML dan AI untuk membantu keputusan penting ini. Mereka menggunakan model ML dan AI untuk meramalkan hasil berdasarkan faktor tertentu dan diketahui.
Secara amnya, kebanyakan institusi ini terus memantau urus niaga dan data untuk mengesan corak, trend, dan anomali. Ia menjadi penting bagi mereka untuk mempunyai keupayaan untuk memahami ramalan model ML dan AI untuk setiap aplikasi yang mereka proses. Mereka berminat untuk memahami alasan di sebalik ramalan model dan faktor -faktor yang memainkan peranan penting dalam membuat ramalan.
Sekarang, katakan model ML meramalkan permohonan pinjaman yang akan ditolak untuk beberapa pelanggan mereka dengan skor kredit yang tinggi, dan ini mungkin tidak biasa. Dalam senario sedemikian, mereka boleh menggunakan penjelasan model untuk analisis risiko dan untuk mendapatkan pandangan yang lebih mendalam tentang mengapa model itu memutuskan untuk menolak aplikasi pelanggan, dan faktor pelanggan yang memainkan peranan penting dalam membuat keputusan ini. Penemuan ini mungkin membantu mereka mengesan, menyiasat, dan mengurangkan isu, kelemahan, dan kecenderungan baru dalam membuat keputusan model mereka dan membantu meningkatkan prestasi model.
Hari ini dalam industri penjagaan kesihatan, model ML/AI dimanfaatkan untuk meramalkan hasil kesihatan pesakit berdasarkan pelbagai faktor contoh sejarah perubatan, makmal, gaya hidup, genetik, dan lain -lain
Katakan institusi perubatan menggunakan model ML/AI untuk meramalkan jika pesakit di bawah rawatan mereka mempunyai kebarangkalian yang tinggi kanseror tidak. Oleh kerana masalah ini melibatkan kehidupan seseorang, model AI/ML dijangka meramalkan hasil dengan tahap ketepatan yang sangat tinggi.
Dalam senario sedemikian, mempunyai keupayaan untuk melihat lebih mendalam ke dalam ramalan model, peraturan keputusan yang digunakan, dan memahami faktor -faktor yang mempengaruhi ramalan menjadi penting. Pasukan profesional penjagaan kesihatan akan melakukan ketekunan wajar dan akan mengharapkan ketelusan dari model ML/AI untuk memberikan penjelasan yang jelas dan terperinci yang berkaitan dengan hasil pesakit yang diramalkan dan faktor penyumbang. Di sinilah jelas model ML/AI menjadi penting.
Siasatan ini kadang-kadang boleh membantu menemui beberapa kelemahan tersembunyi danbias dalam membuat keputusan model dan boleh ditangani untuk meningkatkan ramalan model masa depan.
Kenderaan autonomi adalah kenderaan operasi sendiri seperti kereta, trak barang, kereta api, pesawat, kapal, kapal angkasa, dan sebagainya. Dalam kenderaan sedemikian, model AI dan ML memainkan peranan penting dalam membolehkan kenderaan ini beroperasi secara bebas, tanpa campur tangan manusia. Model -model ini dibina menggunakan model pembelajaran dan model penglihatan komputer. Mereka membolehkan kereta/kenderaan autonomi untuk melihat maklumat di persekitaran mereka, membuat keputusan yang tepat, dan selamat menavigasi mereka.
Dalam hal kenderaan autonomi yang direka untuk beroperasi di jalan raya, navigasi bermaksud membimbing kenderaan secara autonomi dalam masa nyata iaitu tanpa campur tangan manusia melalui tugas -tugas penting seperti mengesan dan mengenal pasti objek, mengiktiraf isyarat lalu lintas, meramalkan tingkah laku objek,
Sejak kenderaan jalan autonomi melibatkan keselamatan pemandu, penumpang, awam, dan harta awam, mereka dijangka bekerja dengan sempurna dan mematuhi peraturan dan pematuhan, untuk mendapatkan kepercayaan, penerimaan, dan pengangkatan awam.Oleh itu, sangat penting untuk membina kepercayaan dalam model AI dan ML di mana kenderaan ini bergantung sepenuhnya untuk membuat keputusan. Dalam kenderaan autonomi, kebolehpasaran AI dan ML juga dikenali sebagai AI (XAI) yang boleh dijelaskan. AI yang boleh dijelaskan boleh digunakan untuk meningkatkan interaksi pengguna dengan memberi maklum balas kepada mereka mengenai tindakan dan keputusan AI dalam masa nyata, dan alat ini juga boleh berfungsi sebagai alat untuk menyiasat keputusan dan isu AI, mengenal pasti dan menghapuskan kecenderungan tersembunyi dan kelemahan, dan meningkatkan model kenderaan autonomi.runcit
Dalam industri runcit, model AI dan ML digunakan untuk membimbing pelbagai keputusan seperti jualan produk, pengurusan inventori, pemasaran, sokongan dan pengalaman pelanggan, dan lain -lain. Memiliki kebolehpecahan dengan ML dan AI memudahkan pemahaman tentang ramalan model, dan melihat lebih banyak produk yang akan menjadi Apa kempen pemasaran mempunyai kesan positif terhadap jualan, dan lain -lainBeberapa model kompleks datang dengan penjelasan terbina dalam manakala beberapa model bergantung pada alat luaran untuk ini. Terdapat beberapa alat model-agnostik yang tersedia hari ini yang membantu kami menambah penjelasan model. Kami akan melihat lebih mendalam ke dalam dua alat tersebut.
Alat untuk memperbaiki MOL dan AI Model Penjelasan dan Tafsiran
Mana-mana alat yang menyediakan maklumat yang berkaitan dengan proses membuat keputusan model dan sumbangan ciri dalam ramalan model sangat membantu. Penjelasan boleh dibuat lebih intuitif melalui visualisasi.
kapur (penjelasan model-agnostik yang diterjemahkan tempatan)
Ia berfungsi di bawah anggapan bahawa model yang dapat diterjemahkan mudah boleh digunakan untuk menerangkan kerja dalaman model kompleks. Model yang boleh ditafsirkan mudah boleh menjadi model regresi linear yang mudah atau model pokok keputusan. Di sini, kami menggunakan model regresi linear yang mudah sebagai model yang boleh difahami untuk menghasilkan penjelasan untuk model kompleks menggunakan penjelasan kapur/shap.
Lime juga dipanggil Model-agnostik Model-agnostik yang boleh diterjemahkan secara tempatan pada satu pemerhatian pada satu masa dan membantu kita memahami bagaimana model meramalkan skor untuk pemerhatian ini. Ia berfungsi dengan membuat data sintetik menggunakan nilai -nilai ciri -ciri yang terganggu dari pemerhatian asal.
Untuk membuat dataset yang bermasalah untuk data tabular, kapur pertama mengambil semua ciri dalam pemerhatian dan kemudian secara beransur -ansur mencipta nilai -nilai baru untuk pemerhatian dengan sedikit mengubahsuai nilai ciri menggunakan pelbagai transformasi. Nilai -nilai yang terganggu sangat dekat dengan nilai pemerhatian asal dan dari kejiranan lebih dekat dengan nilai asal.
Untuk jenis data teks dan imej, kapur secara beransur -ansur membuat dataset dengan memilih ciri secara rawak dari dataset asal dan mencipta nilai -nilai yang baru dari ciri -ciri kejiranan untuk ciri -ciri. Lebar kernel Lime mengawal saiz kejiranan titik data.
Saiz kernel yang lebih kecil bermakna kejiranan kecil dan titik yang paling dekat dengan nilai asal akan memberi kesan yang signifikan kepada penjelasan sementara untuk saiz kernel yang besar, titik jauh dapat menyumbang kepada penjelasan kapur.
saiz kejiranan yang lebih luas akan membawa kepada penjelasan yang kurang tepat tetapi dapat membantu mengungkap beberapa trend yang lebih luas dalam data. Untuk penjelasan tempatan yang lebih tepat, saiz kejiranan kecil harus disukai.Memahami Rajah
Untuk perbincangan ini, kami telah menggunakan contoh data dari dataset BigMart dan ia adalah masalah regresi. Kami menggunakan data jadual untuk kapur.
Memandangkan pemerhatian #0 dari dataset BigMart. Pemerhatian ini mempunyai ciri 'item_type' dengan nilai 13. Kami mengira sisihan min dan piawai untuk ciri ini dan kami mendapat nilai min menjadi 7.234 dan sisihan piawai sama dengan 4.22. Ini ditunjukkan dalam angka di atas. Menggunakan maklumat ini, kami kemudian mengira skor Z sama dengan 1.366.
Kawasan di sebelah kiri skor Z memberikan kita % nilai untuk ciri yang akan jatuh di bawah x. Untuk skor Z 1.366, kami akan mempunyai kira-kira 91.40% nilai untuk ciri yang akan jatuh di bawah x = 13. Oleh itu, kita mendapat intuisi bahawa lebar kernel perlu berada di bawah x = 13 untuk ciri ini. Dan, lebar kernel akan membantu mengawal saiz kejiranan untuk data yang terganggu.
di bawah Rajah-2 menunjukkan tiga titik data ujian asal dari dataset BigMart dan kami telah mempertimbangkan untuk mendapatkan intuisi proses kapur. XgBoost adalah model yang kompleks dan ia digunakan untuk menjana ramalan pada contoh pemerhatian asal.
Untuk artikel ini, kami akan menggunakan 3 rekod teratas dari dataset preprocessed dan dikodkan BigMart untuk memberikan contoh dan penjelasan untuk menyokong perbincangan.
Formula jarak limau
Angka (Rajah-4) di bawah menunjukkan titik data yang terganggu biru dan nilai asal sebagai titik data merah. Titik data yang terganggu pada jarak yang lebih pendek dari titik data asal akan lebih berkesan untuk penjelasan kapur.
Lebar kernel membantu kapur menentukan saiz kejiranan untuk memilih nilai -nilai yang terganggu untuk ciri tersebut. Oleh kerana nilai atau titik data bergerak dari nilai asal, mereka akan menjadi kurang berkesan dalam meramalkan hasil model.
Angka (Rajah-6) di bawah menunjukkan nilai ciri yang diganggu, bersama-sama dengan skor kesamaan mereka dengan nilai asal, dan ramalan contoh yang diganggu menggunakan model XGBoost, dan angka (Rajah-5) menunjukkan maklumat untuk model hitam yang dapat diterjemahkan hitam (regresi linear).
bagaimana jelas kebolehpecahan dan tafsiran yang dibina dalam model kompleks
Sejak perbincangan ini, kami telah menggunakan XGBoost sebagai model yang kompleks, kami telah membincangkan penjelasan model yang dibina di bawah. XGBoost memberikan kami ciri-ciri untuk merancang pokok keputusan untuk mendapatkan intuisi ke dalam membuat keputusan global model dan ciri-cirinya penting untuk ramalan. Ciri -ciri kepentingan mengembalikan senarai ciri -ciri mengikut kepentingan sumbangan mereka ke arah hasil model.
Pertama, kami memulakan model XGBoost dan kemudian melatihnya menggunakan ciri -ciri bebas dan sasaran dari set latihan. Ciri-ciri penjelasan terbina dalam model XGBoost digunakan untuk mendapatkan pandangan ke dalam model.
untuk merancang penjelasan XGBoost yang dibina menggunakan kod sumber berikut:
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
Angka (Rajah-7) di bawah menunjukkan pokok keputusan output dari model Xgboost kompleks BigMart di atas.
kod sumber untuk memaparkan kepentingan ciri
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
# feature_importance values in descending order feature_importance_xgb.sort_values(by='importance', ascending=False).head()
Dari pengimportan ciri XGBoost di atas, dengan menariknya kita melihat bahawa untuk model xgboost, outlet_type mempunyai magnitud yang lebih tinggi daripada item_mrp. Juga, model memberikan maklumat untuk ciri -ciri penyumbang lain dan kesannya terhadap ramalan model.
Seperti yang kita perhatikan, penjelasan model xgboost berada di peringkat global dan memberikan maklumat yang baik tetapi beberapa maklumat tambahan seperti arahan sumbangan ciri hilang dan kita tidak mempunyai pandangan untuk pemerhatian peringkat tempatan. Arah itu akan memberitahu kita jika ciri ini menyumbang ke arah meningkatkan nilai yang diramalkan atau mengurangkan nilai yang diramalkan. Untuk masalah klasifikasi, arah sumbangan ciri bermakna mengetahui sama ada ciri itu menyumbang ke arah kelas "1" atau kelas "0".
Ini adalah di mana alat penjelasan luaran seperti kapur dan shap boleh berguna dan melengkapkan penjelasan model xgboost dengan maklumat mengenai arah sumbangan ciri atau kesan ciri. Bagi model tanpa fungsi terbina dalam untuk menjelaskan proses membuat keputusan model, kapur membantu menambah keupayaan ini untuk menerangkan keputusan ramalannya untuk keadaan tempatan dan global.
bagaimana kerja membuat keputusan model kapur dan bagaimana mentafsirkan penjelasannya?Oleh itu, kita boleh menyesuaikan model kapur secara langsung dengan model yang memerlukan penjelasan, dan juga kita boleh menggunakannya untuk menerangkan model kotak hitam melalui model mudah pengganti.
Di bawah ini kita akan menggunakan model regresi XGBoost sebagai model kompleks serta kotak hitam dan memanfaatkan model regresi linear mudah untuk memahami penjelasan kapur untuk model kotak hitam. Ini juga akan membolehkan kita membandingkan penjelasan yang dihasilkan oleh kapur menggunakan kedua -dua pendekatan untuk model kompleks yang sama.
untuk memasang perpustakaan limau, gunakan kod berikut:
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
dari atas kita melihat bahawa pemerhatian yang teruk #0 mempunyai skor persamaan sebanyak 71.85% dan ini menunjukkan bahawa ciri -ciri dalam pemerhatian ini adalah 71.85% sama dengan pemerhatian asal. Nilai yang diramalkan untuk pemerhatian #0 adalah 1670.82, dengan pelbagai nilai yang diramalkan antara 21.74 dan 5793.40.
Lime mengenal pasti ciri -ciri yang paling menyumbang untuk ramalan #0 dan mengaturnya dalam urutan menurun magnitud sumbangan ciri.
Ciri -ciri yang ditandai dalam warna biru menunjukkan bahawa mereka menyumbang ke arah mengurangkan nilai yang diramalkan model manakala ciri -ciri yang ditandai dalam oren menunjukkan bahawa mereka menyumbang ke arah meningkatkan nilai yang diramalkan untuk pemerhatian iaitu contoh tempatan #0.
Juga, kapur pergi lebih jauh dengan menyediakan peraturan bersyarat peringkat ciri yang digunakan oleh model untuk memisahkan data untuk pemerhatian.Menggambarkan sumbangan ciri dan ramalan model menggunakan kapur
Dalam angka (Rajah-13) di atas, plot di sebelah kiri menunjukkan julat keseluruhan nilai yang diramalkan (min hingga max) oleh semua pemerhatian, dan nilai di pusat adalah nilai yang diramalkan untuk contoh khusus ini iaitu pemerhatian.
Plot di pusat memaparkan warna biru mewakili ciri -ciri yang menyumbang secara negatif ke arah ramalan model dan ciri -ciri yang menyumbang secara positif ke arah ramalan model untuk contoh tempatan diwakili oleh warna oren. Nilai -nilai berangka dengan ciri -ciri menunjukkan ciri -ciri nilai yang terancam atau kita boleh mengatakan bahawa mereka menunjukkan magnitud sumbangan ciri ke arah ramalan model, dalam kes ini, ia adalah untuk pemerhatian khusus (#0) atau contoh tempatan . Plot pada hak yang sangat menunjukkan susunan kepentingan ciri yang diberikan oleh model dalam menghasilkan ramalan untuk contoh.
Nota: Setiap kali kita menjalankan kod ini, kapur memilih ciri -ciri dan memberikan sedikit berat baru kepada mereka, oleh itu ia boleh mengubah nilai yang diramalkan serta plot.
Pendekatan 2: Bagaimana untuk melaksanakan dan mentafsirkan penjelasan kapur untuk model kotak hitam (xgbr) menggunakan model LR mudah pengganti?
untuk menggunakan kapur dengan model mudah pengganti pertama kita memerlukan ramalan dari model kotak hitam.
Langkah Kedua
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
# feature_importance values in descending order feature_importance_xgb.sort_values(by='importance', ascending=False).head()
Kod di atas berfungsi untuk regresi. Untuk masalah klasifikasi, mod perlu diubah suai kepada "klasifikasi".
# install lime library !pip install lime # import Explainer function from lime_tabular module of lime library from lime.lime_tabular import LimeTabularExplainer
nota
Melaksanakan perkara di atas, kami mendapat penjelasan kapur berikut seperti yang ditunjukkan dalam Rajah (Rajah-13) di bawah.
# Fit the explainer model using the complex model and show the LIME explanation and score explanation = explainer.explain_instance(X_unseen_test.values[0], xgbr_model.predict) explanation.show_in_notebook(show_table=True, show_all=False) print(explanation.score)
satu perkara yang kita perhatikan dengan segera ialah apabila kita menggunakan kapur secara langsung dengan model XGBoost, skor penjelasan kapur lebih tinggi (71.85%) untuk pemerhatian #0 dan apabila kita memperlakukannya sebagai model kotak hitam dan menggunakan model LR pengganti untuk mendapatkan penjelasan. Ini menunjukkan dengan pendekatan model pengganti terdapat jumlah ciri -ciri yang kurang dalam pemerhatian yang akan sama dengan ciri -ciri asal dan oleh itu, terdapat beberapa perbezaan dalam ramalan menggunakan penjelasan berbanding dengan model asal dan kapur model asal.
Nilai yang diramalkan untuk pemerhatian #0 adalah 2189.59, dengan keseluruhan nilai yang diramalkan antara 2053.46 dan 2316.54.
Nilai yang diramalkan untuk pemerhatian #0 menggunakan Lime XGBR ialah 1670.82.
Untuk melihat nilai -nilai yang tergesa -gesa kapur menggunakan kod berikut.
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
output dari atas akan kelihatan seperti seperti yang ditunjukkan dalam angka di bawah.
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
Ciri -ciri LIME Kepentingan
Apakah skor penjelasan kapur dan bagaimana menafsirkannya?
Sekarang mari kita lihat alat lain yang bernama Shapely untuk menambahkan penjelasan kepada model.
pemahaman shap (penjelasan tambahan shapley)
Menurut Shapely, gabungan pemain bekerjasama untuk mencapai hasil. Semua pemain tidak sama dan setiap pemain mempunyai ciri -ciri yang berbeza yang membantu mereka menyumbang kepada hasil yang berbeza. Kebanyakan masa, ia adalah sumbangan pemain berganda yang membantu mereka memenangi permainan. Oleh itu, kerjasama antara pemain adalah bermanfaat dan perlu dinilai, dan tidak seharusnya hanya bergantung kepada sumbangan pemain tunggal kepada hasilnya. Dan, dengan baik, hasil yang dihasilkan dari hasilnya harus diedarkan di kalangan pemain berdasarkan sumbangan mereka.
Shap ML dan AI Model Penjelasan Alat adalah berdasarkan konsep di atas. Ia merawat ciri -ciri dalam dataset sebagai pemain individu dalam pasukan (pemerhatian). Gabungan bekerjasama dalam model ML untuk meramalkan hasil dan hasilnya adalah ramalan model. Shap membantu dengan adil dan cekap mengedarkan keuntungan hasil di kalangan ciri -ciri individu (pemain), dengan itu mengiktiraf sumbangan mereka terhadap hasil model.
Dalam kes pemain "i", persamaan berikut yang ditunjukkan dalam angka (Rajah-16) boleh digunakan untuk menentukan nilai Shap untuk setiap pemain atau ciri.
mari kita meneroka perpustakaan Shap lagi.
bagaimana memasang pemasangan perpustakaan shap dan memulakannya?
bagaimana untuk melaksanakan dan mentafsirkan penjelasan shap model xgbr kompleks?
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
Bagaimana untuk menghasilkan nilai Shap untuk model XGBR kompleks?
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
# feature_importance values in descending order feature_importance_xgb.sort_values(by='importance', ascending=False).head()
nilai Shap akan kelihatan seperti seperti yang ditunjukkan dalam Rajah (Rajah-19) di bawah:
Shap membantu kita mengenal pasti ciri -ciri yang menyumbang kepada hasil model. Ia menunjukkan bagaimana setiap ciri mempengaruhi ramalan dan kesannya. Shap juga membandingkan sumbangan ciri kepada orang lain dalam model.
Shap mencapai ini dengan mempertimbangkan semua permutasi ciri -ciri yang mungkin. Ia mengira dan membandingkan hasil model dengan dan tanpa ciri -ciri, dengan itu mengira setiap sumbangan ciri bersama -sama dengan seluruh pasukan (semua pemain a.k.a ciri yang dipertimbangkan).
plot ringkasan shap boleh digunakan untuk melihat sumbangan ciri Shap, kepentingan mereka, dan kesan terhadap hasil.
berikut adalah angka (Rajah-20) menunjukkan kod sumber untuk menghasilkan plot ringkasan.
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
Juga, kita boleh mentafsir kesan ciri model pada hasilnya. Impak ciri diplot secara mendatar berpusat di sekitar nilai min Shap. Nilai Shap untuk ciri di sebelah kiri nilai min Shap ditunjukkan dalam warna merah jambu yang menandakan kesan negatifnya. Nilai Shap ciri di sebelah kanan nilai shap bermakna menandakan sumbangan ciri ke arah kesan positif. Nilai Shap juga menunjukkan magnitud atau pengaruh ciri -ciri pada hasilnya.
Oleh itu, Shap membentangkan gambaran keseluruhan model yang menunjukkan magnitud dan arah sumbangan setiap ciri ke arah hasil yang diramalkan.
Bagaimana untuk melaksanakan dan mentafsirkan plot ketergantungan Shap untuk model XGBR kompleks?
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
Plot pergantungan ciri Shap membantu kita mentafsirkan hubungan ciri dengan ciri lain. Dalam plot di atas, nampaknya item_mrp bergantung kepada outlet_type. Untuk outlet_types 1 hingga 3, item_mrp mempunyai trend yang semakin meningkat, sedangkan seperti yang dilihat dari atas untuk outlet_type 0 ke outlet_type 1, item_mrp mempunyai trend penurunan.
Bagaimana untuk melaksanakan dan mentafsirkan plot kuasa shap untuk model XGBR kompleks?
Untuk menggunakan plot kuasa Shap, kita boleh menggunakan kod di bawah. Ingatlah untuk menggunakan nama dataset anda sendiri. Kod berikut melihat pemerhatian pertama untuk dataset ujian i.e. x_unseen_test.iloc [0]. Nombor ini boleh ditukar untuk melihat ke dalam pemerhatian yang berbeza.
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
Bagaimana untuk melaksanakan dan mentafsirkan plot keputusan Shap untuk model XGBOOST yang kompleks?
# feature importance of the model feature_importance_xgb = pd.DataFrame() feature_importance_xgb['variable'] = X_train.columns feature_importance_xgb['importance'] = xgbr_model.feature_importances_
Dari plot keputusan di bawah, kita perhatikan bahawa ciri item_mrp memberi kesan positif kepada hasil yang diramalkan. Ia meningkatkan jualan outlet item. Begitu juga, outlet_identifier_out018 juga menyumbang secara positif dengan meningkatkan jualan. Sebaliknya, item_type memberi kesan negatif terhadap hasilnya. Ia mengurangkan jualan outlet item. Begitu juga, outlet_identifier_27 juga mengurangkan jualan dengan sumbangan negatifnya.
Plot di bawah menunjukkan plot keputusan untuk data jualan Big Mart.
Bagaimana untuk melaksanakan dan mentafsirkan plot kuasa shap untuk model XGBR yang kompleks menggunakan TreeExplainer?
# feature_importance values in descending order feature_importance_xgb.sort_values(by='importance', ascending=False).head()
bagaimana untuk melaksanakan dan mentafsirkan penjelasan Shap Model Black Box menggunakan model pengganti?
Untuk model pengganti penjelasan Shap, nilai Shap akan kelihatan seperti di bawah.
# install lime library !pip install lime # import Explainer function from lime_tabular module of lime library from lime.lime_tabular import LimeTabularExplainer
Untuk memaparkan plot ringkasan Shap untuk model pengganti kotak hitam, kod akan kelihatan seperti di bawah.
dari plot ringkasan shap di atas untuk model LR surrogat kotak hitam, item_type dan item_mrp adalah antara ciri -ciri penyumbang tertinggi dengan item_type yang mempunyai kesan neutral secara keseluruhan manakala item_mrp nampaknya menarik ke arah sebelah kanan yang menunjukkan ia menyumbang ke arah meningkatkan.
bagaimana untuk melaksanakan dan mentafsirkan plot ketergantungan Shap untuk model LR Simple Surrogate Black Surrogate?
# plot single tree plot_tree(xgbr_model) plt.figure(figsize=(10,5)) plt.show()
Dari plot di atas kita boleh mengatakan bahawa untuk model LR Surrogate Black Surrogate, MRP mempunyai trend yang semakin meningkat untuk jenis outlet 0 dan 1 sementara ia mempunyai trend penurunan untuk jenis outlet 3.
Jadual perbandingan model
Aspect | LIME | SHAP | Blackbox Surrogate LR Model | XGBR Model (Complex) |
---|---|---|---|---|
Explainability | Local-level explainability for individual predictions | Global-level and local-level explainability | Limited explainability, no local-level insights | Limited local-level interpretability |
Model Interpretation | Uses synthetic dataset with perturbed values to analyze model’s decision rationale | Uses game theory to evaluate feature contributions | No local-level decision insights | Global-level interpretability only |
Explanation Score | Average explanation score = 0.6451 | Provides clear insights into feature importance | Lower explanation score compared to LIME XGBR | Higher prediction accuracy but lower explanation |
Accuracy of Closeness to Predicted Value | Matches predicted values closely in some cases | Provides better accuracy with complex models | Low accuracy of closeness compared to LIME | Matches predicted values well but limited explanation |
Usage | Helps diagnose and understand individual predictions | Offers fairness and transparency in feature importance | Not suitable for detailed insights | Better for high-level insights, not specific |
Complexity and Explainability Tradeoff | Easier to interpret but less accurate for complex models | Higher accuracy with complex models, but harder to interpret | Less accurate, hard to interpret | Highly accurate but limited interpretability |
Features | Explains local decisions and features with high relevance to original data | Offers various plots for deeper model insights | Basic model with limited interpretability | Provides global explanation of model decisions |
Best Use Cases | Useful for understanding decision rationale for individual predictions | Best for global feature contribution and fairness | Used when interpretability is not a major concern | Best for higher accuracy at the cost of explainability |
Performance Analysis | Provides a match with XGBR prediction but slightly lower accuracy | Performs well but has a complexity-accuracy tradeoff | Limited performance insights compared to LIME | High prediction accuracy but with limited interpretability |
Juga, apabila menganalisis nilai -nilai yang tergesa -gesa, kami mendapat beberapa intuisi ke dalam bagaimana ciri -ciri kapur yang dipilih dan kemudian ditugaskan berat badan kepada mereka dan cuba membawa ramalan lebih dekat ke asal.
membawa semua model dan pemerhatian kapur (untuk 3 baris teratas dan ciri -ciri terpilih) yang kami dapatkan.
Pada masa yang sama, model Lime XGBR mempamerkan skor penjelasan yang tinggi (persamaan ciri -ciri kepada ciri -ciri asal).
Rata -rata skor penjelasan untuk model XGBR kapur kompleks adalah 0.6451 dan untuk model LR limau surrogat kotak hitam ialah 0.5701. Dalam kes ini, skor penjelasan purata untuk kapur XGBR lebih tinggi daripada model kotak hitam.
ketepatan kedekatan nilai yang diramalkan
Ketepatan % nilai yang diramalkan oleh model LR mudah dan model XGBR kompleks kapur adalah sama, dengan kedua -dua model mencapai ketepatan 100 % untuk pemerhatian #1. Ini menunjukkan bahawa nilai yang diramalkan rapat dengan ramalan sebenar yang dibuat oleh model XGBR kompleks. Secara amnya, ketepatan % yang lebih tinggi dari kedekatan mencerminkan model yang lebih tepat.
Prestasi purata untuk model XGBR Kompleks Lime adalah kira -kira 176 dan model LR Surrogate Blackbox adalah kira -kira 186.
Lime dan Shap adalah alat yang kuat yang meningkatkan penjelasan pembelajaran mesin dan model AI. Mereka membuat model kompleks atau hitam lebih telus. Lime mengkhususkan diri dalam memberikan pandangan peringkat tempatan ke dalam proses membuat keputusan model. Shap menawarkan pandangan yang lebih luas, menjelaskan sumbangan ciri di peringkat global dan tempatan. Walaupun ketepatan Lime mungkin tidak selalu sepadan dengan model kompleks seperti XGBR, ia tidak ternilai untuk memahami ramalan individu.
Sebaliknya, pendekatan berasaskan teori Teori Shap memupuk keadilan dan ketelusan tetapi kadang-kadang lebih sukar untuk mentafsir. Model Blackbox dan model kompleks seperti XGBR memberikan ketepatan ramalan yang lebih tinggi tetapi selalunya pada kos penjelasan yang dikurangkan. Pada akhirnya, pilihan antara alat ini bergantung kepada keseimbangan antara ketepatan ramalan dan interpretasi model, yang boleh berbeza -beza berdasarkan kerumitan model yang digunakan.
untuk maklumat lanjut sila gunakan berikut
a. Seorang jurubahasa adalah seseorang yang menerjemahkan bahasa kepada seseorang yang tidak memahami bahasa. Oleh itu, peranan interpretasi model adalah untuk berfungsi sebagai penterjemah dan ia menerjemahkan penjelasan model yang dihasilkan dalam format teknikal kepada manusia bukan teknikal dengan cara yang mudah difahami. Oleh itu, interpretasi model membantu menterjemahkan penjelasan model dari format teknikal yang kompleks ke dalam format mesra pengguna.
Q3. Bolehkah semua model dibuat ditafsirkan menggunakan kapur dan shap?
a. Ya, kapur dan shap adalah model agnostik. Ini bermakna mereka boleh digunakan untuk mana -mana model pembelajaran mesin. Kedua -dua alat ini meningkatkan kebolehpercayaan dan tafsiran model.
Atas ialah kandungan terperinci MOD dan AI Model Penjelasan dan Tafsiran. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!