Bisakah satu (secara teoritis) melatih jaringan saraf dengan sampel pelatihan lebih sedikit dari berat?

12

Pertama-tama: Saya tahu, tidak ada jumlah umum ukuran sampel yang diperlukan untuk melatih jaringan saraf. Itu tergantung pada terlalu banyak faktor seperti kerumitan tugas, kebisingan dalam data dan sebagainya. Dan semakin banyak sampel pelatihan yang saya miliki, semakin baik jaringan saya.

Tetapi saya bertanya-tanya: Apakah secara teori mungkin untuk melatih jaringan saraf dengan sampel pelatihan yang lebih sedikit daripada bobot, jika saya menganggap tugas saya cukup "sederhana"? Adakah yang tahu contoh di mana ini berhasil? Atau apakah jaringan ini hampir pasti berkinerja buruk?

Jika saya mempertimbangkan, misalnya, regresi polinomial, saya tidak dapat memuat polinomial derajat 4 (yaitu dengan 5 parameter gratis) hanya pada 4 titik data. Apakah ada aturan yang sama untuk jaringan saraf, mengingat jumlah bobot saya sebagai jumlah parameter gratis?

Hobbit
sumber
Ya: jika bobot diinisialisasi secara acak, secara teori dimungkinkan untuk mendapatkan jaringan saraf yang terlatih sempurna bahkan dengan nol sampel pelatihan. (Posting sebagai komentar, bukan jawaban, karena saya tahu ini tidak benar-benar apa yang Anda minta.)
Darren Cook

Jawaban:

17

Orang melakukan itu sepanjang waktu dengan jaringan besar. Misalnya, jaringan AlexNet yang terkenal memiliki sekitar 60 juta parameter, sedangkan ImageNet ILSVRC yang awalnya dilatih hanya memiliki 1,2 juta gambar.

Alasan Anda tidak cocok dengan polinomial 5-parameter hingga 4 titik data adalah selalu dapat menemukan fungsi yang persis sesuai dengan titik data Anda, tetapi melakukan hal-hal yang tidak masuk akal di tempat lain. Nah, seperti yang telah dicatat baru-baru ini , AlexNet dan jaringan serupa dapat cocok dengan label acak yang diterapkan pada ImageNet dan hanya menghafal semuanya, mungkin karena mereka memiliki lebih banyak parameter daripada poin pelatihan. Tetapi sesuatu tentang prior jaringan dikombinasikan dengan proses optimasi gradient descent stochastic berarti bahwa, dalam praktiknya, model ini masih dapat menggeneralisasi ke titik data baru dengan baik ketika Anda memberi mereka label nyata. Kami masih belum benar-benar mengerti mengapa itu terjadi.

Dougal
sumber
2
+1. Bolehkah saya menambahkan bahwa untuk perbandingan dengan regresi polinomial, saya juga akan mempertimbangkan bahwa sampel sangat dimensional. Resolusi gambar rata-rata di ImageNet adalah sekitar 469x387 piksel, jika dipangkas menjadi 256x256 kami memiliki 1,2 juta parameter masukan 65k, yang sangat berkorelasi dalam setiap sampel, sehingga memberikan lebih banyak informasi ke jaringan saraf (dan terutama NN konvolusional) daripada dalam kasus regresi polinomial.
jjmontes
3
@jjmontes benar, tetapi misteri utama adalah bahwa jaringan ini memiliki kapasitas untuk melakukan keduanya menghafal dan menggeneralisasi (baik). Dengan kata lain, mereka dapat menghancurkan data pelatihan dengan label acak, dan masih menggeneralisasi dengan baik. Ini bukan sesuatu yang dilihat dalam metode ML tradisional.
Amelio Vazquez-Reina
6

Sistem yang tidak ditentukan hanya kurang ditentukan jika Anda tidak memaksakan batasan selain data. Berpegang teguh pada contoh Anda, menyesuaikan polinomial 4 derajat ke 4 titik data berarti Anda memiliki satu derajat kebebasan yang tidak dibatasi oleh data, yang membuat Anda memiliki garis (dalam ruang koefisien) dari solusi yang sama baiknya. Namun, Anda dapat menggunakan berbagai teknik regularisasi untuk membuat masalah bisa diselesaikan. Misalnya, dengan memberikan penalti pada norma L2 (yaitu jumlah kuadrat) dari koefisien, Anda memastikan bahwa selalu ada satu solusi unik dengan kebugaran tertinggi.

Teknik pengaturan juga ada untuk jaringan saraf, jadi jawaban singkat untuk pertanyaan Anda adalah 'ya, Anda bisa'. Yang menarik adalah teknik yang disebut "dropout", di mana, untuk setiap pembaruan bobot, Anda secara acak 'menjatuhkan' bagian tertentu dari node dari jaringan. Yaitu, untuk iterasi tertentu dari algoritma pembelajaran, Anda berpura-pura bahwa simpul-simpul ini tidak ada. Tanpa putus, net dapat mempelajari representasi input yang sangat kompleks yang bergantung pada semua node yang bekerja bersama secara tepat. Representasi seperti itu cenderung 'menghafal' data pelatihan, daripada menemukan pola yang menggeneralisasi. Dropout memastikan bahwa jaringan tidak dapat menggunakan semua node sekaligus agar sesuai dengan data pelatihan; itu harus dapat mewakili data dengan baik bahkan ketika beberapa node hilang,

Juga perhatikan bahwa saat menggunakan dropout, derajat kebebasan pada titik tertentu selama pelatihan sebenarnya bisa lebih kecil dari jumlah sampel pelatihan, meskipun secara total Anda mempelajari bobot lebih dari sampel pelatihan.

Ruben van Bergen
sumber
2
Ini mungkin melebih-lebihkan peran yang dimainkan regularisasi eksplisit dalam jaring yang dalam: makalah ini yang saya maksudkan dalam jawaban saya menunjukkan dropout dan bentuk-bentuk regularisasi lainnya yang hanya memiliki efek kecil pada seberapa banyak jaringan dapat menghafal. Meskipun demikian, mungkin cerita dasar Anda benar, tetapi regularisasi utama yang dimainkan adalah yang tersirat dari SGD; ini semua masih agak keruh.
Dougal