Untuk model statistik dan pembelajaran mesin, ada beberapa tingkat interpretabilitas: 1) algoritma secara keseluruhan, 2) bagian dari algoritma secara umum 3) bagian dari algoritma pada input tertentu, dan tiga level ini dibagi menjadi dua bagian masing-masing, satu untuk pelatihan dan satu untuk evaluasi fungsi. Dua bagian terakhir jauh lebih dekat daripada yang pertama. Saya bertanya tentang # 2, yang biasanya mengarah pada pemahaman yang lebih baik dari # 3). (jika itu bukan apa artinya 'interpretabilitas' maka apa yang harus saya pikirkan?)
Sejauh interpretabilitas berjalan, regresi logistik adalah salah satu yang paling mudah untuk ditafsirkan. Mengapa instance ini melewati ambang batas? Karena contoh itu memiliki fitur positif khusus ini dan memiliki koefisien yang lebih besar dalam model. Sangat jelas!
Jaringan saraf adalah contoh klasik dari model yang sulit diinterpretasikan. Apa semua koefisien yang berarti ? Mereka semua menjumlahkan dengan cara-cara gila yang rumit sehingga sulit untuk mengatakan apa yang sebenarnya dilakukan koefisien tertentu.
Tetapi dengan semua jaring saraf yang dalam keluar, rasanya seperti hal-hal menjadi lebih jelas. Model DL (untuk mengatakan visi) tampaknya menangkap hal-hal seperti tepi atau orientasi di lapisan awal, dan di lapisan selanjutnya sepertinya beberapa node sebenarnya semantik (seperti pepatah 'sel nenek' ). Sebagai contoh:
( dari 'Learning About Deep Learning' )
Ini adalah grafik ( dari banyak di luar sana ) yang dibuat dengan tangan untuk presentasi jadi saya sangat skeptis. Tetapi itu adalah bukti bahwa seseorang berpikir itulah cara kerjanya.
Mungkin di masa lalu tidak ada lapisan yang cukup bagi kita untuk menemukan fitur yang dapat dikenali; model-model itu berhasil, tidak mudah menganalisis post-hoc yang khusus.
Tapi mungkin grafiknya hanya angan-angan. Mungkin NNs benar-benar tidak dapat dipahami.
Tetapi banyak grafik dengan node mereka berlabel gambar juga sangat menarik.
Apakah node DL benar-benar sesuai dengan fitur?
Jawaban:
Interpretasi model yang mendalam masih menantang.
Posting Anda hanya menyebutkan CNN untuk aplikasi penglihatan komputer, tetapi jaringan umpan balik (dalam atau dangkal) dan jaringan berulang tetap sulit dipahami.
Bahkan dalam kasus CNN yang memiliki struktur "pendeteksi fitur" yang jelas, seperti tepi dan orientasi tambalan piksel, tidak sepenuhnya jelas bagaimana fitur tingkat rendah ini dikumpulkan ke atas, atau apa, tepatnya, yang terjadi ketika fitur penglihatan ini dikumpulkan dalam lapisan yang sepenuhnya terhubung.
Contoh permusuhan menunjukkan bagaimana interpretasi jaringan itu sulit. Contoh permusuhan memiliki beberapa modifikasi kecil yang dibuat untuk itu, tetapi menghasilkan perubahan dramatis dalam keputusan yang dibuat oleh model. Dalam konteks klasifikasi gambar, sejumlah kecil noise yang ditambahkan ke gambar dapat mengubah gambar kadal untuk memiliki klasifikasi yang sangat percaya diri sebagai hewan lain, seperti anjing (spesies).
Hal ini terkait dengan interpretabilitas dalam arti bahwa ada hubungan yang kuat dan tidak dapat diprediksi antara jumlah kebisingan yang kecil dengan perubahan keputusan klasifikasi yang besar. Berpikir tentang bagaimana jaringan ini beroperasi, masuk akal: perhitungan pada lapisan sebelumnya disebarkan ke depan, sehingga sejumlah kesalahan - kesalahan kecil yang tidak penting bagi manusia - diperbesar dan diakumulasikan karena semakin banyak perhitungan dilakukan dengan menggunakan input "rusak".
Di sisi lain, keberadaan contoh-contoh permusuhan menunjukkan bahwa interpretasi dari setiap simpul sebagai fitur atau kelas tertentu sulit, karena fakta bahwa simpul yang diaktifkan mungkin tidak ada hubungannya dengan konten aktual dari gambar asli, dan bahwa hubungan ini tidak benar-benar dapat diprediksi dalam hal gambar asli. Tetapi dalam contoh gambar di bawah ini, tidak ada manusia yang tertipu tentang konten gambar: Anda tidak akan membingungkan tiang bendera untuk seekor anjing. Bagaimana kita dapat menginterpretasikan keputusan ini, baik secara agregat (pola kebisingan kecil "mentransmisikan" kadal menjadi anjing, atau tiang bendera menjadi anjing) atau dalam potongan yang lebih kecil (bahwa beberapa fitur detektor lebih sensitif terhadap pola kebisingan daripada gambar yang sebenarnya. konten)?
HAAM adalah metode baru yang menjanjikan untuk menghasilkan gambar permusuhan menggunakan fungsi harmonik. ("Harmonic Adversarial Attack Method" Wen Heng, Shuchang Zhou, Tingting Jiang.) Gambar yang dihasilkan menggunakan metode ini dapat digunakan untuk meniru efek pencahayaan / bayangan dan umumnya lebih sulit bagi manusia untuk dideteksi karena telah diubah.
Sebagai contoh, lihat gambar ini, diambil dari " Gangguan permusuhan universal ", oleh Seyed-Mohsen Moosavi-Dezfooli, Alhussein Fawzi, Omar Fawzi, dan Pascal Frossard. Saya memilih gambar ini hanya karena itu adalah salah satu gambar permusuhan pertama yang saya temui. Gambar ini menetapkan bahwa pola noise tertentu memiliki efek aneh pada keputusan klasifikasi gambar, khususnya bahwa Anda dapat membuat sedikit modifikasi pada gambar input dan membuat pengklasifikasi berpikir hasilnya adalah seekor anjing. Perhatikan bahwa gambar asli yang mendasarinya masih jelas: dalam semua kasus, manusia tidak akan bingung untuk berpikir bahwa salah satu gambar bukan-anjing adalah anjing.
Berikut adalah contoh kedua dari makalah yang lebih kanonik, " MENJELAJAHI DAN Memanfaatkan CONTOH ADVERSARIAL " oleh Ian J. Goodfellow, Jonathon Shlens & Christian Szegedy. Kebisingan yang ditambahkan benar-benar tidak dapat dibedakan dalam gambar yang dihasilkan, namun hasilnya sangat percaya diri diklasifikasikan sebagai hasil yang salah, owa bukan panda. Dalam hal ini, setidaknya, setidaknya ada kesamaan yang lewat antara kedua kelas, karena owa dan panda setidaknya agak mirip secara biologis dan estetis dalam arti luas.
Contoh ketiga ini diambil dari " Deteksi Contoh-Contoh Adversarial yang Deneralisasikan Berdasarkan Bi-model Decision Mismatch " oleh João Monteiro, Zahid Akhtar dan Tiago H. Falk. Ini menetapkan bahwa pola kebisingan dapat dibedakan untuk manusia tetapi masih membingungkan pengelompokan.
Sebagai referensi, seekor mudpuppy adalah binatang berwarna gelap dengan empat anggota badan dan ekor, sehingga tidak memiliki banyak kemiripan dengan ikan mas.
Jadi, daripada memiliki 'fitur detektor' di tingkat yang lebih tinggi, node hanya mewakili koordinat dalam ruang fitur yang digunakan jaringan untuk memodelkan data.
sumber
Lapisan tidak memetakan secara berturut-turut fitur yang lebih abstrak sebersih yang kita inginkan. Cara yang baik untuk melihat ini adalah membandingkan dua arsitektur yang sangat populer.
VGG16 terdiri dari banyak lapisan konvolusional yang ditumpuk satu sama lain dengan lapisan penyatuan sesekali - arsitektur yang sangat tradisional.
Sejak itu, orang-orang telah pindah ke merancang arsitektur residu, di mana setiap lapisan terhubung tidak hanya ke lapisan sebelumnya, tetapi juga satu (atau mungkin lebih) lapisan lebih jauh ke bawah dalam model. ResNet adalah salah satu yang pertama melakukan ini, dan memiliki sekitar 100 lapisan, tergantung pada varian yang Anda gunakan.
Sementara VGG16 dan jaringan serupa memiliki lapisan bertindak dalam cara yang lebih atau kurang dapat ditafsirkan - mempelajari fitur tingkat yang lebih tinggi dan lebih tinggi, ResNets tidak melakukan ini. Sebagai gantinya, orang-orang telah mengusulkan agar mereka terus menyempurnakan fitur untuk membuatnya lebih akurat atau bahwa mereka hanya sekelompok jaringan dangkal yang menyamar , tidak ada yang cocok dengan "pandangan tradisional" pada apa yang dipelajari oleh model dalam.
Sementara ResNet dan arsitektur serupa dengan mudah mengungguli VGG dalam klasifikasi gambar dan deteksi objek, tampaknya ada beberapa aplikasi yang hirarki fitur bottom-up sederhana VGG sangat penting. Lihat di sini untuk diskusi yang baik.
Jadi mengingat arsitektur yang lebih modern tampaknya tidak cocok dengan gambar itu lagi, saya akan mengatakan bahwa kita tidak bisa mengatakan CNN belum bisa ditafsirkan.
sumber
Subjek disertasi Ph.D saya adalah untuk mengungkapkan sifat-sifat kotak hitam dari jaringan saraf, khususnya jaringan umpan-maju saraf, dengan satu atau dua lapisan tersembunyi.
Saya akan menerima tantangan untuk menjelaskan kepada semua orang apa arti bobot dan istilah bias, dalam jaringan saraf umpan maju satu lapis. Dua perspektif yang berbeda akan dibahas: yang parametrik dan yang probabilistik.
Berikut ini, saya berasumsi bahwa nilai input yang disediakan untuk setiap neuron input semuanya telah dinormalisasi ke interval (0,1), dengan penskalaan linear ( ), di mana keduanya koefisien dan dipilih per variabel input, sehingga . Saya membuat perbedaan antara variabel bilangan real, dan variabel enumerasi (dengan variabel boolean sebagai variabel enumerasi case khusus):xinput=α⋅x+β α β xinput∈(0,1)
Representasi data input seperti itu diperlukan untuk dapat menginterpretasikan ukuran (nilai absolut) dari bobot pada lapisan input.
Arti parametrik:
Memikirkan kembali dari neuron keluaran : neuron tersembunyi mana yang memiliki nilai bobot absolut tertinggi, pada koneksi mereka ke neuron keluaran? Seberapa sering aktivasi setiap simpul tersembunyi mendekati (dengan asumsi fungsi aktivasi sigmoid). Saya berbicara tentang frekuensi, diukur dari set pelatihan. Tepatnya: berapakah frekuensi simpul tersembunyi dan , dengan bobot besar untuk variabel masukan dan , bahwa simpul tersembunyi dan ini mendekati1 i l t s i l 1 ? Setiap node tersembunyi menyebarkan rata-rata tertimbang dari nilai inputnya, menurut definisi. Variabel input mana yang terutama dipromosikan oleh setiap node tersembunyi - atau menghambat? Juga menjelaskan banyak, perbedaan absolut dalam bobot antara bobot yang menyebar dari simpul tersembunyi ke dua simpul keluaran dan .Δj,k=∣wi,j−wi,k∣ i j k
Node tersembunyi yang lebih penting adalah untuk simpul keluaran (berbicara dalam frekuensi, selama set pelatihan), manakah 'bobot masukan kali frekuensi masukan' yang paling penting? Kemudian kita menutup pada pentingnya parameter jaringan saraf umpan-maju.
Interpretasi probabilitas:
Perspektif probabilistik berarti menganggap jaringan syaraf klasifikasi sebagai pengklasifikasi Bayes (pengklasifikasi optimal, dengan tingkat kesalahan terendah terendah yang ditentukan secara teoritis). Variabel input mana yang memiliki pengaruh pada hasil jaringan saraf - dan seberapa sering? Anggap ini sebagai analisis sensitivitas probabilistik. Seberapa sering dapat memvariasikan satu variabel input menyebabkan klasifikasi yang berbeda? Seberapa sering input neuron memiliki pengaruh potensial pada hasil klasifikasi mana yang paling mungkin, menyiratkan bahwa neuron output yang sesuai mencapai nilai tertinggi?xinput
Kasus individu - pola
Ketika memvariasikan input neuron bernomor dapat menyebabkan klasifikasi yang paling mungkin berubah, kita mengatakan bahwa variabel ini memiliki pengaruh potensial . Ketika memvariasikan hasil variabel enumerasi (mengubah hari kerja dari Senin menjadi Selasa , atau hari kerja lainnya ), dan perubahan hasil yang paling mungkin, maka variabel yang disebutkan memiliki pengaruh potensial pada hasil klasifikasi.xinput [1,0,0,0,0,0,0] [0,1,0,0,0,0,0]
Ketika kita sekarang mempertimbangkan kemungkinan perubahan itu, maka kita membicarakan pengaruh yang diharapkan . Berapakah probabilitas mengamati variabel input yang berubah sedemikian rupa sehingga kasus input berubah hasil, mengingat nilai-nilai semua input lainnya ? Pengaruh yang diharapkan mengacu pada nilai yang diharapkan , dari , yaitu . Di sini adalah vektor dari semua nilai input, kecuali dari input . Perlu diingat bahwa variabel yang disebutkan diwakili oleh sejumlah neuron input. Kemungkinan hasil ini di sini dianggap sebagai satu variabel. x aku n p u t E ( x aku n p u t ∣ x - aku n p u t ) x - aku n p u t x aku n p u txinput xinput E(xinput∣x−input) x−input xinput
Miring dalam - dan arti dari parameter NN
Ketika diterapkan pada visi komputer, jaringan saraf telah menunjukkan kemajuan luar biasa dalam dekade terakhir. Jaringan saraf konvolusional yang diperkenalkan oleh LeCunn pada tahun 1989 ternyata memiliki kinerja sangat baik dalam hal pengenalan gambar. Telah dilaporkan bahwa mereka dapat mengungguli sebagian besar pendekatan pengenalan berbasis komputer lainnya.
Properti muncul yang menarik muncul ketika jaringan saraf convolutional dilatih untuk pengenalan objek. Lapisan pertama dari node tersembunyi mewakili detektor fitur tingkat rendah, mirip dengan operator ruang-skala T. Lindeberg, Deteksi Fitur dengan Pemilihan Skala Otomatis, 1998 . Operator ruang-skala ini mendeteksi
dan beberapa fitur gambar dasar lainnya.
Yang lebih menarik adalah fakta bahwa neuron perseptual pada otak mamalia telah terbukti menyerupai cara kerja ini pada langkah pertama pemrosesan citra (biologis). Jadi dengan CNN, komunitas ilmiah mendekati apa yang membuat persepsi manusia begitu fenomenal. Ini membuatnya sangat berharga untuk melanjutkan penelitian ini lebih lanjut.
sumber