Saya membaca makalah normalisasi batch (BN) (1) dan tidak mengerti perlunya menggunakan moving average untuk melacak akurasi model dan bahkan jika saya menerima bahwa itu adalah hal yang benar untuk dilakukan, saya tidak mengerti apa yang sebenarnya mereka lakukan.
Menurut pemahaman saya (yang salah saya), makalah ini menyebutkan bahwa itu menggunakan statistik populasi daripada mini-batch, statistik setelah model selesai pelatihan. Setelah beberapa diskusi tentang perkiraan yang tidak bias (yang tampaknya bersinggungan dengan saya dan tidak mengerti mengapa itu berbicara tentang itu) mereka pergi dan berkata:
Sebagai gantinya menggunakan rata-rata bergerak, kami melacak akurasi model saat ia berlatih.
Itu adalah bagian yang membingungkan saya. Mengapa mereka melakukan rata-rata bergerak untuk memperkirakan keakuratan model dan atas kumpulan data apa?
Biasanya apa yang dilakukan orang untuk memperkirakan generalisasi model mereka, mereka hanya melacak kesalahan validasi model mereka (dan berpotensi menghentikan penurunan gradien mereka untuk mengatur). Namun, tampaknya normalisasi batch melakukan sesuatu yang sama sekali berbeda. Dapatkah seseorang mengklarifikasi apa dan mengapa melakukan sesuatu yang berbeda?
1 : Ioffe S. dan Szegedy C. (2015),
"Normalisasi Batch: Mempercepat Pelatihan Jaringan Dalam dengan Mengurangi Pergeseran Kovarian Internal",
Prosiding Konferensi Internasional ke-32 tentang Pembelajaran Mesin , Lille, Prancis, 2015.
Jurnal Penelitian Pembelajaran Mesin: Volume W&CP 37
sumber
Jawaban:
Ketika menggunakan batch_normalisasi hal pertama yang harus kita pahami adalah ini bekerja pada dua cara berbeda saat dalam Pelatihan dan Pengujian .
Dalam Pelatihan kita perlu menghitung rata-rata batch mini untuk menormalkan batch
Dalam kesimpulan kami hanya menerapkan statistik batch mini pra-dihitung
Jadi dalam hal ke-2 bagaimana menghitung statika batch mini ini
Di sinilah rata-rata bergerak
sumber
Mereka berbicara tentang normalisasi batch, yang telah mereka gambarkan untuk prosedur pelatihan tetapi tidak untuk inferensi.
Ini adalah proses normalisasi unit tersembunyi menggunakan sarana sampel dll.
Di bagian ini mereka menjelaskan apa yang harus dilakukan untuk tahap inferensi, ketika Anda baru membuat prediksi (yaitu setelah pelatihan selesai).
Namun, dalam penghentian validasi, Anda menyelaraskan prediksi validasi yang diatur dengan pelatihan untuk memperkirakan kesalahan validasi Anda.
Jadi selama proses ini Anda tidak memiliki rata-rata populasi (rata-rata masih berubah saat Anda berlatih), jadi Anda menggunakan rata-rata berjalan untuk menghitung parameter norma batch untuk menghitung kinerja pada set validasi.
Dalam pengertian inilah
tidak ada hubungannya dengan menggunakan sarana yang berjalan sebagai metrik untuk kinerja jaringan saraf.
sumber