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?
Jawaban:
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.
sumber
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.
sumber