Koordinasi penurunan memperbarui satu parameter pada satu waktu, sedangkan penurunan gradien mencoba memperbarui semua parameter sekaligus.
Sulit untuk menentukan dengan tepat kapan satu algoritma akan bekerja lebih baik daripada yang lain. Sebagai contoh, saya sangat terkejut mengetahui bahwa penurunan koordinat adalah hal yang paling baik untuk LASSO. Dan saya bukan satu-satunya; lihat slide 17 .
Dengan itu, ada beberapa fitur yang dapat membuat masalah lebih mudah untuk mengkoordinasikan keturunan:
(1) Pembaruan bersyarat cepat. Jika, karena alasan tertentu, masalah memungkinkan seseorang untuk mengoptimalkan parameter secara individual dengan sangat cepat, koordinat keturunan dapat memanfaatkan ini. Sebagai contoh, seseorang mungkin dapat memperbarui parameter tertentu hanya dengan menggunakan sebagian dari data, sangat mengurangi biaya komputasi dari pembaruan ini. Kasus lain adalah jika ada solusi bentuk tertutup untuk parameter individu, tergantung pada nilai-nilai semua parameter lainnya.
(2) Mode relatif independen untuk parameter. Jika nilai optimal dari satu parameter benar-benar independen dari nilai parameter lainnya, maka satu putaran penurunan koordinat akan mengarah ke solusi (dengan asumsi bahwa setiap pembaruan koordinat menemukan mode saat ini). Di sisi lain, jika mode untuk parameter yang diberikan sangat tergantung pada nilai parameter lainnya, penurunan koordinat sangat mungkin terjadi, dengan pembaruan yang sangat kecil di setiap putaran.
Sayangnya, untuk sebagian besar masalah, (2) tidak berlaku, jadi sangat jarang bahwa penurunan koordinat dapat dibandingkan dengan algoritma alternatif. Saya percaya alasan itu berkinerja baik untuk LASSO adalah bahwa ada banyak trik yang dapat digunakan untuk memberlakukan kondisi (1).
α