Saya akan melihat video dalam kursus pembelajaran mesin online gratis Andrew Ng di Stanford. Dia membahas Gradient Descent sebagai algoritma untuk menyelesaikan fungsi regresi linear dan penulisan dalam Oktaf untuk melakukannya. Agaknya saya bisa menulis ulang fungsi-fungsi di R, tetapi pertanyaan saya adalah bukankah fungsi lm () sudah memberi saya hasil regresi linier? Mengapa saya ingin menulis fungsi gradient descent sendiri? Apakah ada keuntungan atau murni sebagai latihan belajar? Apakah lm () melakukan gradient descent?
r
regression
machine-learning
gradient-descent
Pengguna
sumber
sumber
Jawaban:
Keturunan gradien sebenarnya merupakan cara yang cukup buruk untuk menyelesaikan masalah regresi linier. The
lm()
fungsi dalam R internal menggunakan bentuk QR dekomposisi , yang jauh lebih efisien. Namun, gradient descent adalah teknik yang umumnya bermanfaat, dan layak diperkenalkan dalam konteks sederhana ini, sehingga lebih jelas bagaimana menerapkannya dalam masalah yang lebih kompleks. Jika Anda ingin menerapkan versi Anda sendiri sebagai latihan pembelajaran, itu adalah hal yang bermanfaat untuk dilakukan, tetapilm()
merupakan pilihan yang lebih baik jika semua yang Anda inginkan adalah alat untuk melakukan regresi linier.sumber
Alasan gradien online berguna adalah untuk aplikasi skala besar. Bagaimanapun, sekarang ada perpustakaan yang mengimplementasikannya sehingga Anda tidak perlu memprogramnya. Ini adalah cara yang baik untuk mempelajari cara kerja berbagai hal.
Dalam kata-kata Leon Bottou:
Pembelajaran skala besar
proyek sgd
sumber