Jaringan saraf vs yang lainnya

15

Saya belum menemukan jawaban yang memuaskan untuk ini dari google .

Tentu saja jika data yang saya miliki adalah urutan jutaan maka pembelajaran mendalam adalah caranya.

Dan saya telah membaca bahwa ketika saya tidak memiliki data besar maka mungkin lebih baik menggunakan metode lain dalam pembelajaran mesin. Alasan yang diberikan terlalu pas. Pembelajaran mesin: yaitu melihat data, ekstraksi fitur, membuat fitur baru dari apa yang dikumpulkan dll. Hal-hal seperti menghapus variabel yang sangat berkorelasi dll. Seluruh pembelajaran mesin 9 yard.

Dan saya bertanya-tanya: mengapa jaringan saraf dengan satu lapisan tersembunyi bukanlah obat mujarab untuk masalah pembelajaran mesin? Mereka adalah penduga universal, over-fitting dapat dikelola dengan dropout, l2 regularisasi, l1 regularisasi, batch-normalisasi. Kecepatan pelatihan umumnya tidak menjadi masalah jika kita hanya memiliki 50.000 contoh pelatihan. Mereka lebih baik pada saat pengujian daripada, katakanlah, hutan acak.

Jadi mengapa tidak - bersihkan data, hubungkan nilai yang hilang seperti yang biasanya Anda lakukan, pusatkan data, standarisasi data, lemparkan ke ansambel jaringan saraf dengan satu lapisan tersembunyi dan terapkan regularisasi sampai Anda melihat tidak ada over-fitting dan kemudian latih mereka sampai akhir. Tidak ada masalah dengan ledakan gradien atau menghilang gradien karena itu hanya jaringan 2 lapis. Jika lapisan dalam diperlukan, itu berarti fitur hierarkis harus dipelajari dan kemudian algoritma pembelajaran mesin lainnya juga tidak baik. Misalnya SVM adalah jaringan saraf dengan hanya kehilangan engsel.

Contoh di mana beberapa algoritma pembelajaran mesin lainnya akan mengungguli jaringan saraf 2 lapis yang diatur dengan hati-hati (mungkin 3?) Akan dihargai. Anda dapat memberi saya tautan ke masalahnya dan saya akan melatih jaringan saraf terbaik yang saya bisa dan kita dapat melihat apakah 2 jaringan saraf berlapis atau 3 jaringan gagal dari algoritma pembelajaran mesin benchmark lainnya.

MiloMinderbinder
sumber
14
Neural Networks ADALAH algoritma pembelajaran mesin ...
Matthew Drury
6
Tentu saja ada beberapa domain di mana pembelajaran yang dalam adalah raja, seperti pengenalan gambar, tetapi di sebagian besar bidang lainnya cenderung didominasi oleh peningkatan gradien, seperti yang terlihat jelas dari melihat hasil kompetisi Kaggle.
Jake Westfall
1
@MatthewDrury - Memang benar! permintaan maaf karena buruk dalam terminologi. Saya harap pesannya disampaikan. namun mengubah pertanyaan, menjadi lebih kuat. Terima kasih telah menunjukkan
MiloMinderbinder
1
Mengenai kedalaman jaringan, pasti lihat ini: stats.stackexchange.com/questions/182734
jld

Jawaban:

31

Setiap algoritma pembelajaran mesin memiliki bias induktif yang berbeda, sehingga tidak selalu tepat untuk menggunakan jaringan saraf. Tren linear akan selalu dipelajari terbaik dengan regresi linier sederhana daripada ensemble jaringan nonlinier.

Jika Anda melihat pemenang kompetisi Kaggle sebelumnya , kecuali tantangan dengan data gambar / video, Anda akan segera menemukan bahwa jaringan saraf bukan solusi untuk semuanya. Beberapa solusi masa lalu di sini.

menerapkan regularisasi sampai Anda melihat tidak terlalu pas dan kemudian melatih mereka sampai akhir

Tidak ada jaminan bahwa Anda dapat menerapkan cukup regularisasi untuk mencegah overfitting tanpa sepenuhnya menghancurkan kapasitas jaringan untuk mempelajari apa pun. Dalam kehidupan nyata, jarang ada kemungkinan untuk menghilangkan kesenjangan tes-kereta, dan itulah sebabnya makalah masih melaporkan kinerja kereta dan tes.

mereka adalah penaksir universal

Ini hanya berlaku dalam batas jumlah unit yang tidak terbatas, yang tidak realistis.

Anda dapat memberi saya tautan ke masalah dan saya akan melatih jaringan saraf terbaik yang saya bisa dan kita dapat melihat apakah 2 jaringan saraf berlapis atau 3 jaringan gagal dari algoritma pembelajaran mesin benchmark lainnya

Contoh masalah yang saya harapkan jaringan saraf tidak akan pernah bisa menyelesaikan: Diberikan bilangan bulat, diklasifikasikan sebagai prima atau bukan-prima.

Saya percaya ini bisa diselesaikan dengan sempurna dengan algoritma sederhana yang mengulangi semua program yang valid dalam panjang yang menanjak dan menemukan program terpendek yang dengan benar mengidentifikasi bilangan prima. Memang, string regex 13 karakter ini dapat cocok dengan bilangan prima, yang tidak dapat dihitung secara komputasi untuk pencarian.


Dapatkah regularisasi mengambil model dari model yang cocok ke model yang memiliki kekuatan representasionalnya sangat dirusak oleh regularisasi? Tidak akan selalu ada sweet spot di antaranya?

Ya, ada sweet spot, tetapi biasanya jauh sebelum Anda berhenti makan berlebihan. Lihat gambar ini:

http://gluon.mxnet.io/_images/regularization-overfitting.png

Jika Anda membalik sumbu horizontal dan menandai kembali sebagai "jumlah regularisasi", itu cukup akurat - jika Anda mengatur hingga tidak ada overfitting sama sekali, kesalahan Anda akan sangat besar. "Sweet spot" terjadi ketika ada sedikit overfitting, tetapi tidak terlalu banyak.

Bagaimana 'algoritme sederhana yang diputar di atas semua program yang valid dalam panjang yang menanjak dan menemukan program terpendek yang dengan benar mengidentifikasi bilangan prima.' suatu algoritma yang belajar?

θH(θ)θ


jadi jika saya mengerti Anda membuat argumen bahwa jika data tidak substansial jaringan yang dalam tidak akan pernah mencapai akurasi validasi jaringan dangkal terbaik diberi hyperparameter terbaik untuk keduanya?

Iya. Berikut ini adalah figur yang jelek tapi mudah-mudahan efektif untuk menggambarkan poin saya. https://i.imgur.com/nM3aI2l.png

tapi itu tidak masuk akal. jaringan yang dalam hanya bisa belajar pemetaan 1-1 di atas yang dangkal

Pertanyaannya bukan "bisakah", tetapi "akankah", dan jika Anda melatih propaganda balik, jawabannya mungkin tidak.

Kami membahas fakta bahwa jaringan yang lebih besar akan selalu bekerja lebih baik daripada jaringan yang lebih kecil

Tanpa kualifikasi lebih lanjut, klaim itu salah.

shimao
sumber
Terima kasih atas jawabannya! Dapatkah regularisasi mengambil model dari model yang cocok ke model yang memiliki kekuatan representasionalnya sangat dirusak oleh regularisasi? Tidak akan selalu ada sweet spot di antaranya?
MiloMinderbinder
Mengenai masalah mainan Anda. Bagaimana 'algoritme sederhana yang diputar di atas semua program yang valid dalam panjang yang menanjak dan menemukan program terpendek yang dengan benar mengidentifikasi bilangan prima.' suatu algoritma yang belajar?
MiloMinderbinder
Harap perhatikan catatan kuliah cs231n - 'Kami membahas fakta bahwa jaringan yang lebih besar akan selalu bekerja lebih baik daripada jaringan yang lebih kecil, tetapi kapasitas model mereka yang lebih tinggi harus ditangani secara tepat dengan regularisasi yang lebih kuat (seperti pembusukan bobot yang lebih tinggi), atau mereka mungkin terlalu cocok. Kita akan melihat lebih banyak bentuk regularisasi (terutama dropout) di bagian selanjutnya. ' cs231n.github.io/neural-networks-1
MiloMinderbinder
@ user46478 saya menjawab pertanyaan Anda di atas dengan mengedit jawabannya
shimao
"Tidak ada jaminan bahwa Anda dapat menerapkan regularisasi yang cukup untuk mencegah overfitting tanpa sepenuhnya menghancurkan kapasitas jaringan untuk mempelajari apa pun." - Saya minta maaf tapi saya masih tidak mengerti pernyataan ini. Saya mengambil data pelatihan, {train, val} split, membuat jaringan terbesar yang diizinkan oleh mesin saya, meningkatkan probabilitas putus sekolah sampai saya melihat kesalahan validasi diminimalkan di antara kesalahan validasi yang saya dapatkan di berbagai probabilitas putus sekolah. Bisakah proses ini menghasilkan model yang tidak cocok tanpa menggunakan model yang baik?
MiloMinderbinder
11

Saya ingin menambahkan bahwa tidak ada yang namanya obat mujarab pembelajaran mesin:

Dengan teorema makan siang gratis :

Jika suatu algoritma berkinerja baik pada kelas masalah tertentu maka itu harus membayar untuk itu dengan kinerja yang menurun pada set semua masalah yang tersisa

pengguna3684792
sumber
Ini sangat menyedihkan (tapi jangan khawatir, saya tidak akan berdebat dari konsekuensi) 1. Membaca ini saya mengerti ini adalah tentang algoritma dengan distribusi yang sama atas fungsi yang dapat mereka pelajari (yang juga berarti co-domain yang sama). Jadi jaringan saraf hanya bisa dikasihani terhadap penduga universal. 2. Ini tidak berbicara tentang seberapa cepat ruang fungsi dicari. Bisakah kita mengatakan bahwa jaringan saraf dengan 2 lapisan tersembunyi harus sama atau lebih unggul dari jaringan saraf dengan satu lapisan tersembunyi pada setiap masalah? Saya pikir asumsi kesinambungan harus melakukan banyak hal di sini
MiloMinderbinder
dengan penyetelan hyperparameter yang tepat, dua jaringan saraf berlapis tersembunyi melompat melalui fungsi-fungsi yang memiliki domain-sama yang sama lebih cepat daripada jaringan saraf berlapis tersembunyi tunggal. input Anda?
MiloMinderbinder
1
'Bisakah kita mengatakan bahwa jaringan saraf dengan 2 lapisan tersembunyi harus setara atau lebih unggul dari jaringan saraf dengan satu lapisan tersembunyi di setiap masalah'. Tidak, sayangnya tidak. Sebagai contoh balasan, bayangkan regresi logistik (nn dengan nol lapisan tersembunyi) vs jaringan saraf 1 lapis dengan jumlah unit tersembunyi sama dengan jumlah titik data untuk dataset yang dapat dipisahkan sepenuhnya. Tidak ada informasi tentang batas keputusan yang tidak dapat ditangkap oleh lr, dan kompleksitas yang tinggi dan cenderung overfit
user3684792
3
Setuju dengan pernyataan di sini, tetapi saya ingin menambahkan peringatan standar ke NFL, juga diambil dari halaman wikipedia: "perhatikan bahwa NFL hanya berlaku jika fungsi target dipilih dari distribusi yang seragam dari semua fungsi yang mungkin".
mkt - Pasang kembali Monica
1
@ user46478 Saya setuju dengan relevansi teorema NFL dalam menanggapi pertanyaan Anda "mengapa jaringan saraf dengan satu lapisan tersembunyi tidak obat mujarab untuk masalah pembelajaran mesin?"
mkt - Pasang kembali Monica