Saat ini saya membaca makalah Efisien Online dan Batch Learning menggunakan Forward-Backward Splitting oleh John Duchi dan Yoram Singer. Saya sangat bingung tentang penggunaan istilah 'Online' dan 'Batch'.
Saya pikir 'Online' berarti kami memperbarui parameter bobot setelah memproses satu unit data pelatihan. Kemudian kami menggunakan parameter bobot baru untuk memproses unit data pelatihan berikutnya.
Namun, dalam makalah di atas, penggunaannya tidak begitu jelas.
Jawaban:
Bagi saya sepertinya mereka menggunakan batch dan pembelajaran online dengan benar. Pada bagian 3 mereka bekerja pada seluruh dataset untuk melakukan pembelajaran, yaitu pembelajaran batch, sedangkan pada bagian 4 mereka beralih ke gradien stokastik berikut yang dapat digunakan sebagai algoritma pembelajaran online.
Saya tidak pernah menggunakan gradien stokastik sebagai algoritma pembelajaran online; namun, dimungkinkan untuk menghentikan proses pengoptimalan di tengah proses pembelajaran dan masih menjadi model yang bermanfaat. Untuk kumpulan data yang sangat besar ini berguna karena Anda dapat mengukur konvergensi dan berhenti belajar sejak dini. Anda dapat menggunakan gradien stokastik berikut sebagai metode pembelajaran online karena Anda memperbarui model untuk setiap titik data baru, seperti yang saya pikir Anda sendiri katakan. Meskipun, saya akan berhati-hati menyebutnya "per data pelatihan." Data pelatihan adalah dataset, bukan titik data, tapi saya pikir saya mengerti Anda karena Anda mengatakan " per data pelatihan."
sumber
Pendeknya,
Online: Belajar berdasarkan pada masing-masing pola seperti yang diamati.
Batch: Mempelajari kelompok patters. Sebagian besar algoritma adalah batch.
Sumber: http://machinelearningmastery.com/basic-concepts-in-machine-learning/
sumber
Pembelajaran Batch vs. On-line
Mode on-line dan batch sedikit berbeda, meskipun keduanya akan berkinerja baik untuk permukaan kinerja parabola. Salah satu perbedaan utama adalah bahwa algoritma batch menjaga bobot sistem konstan sementara menghitung kesalahan yang terkait dengan setiap sampel dalam input. Karena versi on-line secara konstan memperbarui bobotnya, perhitungan kesalahannya (dan karenanya estimasi gradien) menggunakan bobot yang berbeda untuk setiap sampel input. Ini berarti bahwa kedua algoritma mengunjungi set poin yang berbeda selama adaptasi. Namun, keduanya bertemu dengan minimum yang sama.
Perhatikan bahwa jumlah pembaruan berat dari dua metode untuk jumlah presentasi data yang sama sangat berbeda. Metode on-line (LMS) melakukan pembaruan setiap sampel, sementara batch melakukan pembaruan setiap zaman, yaitu,
Pembaruan LMS = (pembaruan batch) x (# sampel dalam set pelatihan).
Algoritma batch juga sedikit lebih efisien dalam hal jumlah komputasi.
sumber