Saya bertanya-tanya, mengapa begitu penting memiliki pembelajaran mesin berprinsip / teoretis? Dari sudut pandang pribadi sebagai manusia, saya bisa mengerti mengapa Machine Learning berprinsip akan menjadi penting:
- manusia suka memahami apa yang mereka lakukan, kami menemukan keindahan dan kepuasan untuk memahami.
- dari sudut pandang teori, matematika itu menyenangkan
- ketika ada prinsip yang memandu desain hal-hal, ada sedikit waktu yang dihabiskan untuk menebak acak, coba-coba aneh. Jika kita memahami, katakanlah, bagaimana jaring saraf benar-benar bekerja, mungkin kita bisa menghabiskan waktu yang jauh lebih baik merancang mereka daripada sejumlah besar percobaan dan kesalahan yang masuk ke dalamnya sekarang.
- baru-baru ini, jika prinsip-prinsipnya jelas dan teori juga jelas, maka harus ada (semoga) lebih banyak transparansi ke sistem. Ini bagus karena jika kita memahami sistem apa yang bekerja, maka risiko AI yang banyak orang hype tentang segera hilang.
- prinsip-prinsip tampaknya menjadi cara ringkas untuk merangkum struktur-struktur penting yang mungkin dimiliki dunia dan kapan harus menggunakan alat daripada yang lain.
Namun, apakah alasan-alasan ini cukup kuat untuk membenarkan studi teoritis yang intens tentang pembelajaran mesin? Salah satu kritik terbesar terhadap teori adalah bahwa karena begitu sulit untuk dilakukan, mereka biasanya akhirnya mempelajari beberapa kasus yang sangat terbatas atau asumsi yang harus dibawa pada dasarnya membuat hasil tidak berguna. Saya pikir saya pernah mendengar ini pada suatu pembicaraan di MIT oleh pencipta Tor. Bahwa beberapa kritik terhadap Tor yang ia dengar adalah argumen teoretis tetapi pada dasarnya, orang tidak pernah dapat membuktikan hal-hal tentang skenario nyata kehidupan nyata karena mereka begitu rumit.
Di era baru ini dengan begitu banyak daya komputasi dan data, kita dapat menguji model kita dengan set data nyata dan set tes. Kita dapat melihat apakah sesuatu bekerja dengan menggunakan empirisme. Jika kita bisa mendapatkan sebaliknya mencapai AGI atau sistem yang bekerja dengan teknik dan empirisme, apakah masih layak untuk mengejar pembenaran yang berprinsip dan teoretis untuk pembelajaran mesin, terutama ketika batasan kuantitatif sangat sulit untuk dicapai, tetapi intuisi dan jawaban kualitatif jauh lebih mudah untuk dilakukan. capai dengan pendekatan berbasis data? Pendekatan ini tidak tersedia dalam statistik klasik, itulah sebabnya saya pikir teori sangat penting pada masa itu, karena matematika adalah satu-satunya cara kita dapat memastikan segala sesuatunya benar atau bahwa mereka benar-benar bekerja seperti yang kita pikirkan.
Secara pribadi saya selalu menyukai dan menganggap teori dan pendekatan berprinsip itu penting. Tetapi dengan kekuatan hanya bisa mencoba hal-hal dengan data nyata dan daya komputasi telah membuat saya bertanya-tanya apakah upaya tinggi (dan berpotensi rendahnya penghargaan) dari pengejaran teoritis masih layak dilakukan.
Apakah mengejar teori dan pembelajaran mesin benar-benar penting?
sumber
Jawaban:
Tidak ada jawaban yang tepat untuk ini tetapi, mungkin, "semuanya dalam jumlah sedang." Sementara banyak peningkatan baru-baru ini dalam pembelajaran mesin, yaitu, putus sekolah, koneksi residual, koneksi padat, normalisasi batch, tidak berakar pada teori yang sangat mendalam (sebagian besar dapat dibenarkan dalam beberapa paragraf), saya pikir pada akhirnya ada hambatan untuk berapa banyak hasil seperti itu dapat membuat dampak besar. Pada titik tertentu Anda harus duduk dan menyusun beberapa teori tambahan untuk membuat lompatan besar berikutnya. Selain itu, teori dapat memandu intuisi karena dapat membuktikan kualitas atau keterbatasan model dalam keraguan yang wajar. Ini sangat penting untuk menentukan jika mengatakan, SGD lebih baik daripada Momentum untuk masalah tertentu. Itulah hal yang menyenangkan tentang teori: teori memaksa Anda untuk mengabstraksi masalah yang Anda selesaikan,
Contoh besar yang muncul dalam pikiran adalah dukungan mesin vektor. Mereka awalnya dirancang oleh Vapnik dan Chervonenkis pada awal 60-an, tetapi benar-benar lepas landas di awal 90-an ketika Vapnik dan yang lainnya menyadari bahwa Anda dapat melakukan SVM nonlinear menggunakan Kernel Trick. Vapnik dan Chervonenkis juga menyusun teori di balik dimensi VC, yang merupakan upaya untuk menghasilkan ukuran kompleksitas untuk pembelajaran mesin. Saya tidak bisa memikirkan aplikasi praktis dari dimensi VC, tapi saya pikir ide SVM kemungkinan dipengaruhi oleh pekerjaan mereka dalam hal ini. Trik Kernel sendiri berasal dari abstrak-omong kosong matematika tentang ruang Hilbert. Mungkin sulit untuk mengatakan bahwa perlu mengetahui omong kosong abstrak ini untuk menghasilkan SVM, tetapi, saya pikir itu mungkin sedikit membantu, terutama karena ada banyak ahli matematika yang bersemangat tentang pembelajaran mesin.
Pada subjek ResNet, ada beberapa pekerjaan yang sangat rapi baru-baru ini menunjukkan bahwa arsitektur residual benar-benar tidak perlu 100-an lapisan dalam. Bahkan beberapa karya menunjukkan bahwa koneksi residu sangat mirip dengan RNNs, misalnya Menjembatani Kesenjangan Antara Pembelajaran Residual, Jaringan Syaraf Berulang dan Visual Cortex ", Liao et al. Saya pikir ini pasti membuatnya berharga untuk melihat lebih dalam karena itu menunjukkan bahwa secara teoritis, ResNet dengan banyak lapisan sebenarnya sangat tidak efisien dan kembung.
Ide-ide untuk kliping gradien untuk RNN dibenarkan dengan sangat baik dalam makalah yang sekarang terkenal " Pada kesulitan pelatihan jaringan saraf berulang " - Pascanu, et. Al. Meskipun Anda mungkin dapat menemukan dengan kliping gradien tanpa semua teori, saya pikir itu berjalan jauh menuju pemahaman mengapa RNNs sangat sulit untuk melatih tanpa melakukan sesuatu yang mewah, terutama dengan menggambar analogi ke peta sistem dinamis (seperti kertas di atas tidak ).
Ada banyak kegembiraan tentang metode Entropy Stochastic Gradient Descent . Ini berasal dari dinamika Langevin, dan banyak dari hasil teoritis berakar kuat dalam teori PDE teoretis klasik dan fisika statistik. Hasilnya menjanjikan karena mereka mengeluarkan SGD dalam cahaya baru, dalam hal bagaimana hal itu terjebak dalam fluktuasi lokal dari fungsi kerugian, dan bagaimana seseorang dapat menghaluskan fungsi kerugian secara lokal untuk membuat SGD menjadi jauh lebih efisien. Ini berjalan jauh menuju pemahaman kapan SGD berguna dan ketika berperilaku buruk. Ini bukan sesuatu yang dapat Anda peroleh secara empiris dengan mencoba SGD pada berbagai jenis model.
Dalam karya yang menarik tentang jaringan saraf , penulis merangkum bahwa jaringan saraf sensitif terhadap contoh permusuhan (didefinisikan sebagai dihitung, gangguan gangguan gambar) karena konstanta Lipchitz yang tinggi antara lapisan. Ini masih merupakan bidang penelitian aktif dan hanya dapat dipahami lebih baik melalui derivasi yang lebih teoretis.
Ada juga contoh Analisis Data Topologis , di mana setidaknya satu perusahaan ( Ayasdi ) telah terbentuk. Ini adalah contoh yang sangat menarik karena teknik yang digunakan sangat spesifik dan abstrak sehingga bahkan mulai hari ini, masih akan membutuhkan banyak waktu untuk melihat di mana ide-ide dari teori ini berakhir. Pemahaman saya adalah bahwa kompleksitas komputasi dari algoritma yang terlibat cenderung cukup tinggi (tapi sekali lagi itu sama tinggi untuk jaringan saraf bahkan 20 tahun yang lalu).
sumber
Jawaban atas pertanyaan ini sebenarnya sangat sederhana. Dengan justifikasi teoretis di balik model pembelajaran mesin, setidaknya kita dapat membuktikan bahwa ketika beberapa kondisi yang kurang lebih realistis dipenuhi, ada beberapa jaminan optimalitas untuk solusi. Tanpa itu, kita tidak memiliki apa jaminan apapun. Tentu, Anda dapat mengatakan "mari kita periksa apa yang berhasil dan menggunakannya untuk masalah tertentu", tapi ini tidak layak karena ada yang tak terbatas beberapa cara bagaimana Anda bisa memecahkan masalah pembelajaran mesin.
Katakan bahwa Anda ingin memprediksi beberapa , diberikan beberapa . Bagaimana Anda tahu bahwa bukanlah cara yang optimal untuk menyelesaikannya? Bagaimana dengan ? Atau, ? Mungkin hanya mengembalikan sebagai prediksi Anda? Atau jika menggunakan dan sebaliknya mengembalikan ? Tentu, semua saran itu terdengar tidak masuk akal, tetapi bagaimana Anda bisa yakin, tanpa teori, bahwa salah satu dari mereka tidak akan optimal? Dengan jumlah solusi yang tak terbatas, bahkan masalah yang paling sederhana pun tidak dapat diselesaikan. Teori membatasi "ruang pencarian" Anda dari model yang layak untuk beberapa kelas masalah (Anda tahu model mana yang layak dipertimbangkan dan yang tidak).X X + 42 X + 42,5 √Y X X+42 X+42.5 42XX+420X−42−−−−−−√ 42 X X+42 0
sumber
Hanya dengan melihat pertanyaan: Apakah mengejar pembelajaran mesin secara teoretis dan berprinsip benar-benar penting?
Definisikan apa yang Anda maksud dengan "penting". Dari sudut pandang filosofis, ini merupakan perbedaan mendasar jika Anda ingin menggambarkan sesuatu atau memahami sesuatu. Dalam jawaban yang agak kasar itu adalah perbedaan antara menjadi ilmiah atau sesuatu yang lain. Bagian praktisnya tidak ada hubungannya dengan pertanyaan mendasar. Jika ada sesuatu yang terlalu sulit untuk dibuktikan, atau bahkan tidak mungkin untuk membuktikannya dengan sendirinya adalah penemuan yang penting. (Masukkan Goedel et al.) Tetapi ini tidak berarti itu tidak relevan. Paling tidak mungkin tampak tidak relevan dari sudut pandang pragmatis. Tetapi setidaknya harus diakui sebagai sesuatu yang sangat penting dan bernilai.
Pertimbangkan analogi: kedokteran secara keseluruhan (dan dari masa lalu) tidak ilmiah. Dalam hal-hal tertentu sebenarnya tidak pernah bisa. Ini adalah disiplin yang sepenuhnya diatur oleh hasilnya. Dalam kebanyakan kasus tidak ada yang seperti "kebenaran". Tetapi ternyata, beberapa bagian sebenarnya bisa ilmiah - dan di sinilah sebagian besar kemajuan yang direncanakan terjadi.
Penjelasan lain yang sangat singkat mungkin: tanpa teori Anda dapat menghasilkan banyak uang. Jika itu benar-benar berguna untuk "kebaikan yang lebih besar", maka Anda bahkan mungkin mendapatkan hadiah Nobel untuk itu. Tetapi Anda tidak akan pernah mendapatkan medali Fields.
sumber
Manusia telah mampu membangun kapal, gerbong dan bangunan selama berabad-abad tanpa hukum fisika. Tetapi sejak ilmu pengetahuan modern, kami telah mampu membawa teknologi itu ke tingkat yang sama sekali baru. Teori yang terbukti memungkinkan untuk melakukan perbaikan secara berprinsip. Kita tidak akan pernah sampai di bulan atau memiliki komputer tanpa teori matematika tentang materi dan perhitungan.
Pembelajaran mesin hanyalah bidang ilmu pengetahuan dan teknik seperti yang lainnya. Pendekatan prinsip untuk pembelajaran mesin telah memberi kami mesin kernel, pembelajaran terstruktur, dan metode ensemble (meningkatkan, hutan acak).
sumber
Ini contoh sederhana dari karya saya sendiri.
Saya cocok banyak jaring saraf untuk hasil yang berkelanjutan. Seseorang menentukan bobot dengan backpropagation. Akhirnya, itu akan bertemu.
Sekarang, fungsi aktivasi lapisan atas adalah identitas, dan kerugian saya adalah kesalahan kuadrat. Karena teori , saya tahu bahwa vektor bobot level-atas yang meminimalkan kerugian kesalahan kuadrat adalah baik mana adalah aktivasi di tingkat atas dan adalah hasilnya. Ketika saya melakukan hubung singkat backprop dengan menggunakan solusi bentuk tertutup untuk bobot tingkat atas, saya hanya perlu backprop untuk mengoptimalkan bobot tingkat bawah. Ay
Jaring saya menyatu lebih cepat .
Terima kasih, teori.
sumber
Empirisme vs Teori
Kau menulis:
Saya pikir ini menunjukkan kesenjangan utama antara dua pandangan yang bisa kita sebut empiris dan teoretis .
Dari sudut pandang empiris, seperti yang Anda gambarkan juga, teorema tidak berguna karena mereka tidak pernah cukup kompleks untuk memodelkan dunia nyata. Mereka berbicara tentang skenario ideal sederhana yang tidak berlaku di dunia nyata. Jadi apa gunanya melakukan teori.
Namun dari sudut pandang teori, yang terjadi adalah sebaliknya. Apa yang dapat diajarkan empirisme kepada kita di luar "Saya menjalankan metode ini pada dataset ini dan itu lebih baik daripada menjalankan metode lain pada dataset yang sama ini". Ini berguna untuk satu contoh tetapi tidak banyak bicara tentang masalahnya.
Apa yang dilakukan teori adalah memberikan beberapa jaminan. Hal ini juga memungkinkan kita untuk mempelajari skenario yang disederhanakan dengan tepat sehingga kita dapat mulai memahami apa yang sedang terjadi.
Contoh
Bayangkan sebuah contoh aktual: Anda ingin melihat bagaimana konsep melayang (ketika data berubah seiring waktu) memengaruhi kemampuan Anda untuk belajar. Bagaimana pendekatan seorang empiris murni terhadap pertanyaan ini? Yang bisa dia lakukan adalah mulai menerapkan metode yang berbeda dan memikirkan trik yang bisa dia lakukan. Seluruh prosedur mungkin mirip dengan ini:
Apa yang kita miliki di sini adalah hasil yang cukup tepat pada beberapa set data. Mungkin data itu sehingga memperbarui algoritma pembelajaran berdasarkan pengamatan 200 hari terakhir memberikan akurasi tertinggi. Tetapi apakah hal yang sama berlaku untuk data lain? Seberapa andalkah perkiraan 200 hari ini? Simulasi membantu - tetapi mereka tidak mencerminkan dunia nyata - teori masalah yang sama miliki.
Sekarang bayangkan hal yang sama dari sudut pandang teoritis:
Sekarang skenario ini lebih jelas - kami dapat mengisolasi masalah dengan memperbaiki semua detail. Kami tahu kesalahan rata-rata pengklasifikasi kami. Mungkin dapat memperkirakan jumlah hari yang diperlukan untuk mendeteksi perubahan yang telah terjadi. Tetapkan parameter ini bergantung pada (seperti mungkin ukuran perubahan). Dan sekarang berdasarkan pada sesuatu menghasilkan solusi praktis. Tetapi yang paling penting: hasil ini (jika dihitung dengan benar) tidak berubah. Itu ada di sini selamanya dan siapa pun dapat belajar darinya.
Seperti salah satu bapak pembelajaran mesin modern - Jürgen Schmidhuber suka mengatakan:
Pelajaran dari bidang lain
Juga secara singkat ingin menyebutkan beberapa persamaan dengan fisika. Saya pikir mereka juga pernah mengalami dilema ini. Fisikawan sedang mempelajari benda tanpa gesekan dari massa tak terbatas bergerak di dalam ruang tak terbatas. Sekilas apa yang bisa kita katakan tentang kenyataan di mana kita ingin tahu bagaimana kepingan salju bergerak dalam angin. Tapi rasanya teori membawa mereka cukup jauh.
sumber
Anda menyebutkan beberapa alasan, di mana kemampuan untuk menafsirkan hasil ML adalah yang paling penting, menurut pendapat saya. Katakanlah penjaga properti yang dikendalikan AI memutuskan untuk menembak anjing tetangga. Penting untuk memahami mengapa hal itu terjadi. Jika tidak mencegah hal ini terjadi di masa depan, maka setidaknya untuk memahami siapa yang bertanggung jawab dan siapa yang akan membayar kompensasi pemilik.
Namun, bagi saya alasan yang paling penting adalah memahami prinsip-prinsip yang menjadi dasar algoritma memungkinkan untuk memahami keterbatasannya dan meningkatkan kinerjanya. Pertimbangkan penggunaan jarak euclidean di ML. Dalam banyak algoritma pengelompokan Anda mulai dengan definisi jarak antar contoh, kemudian lanjutkan menemukan batas-batas antara fitur contoh yang mengelompokkan kedekatan mereka. Setelah Anda menambah jumlah fitur, jarak euclidean berhenti bekerja di beberapa titik. Anda dapat menghabiskan banyak waktu untuk membuatnya berfungsi, atau - jika Anda tahu bahwa jarak euclidean sebagai ukuran kedekatan tidak bekerja dalam batas dimensi tak terbatas - cukup beralih ke beberapa metrik jarak lain, seperti Manhattan, kemudian lanjutkan bekerja pada masalah nyata. Anda dapat menemukan banyak contoh seperti ini,
sumber
Saya pikir ini sangat sulit untuk tidak menjadi diskusi filosofis. Jawaban saya sebenarnya adalah penulisan ulang poin-poin bagus yang telah disebutkan di sini (+1 untuk semua); Saya hanya ingin menunjukkan kutipan dari Andrew Gelman yang benar-benar berbicara kepada saya sebagai seseorang yang terlatih sebagai ilmuwan komputer. Saya mendapat kesan bahwa banyak orang yang menyebut apa yang mereka lakukan pembelajaran mesin juga berasal dari ilmu komputer. Kutipan ini berasal dari ceramah yang disampaikan Gelman pada Konferensi New York R 2017 yang disebut Theoretical Statistics adalah Theory of Applied Statistics :
Teori memberi tahu Anda apa yang masuk akal dan apa yang tidak dalam kondisi tertentu. Apakah kita ingin melakukan ribuan atau puluhan ribu atau jutaan simulasi untuk mendapatkan gambaran tentang kebenaran? Apakah kita ingin melakukan perbandingan empiris pada dataset benchmark yang semakin banyak? Ini akan memakan waktu cukup lama, dan hasil kami mungkin masih rapuh. Lebih lanjut, bagaimana kita tahu bahwa perbandingan yang kita lakukan masuk akal? Bagaimana kita tahu bahwa Deep Learner baru kita dengan akurasi 99,5% benar-benar lebih baik daripada yang lama yang memiliki akurasi 99,1%? Beberapa teori akan membantu di sini.
Saya penggemar simulasi dan saya sering menggunakannya untuk memahami dunia (atau bahkan memahami teori), tetapi pembelajaran mesin teoretis adalah teori pembelajaran mesin yang diterapkan.
sumber