Pembelajaran online vs offline?

38

Apa perbedaan antara pembelajaran offline dan online ? Apakah ini hanya masalah mempelajari seluruh dataset (offline) vs belajar secara bertahap (satu contoh pada satu waktu)? Apa contoh algoritma yang digunakan di keduanya?

grifon
sumber

Jawaban:

26

Pembelajaran online berarti Anda melakukannya saat datanya masuk. Offline berarti Anda memiliki dataset statis.

Jadi, untuk pembelajaran online, Anda (biasanya) memiliki lebih banyak data, tetapi Anda memiliki batasan waktu. Kerutan lain yang dapat memengaruhi pembelajaran online adalah bahwa konsep Anda mungkin berubah seiring waktu.

Katakanlah Anda ingin membuat classifier untuk mengenali spam. Anda dapat memperoleh kumpulan besar email, melabelinya, dan melatih classifier di dalamnya. Ini akan menjadi pembelajaran offline. Atau, Anda dapat mengambil semua email yang masuk ke sistem Anda, dan terus memperbarui classifier Anda (label mungkin sedikit rumit). Ini akan menjadi pembelajaran online.

pengguna549
sumber
7
Ya, dan sedikit klarifikasi adalah bahwa algoritma pembelajaran online, setidaknya seperti yang dipelajari dalam Pembelajaran Mesin, sebagian besar membuat asumsi bahwa kemampuan Anda untuk menyimpan contoh sangat terbatas dibandingkan dengan ukuran kumpulan data. Dalam kasus yang paling membatasi, Anda hanya bisa melihat satu contoh pada satu waktu, dan kemudian Anda harus melupakannya setelah Anda menggunakannya untuk memperbarui classifier Anda.
Harlan
8

Istilah "online" kelebihan beban, dan karenanya menyebabkan kebingungan dalam domain pembelajaran mesin.

Kebalikan dari "online" adalah pembelajaran batch. Dalam pembelajaran batch, algoritma pembelajaran memperbarui parameternya setelah mengonsumsi seluruh batch, sedangkan dalam pembelajaran online, algoritma memperbarui parameternya setelah belajar dari 1 instance pelatihan. Pembelajaran batch mini adalah titik setengah antara pembelajaran batch di satu sisi dan pembelajaran online di sisi lain.

Juga, "kapan" data masuk, atau apakah ia mampu disimpan atau tidak, adalah ortogonal untuk pembelajaran online atau batch.

Pembelajaran online dianggap lebih lambat untuk konvergen ke minimal, jika dibandingkan dengan pembelajaran batch. Namun, dalam kasus di mana seluruh dataset tidak sesuai dengan memori, menggunakan pembelajaran online merupakan tradeoff yang dapat diterima.

shark8me
sumber
Saya pikir ini tidak benar. Apa yang Anda jelaskan adalah gradient descent gradien algoritma stokastik (atau online) yang dapat digunakan untuk pengaturan masalah online atau offline.
danijar
Saya percaya "sebagai data datang" mengacu pada algoritma online dan offline en.wikipedia.org/wiki/Online_algorithm saya merasa bahwa Ops defn untuk pembelajaran online jelas membuat perbedaan ini. Algos Online -> proses saat data masuk. Pembelajaran online -> perbarui model yang mendasarinya secara progresif selama pelatihan.
gokul_uf
4

Pembelajaran online (juga disebut pembelajaran inkremental ): kami mempertimbangkan satu presentasi contoh. Dalam hal ini, setiap contoh digunakan secara berurutan dengan cara yang ditentukan oleh algoritma pembelajaran, dan kemudian dibuang. Perubahan berat yang dilakukan pada tahap tertentu hanya bergantung pada contoh (saat ini) yang disajikan dan mungkin pada kondisi model saat ini. Ini adalah prosedur alami untuk berbagai aturan waktu di mana contoh-contohnya mungkin tidak tersedia sekaligus.

Pembelajaran offline : perubahan berat tergantung pada keseluruhan (pelatihan) dataset, yang mendefinisikan fungsi biaya global. Contoh-contoh ini digunakan berulang kali hingga meminimalkan fungsi biaya ini tercapai.

FrankyBravo
sumber