Perkenalan

Sejak saya mulai mengeksplorasi berbagai konsep dasar di bidang pembelajaran mesin yang luas, saya mulai menemukan beberapa makalah penelitian luar biasa yang membuat saya terpesona untuk mendalaminya lebih dalam.'Efficient BackProp' oleh Yann Lecun, Leon Bottou, Genevieve Orr , dan Klaus-Robert Mulleradalah salah satu makalah yang cukup memotivasi saya untuk menulis lebih banyak tentangnya dalam upaya untuk memahaminya dengan lebih baik.

Mengingat saya relatif baru dalam bidang ini, saya menulis blog ini dalam proses memahami makalah saya sendiri. Jadi tolong beri tahu saya jika ada kesalahan yang mungkin saya abaikan. Karena makalah penelitian ini cukup panjang, maka rangkaian blog ini akan dibagi menjadi berbagai topik agar lebih terstruktur dan mudah dipahami.

Topik dieksplorasi dalam 'BackProp Efisien' oleh Yann LeCun

  1. Pembelajaran dan Generalisasi
  2. Propagasi Balik Standar
  3. Konvergensi Penurunan Gradien
  4. Metode optimasi orde kedua klasik
  5. Analisis Hessian dalam jaringan multilayer
  6. Menerapkan metode orde kedua ke jaringan multilayer

Pembelajaran berbasis gradien

'Menggunakan algoritma pembelajaran untuk model prediktif berdasarkan jaringan saraf pada dasarnya adalah masalah optimasi untuk mendapatkan parameter yang menghasilkan keadaan energi kesalahan minimum. '

Pembelajaran berbasis gradien adalah topik pertama yang diperkenalkan dalam makalah ini. Ini dimulai dengan menyatakan bagaimana sebagian besar metode yang berhasil diambil saat mendekati pembelajaran mesin otomatis melibatkan metode pembelajaran berbasis gradien. Tapi apa maksudmu dengan itu? Cara yang sangat umum untuk menjelaskan konsep ini adalah melalui diagram di bawah ini.

Ini adalah model optimasi orde pertama. Istilah 'orde pertama' di sini mengacu pada algoritma yang memerlukan setidaknya satu turunan/gradien pertama. Dari gambar di atas, pola masukan diberikan sebagai Z0, Z1, Z2 dan seterusnya di mana W mengacu pada bobot model yang mewakili parameter yang dapat disesuaikan. Saat model dilatih, fungsi biaya (biasanya fungsi kesalahan kuadrat rata-rata) diterapkan untuk menghitung perbedaan antara keluaran yang diprediksi dan yang diinginkan. Dengan demikian, rata-rata semua kesalahan dihitung pada set pelatihan dan bobotnya disesuaikan. Proses tersebut terjadi berulang kali untuk meminimalkan fungsi biaya.

Jika ini membingungkan untuk diikuti, mari kita ilustrasikan proses ini dengan sebuah contoh kecil.

Jadi saya membuat kumpulan data yang sangat kecil dengan sepuluh nilai yang masing-masing berisi satu nilai masukan (x) dan satu nilai keluaran (y). Sekarang kita tahu bahwa rumus yang digunakan disini adalah:

Namun model kita hanya akan menampilkan nilai x dan y. Ia tidak memiliki pengetahuan sebelumnya tentang hubungan linier yang ada antara keduanya. Satu-satunya cara agar sistem ini dapat belajar sendiri adalah dengan terus memperbarui parameternya hingga memenuhi tanggal yang ditentukan secara akurat.

Nilai x sesuai dengan nilai masukan Zn seperti yang diberikan pada gambar. Bobot, W diinisialisasi secara acak dan dimasukkan ke model regresi linier yang digunakan dalam contoh ini.

Selanjutnya, kami menjalankan model ini selama 100 epoch dan mencantumkan parameter yang diperbarui. Nilai bobot yang disesuaikan kembali menjadi sebagai berikut.

Seperti yang dijelaskan sebelumnya, penyesuaian ini disebabkan oleh fungsi biaya yang menghitung selisih kesalahan antara nilai dan memperbarui bobot. Sekarang seluruh proses pembaruan ini disebut propagasi mundur tetapi hal itu akan dijelaskan lebih detail nanti.

Sekarang dari keluarannya mudah untuk mengidentifikasi bahwa koefisien pertama hampir mendekati koefisien sebenarnya. Namun nilai kedua jauh melenceng. Jadi kami ulangi prosesnya lagi.

Meskipun nilainya tidak persis sama, jelas bahwa model tersebut kini telah mulai memahami hubungan antara kedua variabel dan dengan demikian secara progresif dapat memberikan hasil yang lebih akurat dengan kerugian yang diminimalkan.

Ini adalah contoh kecil yang menunjukkan hubungan linier sederhana. Apa yang terjadi jika ukuran kumpulan data bertambah dan kumpulan sampel berbeda disediakan? Atau bagaimana kita bisa mengoptimalkan model yang memerlukan algoritma klasifikasi, bukan regresi? Dalam kasus seperti ini, pengurangan fungsi biaya saja tidak cukup. Di sinilah kami memperkenalkan konsep yang disebut generalisasi.

Generalisasi

Generalisasi adalah kemampuan model untuk memprediksi nilai target yang benar untuk kumpulan data yang benar-benar baru yang belum dilatih. Teknik ini sebagian besar mencoba untuk mengoptimalkan pembelajaran dengan meminimalkan atau memperbaiki kesalahan yang terjadi pada set pelatihan. Proses ini juga dikenal sebagai Minimisasi Risiko Empiris. Prinsip dasar dibalik minimalisasi risiko empiris adalah mengubah masalah pelatihan model menjadi masalah optimasi. Biasanya berfokus pada dua bagian, fungsi kerugian dan pengatur yang digunakan untuk menghukum nilai-nilai tertentu dari parameter yang terlibat. Parameter hiper juga digunakan untuk menjaga keseimbangan antara keduanya. Ini adalah penjelasan yang sangat singkat tetapi Anda dapat membaca lebih lanjut di sini. Artikel yang ditautkan ke ERM memberikan penjelasan singkat tentang hal itu bersama dengan demonstrasi fungsi kerugian, pengatur dan beberapa kasus khusus juga.

Analisis sebagian besar proses minimalisasi dilakukan dengan menguraikan kesalahan generalisasi menjadi dua istilah — bias dan varians. Bias adalah parameter yang dapat dipelajari dalam jaringan seperti halnya bobot. Ini memberikan ukuran total perbedaan antara rata-rata semua keluaran jaringan di berbagai sampel kumpulan data dan keluaran yang diinginkan. Sedangkan varians mengacu pada penyimpangan dari rata-rata prediksi. Kesalahan minimal hanya dapat dicapai jika kedua nilai ini paling sedikit.

Dari grafik di atas kita dapat memahami bahwa tahap awal pelatihan melihat bias yang besar dan varians yang rendah. Namun, skenario ini akan segera berbalik seiring dengan berjalannya pelatihan karena jaringan kini mulai belajar lebih baik. Namun apakah ini berarti semakin lama suatu model dilatih, semakin efisien model tersebut? Tidak. Poin penting yang harus diperhatikan adalah jika jaringan dilatih terlalu lama, jaringan juga akan memahami noise (informasi yang tidak berarti) dan beradaptasi dengan fitur spesifik dalam kumpulan data pelatihan. Ini adalah masalah yang dikenal sebagai 'overfitting'. Penghentian dini dan regularisasi adalah beberapa teknik yang digunakan untuk mencegahnya yang akan dibahas secara rinci nanti. Hal ini membuktikan bahwa meskipun strategi minimalisasi biaya yang sangat baik diterapkan, pemilihan model yang tidak tepat yang berdampak negatif pada generalisasi menyebabkan seluruh jaringan menjadi tidak efisien.

Ringkasan

Artikel ini terutama didasarkan pada dua topik — pembelajaran dan generalisasi dalam pembelajaran mesin. Kami dapat mempelajari beberapa konsep dasar dalam pembelajaran berbasis gradien dengan contoh kecil untuk mengilustrasikan cara kerjanya. Pentingnya generalisasi dalam hal akurasi dan optimasi juga dibahas. Penjelasan singkat tentang minimalisasi risiko empiris dan faktor-faktor yang menganalisis kesalahan generalisasi juga dijelaskan. Saya harap artikel ini dapat membantu Anda memahami atau memberi gambaran setidaknya tentang topik yang saya tulis. Artikel berikutnya akan berfokus pada propagasi mundur standar serta beberapa trik praktis yang mencakup inisialisasi bobot, contoh pengacakan, normalisasi nilai masukan, dan sebagainya.

Terima kasih telah membaca!

Referensi

  1. "BackProp Efisien — »Yann Lecun, Leon Bottou, Genevieve Orr, dan Klaus-Robert Muller
  2. Membandingkan metode pembelajaran berbasis gradien untuk mengoptimalkan jaringan saraf prediktif
  3. Minimalisasi Risiko Empiris
  4. Fungsi Biaya dan Penurunan Gradien
  5. Generalisasi dalam Pembelajaran Mesin
  6. Generalisasi, Regularisasi, Overfitting, Bias, dan Varians dalam Machine Learning