Apa pra pelatihan jaringan saraf?

22

Nah pertanyaannya mengatakan itu semua.

Apa yang dimaksud dengan "pra pelatihan jaringan saraf"? Dapatkah seseorang menjelaskan dalam murni sederhana bahasa Inggris?
Saya tidak bisa menemukan sumber daya yang terkait dengan itu. Ini akan menjadi besar jika seseorang bisa mengarahkan saya kepada mereka.

Machina333
sumber
www.deeplearningbook.org memiliki pengantar topik yang bagus.
mnagaraj

Jawaban:

22

Cara yang biasa melatih jaringan:

Anda ingin melatih jaringan saraf untuk melakukan tugas (misalnya klasifikasi) pada kumpulan data (misalnya serangkaian gambar). Anda mulai pelatihan dengan menginisialisasi bobot secara acak. Segera setelah Anda memulai pelatihan, bobot diubah untuk melakukan tugas dengan lebih sedikit kesalahan (yaitu optimasi). Setelah Anda puas dengan hasil pelatihan, Anda menyimpan bobot jaringan Anda di suatu tempat.

Anda sekarang tertarik untuk melatih jaringan untuk melakukan tugas baru (mis. Deteksi objek) pada kumpulan data yang berbeda (mis. Gambar juga tetapi tidak sama dengan yang Anda gunakan sebelumnya). Alih-alih mengulangi apa yang Anda lakukan untuk jaringan pertama dan mulai dari pelatihan dengan bobot yang diinisialisasi secara acak, Anda dapat menggunakan bobot yang Anda simpan dari jaringan sebelumnya sebagai nilai bobot awal untuk percobaan baru Anda. Menginisialisasi bobot dengan cara ini disebut sebagai menggunakan jaringan pra-terlatih. Jaringan pertama adalah jaringan pra-dilatih Anda. Yang kedua adalah jaringan yang sedang Anda setel.

Gagasan di balik pra-pelatihan adalah bahwa inisialisasi acak adalah ... baik ... acak, nilai bobot tidak ada hubungannya dengan tugas yang Anda coba selesaikan. Mengapa satu set nilai lebih baik dari set lainnya? Tapi bagaimana lagi Anda akan menginisialisasi bobot? Jika Anda tahu bagaimana menginisialisasi mereka dengan benar untuk tugas tersebut, Anda mungkin juga mengaturnya ke nilai optimal (sedikit berlebihan). Tidak perlu apa-apa kereta. Anda memiliki solusi optimal untuk masalah Anda. Pre-pelatihan memberikan jaringan kepala mulai. Seolah-olah itu telah melihat data sebelumnya.

Apa yang harus diperhatikan ketika pra-pelatihan:

Tugas pertama yang digunakan dalam pra-pelatihan jaringan bisa sama dengan tahap fine-tuning. Dataset yang digunakan untuk pra-pelatihan vs fine-tuning juga bisa sama, tetapi juga bisa berbeda. Sangat menarik untuk melihat bagaimana pra-pelatihan tentang tugas yang berbeda dan dataset yang berbeda masih dapat ditransfer ke dataset baru dan tugas baru yang sedikit berbeda. Menggunakan jaringan pra-terlatih umumnya masuk akal jika kedua tugas atau kedua dataset memiliki kesamaan. Semakin besar jeda, pra-pelatihan menjadi kurang efektif. Tidak masuk akal untuk melakukan pra-pelatihan jaringan klasifikasi gambar dengan melatihnya tentang data keuangan terlebih dahulu. Dalam hal ini, ada terlalu banyak pemutusan antara tahap pra-pelatihan dan fine-tuning.

ypx
sumber
10

Pretraining / fine-tuning berfungsi sebagai berikut:

  1. m
  2. Am
  3. BmA
  4. mB

AB

Martin Thoma
sumber
Catatan: orang mungkin menggunakan istilah fine-tune hanya jika Anda (tidak) membekukan bobot. Saya tidak yakin apakah ada penggunaan istilah ini secara konsisten
Martin Thoma
4

Dua jawaban di atas menjelaskan dengan baik. Hanya ingin menambahkan satu hal halus mengenai pra-pelatihan untuk Deep Belief Nets (DBN). Pra-pelatihan untuk DBN adalah pembelajaran tanpa pengawasan (mis. Data tanpa label) dan pelatihan setelahnya adalah pembelajaran yang diawasi (mis. Data tanpa label).

Lamothy
sumber