Hasil teoritis di balik Jaringan Syaraf Tiruan

13

Saya baru saja membahas Jaringan Syaraf Tiruan pada kursus Machine Learning Coursera dan saya ingin tahu lebih banyak teori di baliknya. Saya menemukan motivasi bahwa mereka meniru biologi agak tidak memuaskan.

Pada permukaan tampak bahwa pada setiap level kita mengganti kovariat dengan kombinasi linier mereka. Dengan melakukannya berulang kali, kami memungkinkan pemasangan model non-linear. Ini menimbulkan pertanyaan: mengapa jaringan saraf kadang-kadang lebih disukai daripada hanya pas model non-linear.

Secara lebih umum, saya ingin tahu bagaimana Jaringan Syaraf Tiruan cocok dalam kerangka Bayesian inferensi yang dijelaskan secara rinci dalam buku ET Jaynes "Teori Probabilitas: Logika Ilmu Pengetahuan". Atau, secara sederhana, mengapa jaringan syaraf tiruan bekerja ketika mereka bekerja? Dan, tentu saja, fakta bahwa mereka membuat prediksi yang sukses menyiratkan bahwa mereka mengikuti kerangka kerja yang disebutkan di atas.

Tom Artiom Fiodorov
sumber

Jawaban:

16

Berikut adalah kutipan dari " A Backward Look to the Future ", oleh ET Jaynes.

Adhockeries Baru

Dalam beberapa tahun terakhir, kebiasaan ortodoks dalam menciptakan perangkat intuitif alih-alih menarik setiap prinsip teoretis yang terhubung telah diperluas ke masalah baru dengan cara yang pada awalnya membuat beberapa bidang ilmu baru telah diciptakan. Namun mereka semua khawatir dengan alasan dari informasi yang tidak lengkap; dan kami percaya bahwa kami memiliki teorema yang menetapkan bahwa teori probabilitas sebagai logika adalah cara umum untuk menangani semua masalah tersebut. Kami mencatat tiga contoh.

Set Fuzzy - sangat jelas, bagi siapa pun yang terlatih dalam inferensi Bayesian - perkiraan kasar untuk probabilitas sebelumnya Bayesian. Mereka diciptakan hanya karena praktisi mereka tetap berpikir tentang kemungkinan dalam hal "keacakan" yang seharusnya ada di Alam tetapi tidak pernah didefinisikan dengan baik; sehingga disimpulkan bahwa teori probabilitas tidak berlaku untuk masalah seperti itu. Segera setelah seseorang mengenali probabilitas sebagai cara umum untuk menentukan informasi yang tidak lengkap , alasan untuk memperkenalkan Set Fuzzy menghilang.

Demikian juga, banyak Artificial Intelligence (AI) adalah kumpulan perangkat intuitif untuk alasan dari informasi yang tidak lengkap yang, seperti yang lebih tua dari statistik ortodoks, adalah perkiraan untuk metode Bayesian dan dapat digunakan dalam beberapa kelas masalah terbatas; tetapi yang menghasilkan kesimpulan tidak masuk akal ketika kita mencoba menerapkannya pada masalah di luar kelas itu. Sekali lagi, para praktisi terperangkap dalam hal ini hanya karena mereka terus berpikir tentang probabilitas sebagai mewakili "keacakan" fisik alih-alih informasi yang tidak lengkap. Dalam kesimpulan Bayesian, semua hasil itu terkandung secara otomatis - dan agak sepele - tanpa batasan untuk kelas masalah yang terbatas.

Perkembangan baru yang luar biasa adalah Neural Nets, yang berarti sistem algoritma dengan properti baru yang luar biasa, seperti otak manusia, adaptif sehingga mereka dapat belajar dari kesalahan masa lalu dan mengoreksi diri secara otomatis (WOW! Ide baru yang hebat!) . Memang, kami tidak terkejut melihat bahwa Neural Nets sebenarnya sangat berguna dalam banyak aplikasi; lebih dari Set Fuzzy atau AI. Namun, jaring saraf sekarang memiliki dua kekurangan praktis; (a) Mereka menghasilkan output yang ditentukan oleh input saat ini ditambah informasi pelatihan sebelumnya. Output ini benar-benar perkiraantentang respon yang tepat, berdasarkan semua informasi yang ada, tetapi tidak memberikan indikasi keakuratannya, dan karena itu tidak memberi tahu kita seberapa dekat kita dengan tujuan (yaitu, berapa banyak pelatihan yang dibutuhkan); (B) Ketika respon nonlinier dipanggil, satu banding ke fungsi nonlinier "sigmoid" standar disimpan secara internal, yang dengan berbagai amplifikasi dan campuran linier dapat dibuat untuk memperkirakan, sampai taraf tertentu, fungsi nonlinier yang sebenarnya. (Catatan: penekanan milikku.)

Tetapi, apakah kita benar-benar perlu menunjukkan bahwa (1) Setiap prosedur yang adaptif, menurut definisi, merupakan sarana untuk memperhitungkan informasi yang tidak lengkap; (2) Teorema Bayes adalah ibu dari semua prosedur adaptif; yang umum aturan untuk memperbarui setiap negara pengetahuan ke rekening mengambil informasi baru; (3) Ketika masalah ini dirumuskan dalam istilah Bayesian, perhitungan tunggal secara otomatis menghasilkan estimasi terbaik dan keakuratannya; (4) Jika nonlinier diperlukan, teorema Bayes secara otomatis menghasilkan fungsi nonlinier yang tepat yang disebut oleh masalah, alih-alih mencoba membangun perkiraan terhadapnya dengan perangkat ad hoc lain .

Dengan kata lain, kami berpendapat bahwa ini sama sekali bukan bidang baru; hanya awal yang salah. Jika seseorang merumuskan semua masalah seperti itu dengan resep Bayesian standar, maka secara otomatis semua hasilnya bermanfaat dalam bentuk yang ditingkatkan. Kesulitan yang tampaknya dimiliki orang-orang dalam memahami ini semua adalah contoh dari kegagalan yang sama untuk mengonseptualisasikan hubungan antara matematika abstrak dan dunia nyata. Segera setelah kami menyadari bahwa probabilitas tidak menggambarkan realitas - hanya informasi kami tentang realitas - gerbang terbuka lebar untuk solusi optimal masalah penalaran dari informasi itu.

Beberapa komentar:

  1. Point (a) mengabaikan perkembangan di Bayesian Neural Networks, yang dimulai pada akhir tahun delapan puluhan dan awal sembilan puluhan (tetapi perhatikan bahwa makalah Jaynes ditulis pada tahun 1993). Lihatlah postingan ini . Juga, pertimbangkan untuk membaca tesis PhD Yarin Gal yang indah , dan menonton presentasi hebat oleh Zoubin Ghahramani ini.

  2. Saya tidak melihat bagaimana poin (b) bisa menjadi "kekurangan". Sebenarnya, inilah inti mengapa jaring saraf dapat mendekati fungsi kelas besar dengan baik. Perhatikan bahwa arsitektur sukses baru-baru ini bergerak dari sigmoid ke aktivasi ReLU di lapisan dalam, lebih menyukai "kedalaman" daripada "luas". Teorema perkiraan baru-baru ini terbukti untuk jaring ReLU.

Zen
sumber
2
+1 Tidak ada yang lebih memuaskan daripada mengetahui dengan pasti di mana orang dapat menemukan referensi yang tepat untuk jawaban.
Sycorax berkata Reinstate Monica
5
Mengingat bahwa perangkat ad hoc menunjukkan bahwa mereka bekerja dalam banyak situasi, itu akan menjadi produktif untuk menunjukkan (atau menyangkal) bahwa mereka cukup masuk ke dalam kerangka Bayesian dan, karenanya, mendapatkan pemahaman yang lebih dalam tentang adhockeries, yang secara luas digunakan ini hari. Ini adalah jenis pekerjaan yang saya minati.
Tom Artiom Fiodorov
1

Pertama-tama kita tidak menumpuk fungsi linear satu sama lain untuk mendapatkan fungsi nonlinear. Ada alasan yang jelas mengapa NNs mungkin tidak pernah bekerja seperti itu: Menumpuk fungsi linear satu sama lain akan menghasilkan lagi fungsi linier.

Apa yang membuat NNs nonlinear adalah fungsi aktivasi yang muncul di belakang fungsi linear! Namun, pada prinsipnya Anda benar: Kami hanya menumpuk banyak regresi logistik (bukan yang linier sekalipun!) Satu sama lain dan ... tadaa: kami mendapatkan sesuatu yang baik dari itu ... apakah itu adil? Ternyata (dari sudut pandang teoretis) sebenarnya adil. Lebih buruk lagi: Menggunakan Teorema Stone-Weierstrass yang terkenal dan terkenal, kami hanya membuktikan bahwa jaringan saraf dengan hanya satu lapisan tersembunyi dan tidak ada fungsi output pada simpul akhir sudah cukup untuk mendekati setiap fungsi kontinu (dan percaya padaku, fungsi kontinu bisa jelek binatang buas, lihat "tangga setan": https://en.wikipedia.org/wiki/Cantor_distribution[a,b]x↦=b+a1ϕ1(x)+...+alϕl(x)l

Mengapa kita menggunakan NN dalam? Alasannya adalah bahwa teorema SW di atas hanya menjamin bahwa ada ukuran lapisan yang cukup besar sehingga kita dapat mendekati fungsi target (semoga kontinu). Namun, ukuran lapisan yang dibutuhkan mungkin sangat besar sehingga tidak ada komputer yang bisa menangani matriks berat ukuran itu. NNs dengan lapisan yang lebih tersembunyi tampaknya merupakan kompromi yang baik antara 'akurasi' dan komputabilitas. Saya tidak tahu adanya hasil teoritis yang menunjuk ke arah 'berapa banyak' expresiveness NNs tumbuh ketika menempatkan lebih banyak lapisan tersembunyi dibandingkan dengan hanya meningkatkan ukuran lapisan tersembunyi tunggal tetapi mungkin ada beberapa sumber daya di web ...

Bisakah kita benar-benar memahami NN dalam? Contoh pertanyaan: Mengapa NN memprediksikan kasus ini sebagai TRUE sementara itu memprediksi NALSE yang lain yang serupa? Mengapa tepatnya ini menilai pelanggan ini lebih berharga daripada yang lain? Saya tidak begitu percaya. Muncul dengan kerumitan model yang Anda tidak dapat menjelaskannya dengan cukup baik lagi ... Saya hanya mendengar bahwa ini masih merupakan area penelitian aktif tetapi saya tidak tahu sumber daya apa pun ...

Apa yang membuat NN begitu unik di antara semua model? Alasan sebenarnya mengapa kami menggunakan NN begitu banyak hari ini adalah karena dua alasan berikut:

  1. Mereka datang dengan properti 'streaming' alami.
  2. Kita bisa germo mereka ke max di banyak arah.

TfTTT, dll) berdasarkan pada properti ini. Orang-orang telah mencoba menanamkan properti streaming ini ke model lain (misalnya Gradient Boosting), tetapi itu tidak terjadi secara alami dan tidak semurah komputasi seperti pada pengaturan NN.

Maksud saya, orang-orang telah melatih NNs untuk melakukan hal-hal aneh tetapi pada prinsipnya mereka hanya menggunakan kerangka kerja yang sama: menumpuk fungsi-fungsi yang halus satu sama lain dan kemudian membiarkan komputer (yaitu PyTorch / Tensorflow) melakukan matematika kotor untuk Anda suka komputasi turunan dari fungsi kerugian wrt the weight. Salah satu contohnya adalah tulisan inidi mana orang telah menggunakan pendekatan RL dan juga merambah arsitektur NN untuk mempelajari bahasa yang kompleks dari zat-zat kimia dengan mengajarkannya bagaimana cara beroperasi pada tumpukan memori (!). Coba lakukan itu dengan meningkatkan gradien ;-) Alasan mengapa mereka harus melakukan itu adalah bahwa bahasa bahan kimia setidaknya sama 'sulit dipelajari' dengan bahasa braket (yaitu setiap braket pembuka memiliki penutup satu di kemudian hari dalam kata ) karena bahasa SMILES yang digunakan orang untuk menggambarkan molekul mengandung simbol '(' dan ')'. Dari ilmu komputer teoretis (hierarki Chomsky) orang tahu bahwa seseorang tidak dapat menggambarkan bahasa ini dengan automata biasa tetapi orang membutuhkan pushata automata (yaitu automata dengan memori tumpukan). Itulah motivasi mereka (saya kira) untuk mengajarkan hal aneh ini kepada NN.

Fabian Werner
sumber
-1

"Mengapa itu bekerja ketika itu bekerja?"

n

Jadi, semua pembelajaran mesin juga bersifat ad hoc.

Machine Learning mirip dengan alkimia: ada banyak resep yang membingungkan, Anda menerapkannya, dan Anda mungkin mendapatkan emas. Jika tidak, terapkan saja resep lain.

Tidak ada yang mengajukan pertanyaan yang Anda ajukan, setidaknya tidak dalam publikasi yang saya tahu.

Di atas ini, ada teori pembelajaran statistik. Teori belajar statistik mengasumsikan bahwa ukuran set pelatihan mencapai tak terhingga. Sebagian besar hasil yang saya tahu memiliki bentuk: "dalam kondisi tertentu, jika Anda memiliki satu set pelatihan yang cukup besar, Anda bisa mendapatkan hasil sebaik mungkin menggunakan prosedur ini". Perkiraan apa yang "cukup besar" berada di luar imajinasi.

Tentu saja, masalahnya adalah, ukuran set pelatihan tidak ke mana-mana, apalagi hingga tak terbatas.

Jadi, saya pikir, ini adalah saat yang tepat untuk (1) mengajukan pertanyaan ini, (2) untuk mengembangkan alat matematika untuk menjawab pertanyaan tentang semua algoritma pembelajaran mesin yang mungkin dan (3) menjawab pertanyaan ini.

Marina
sumber