Координатний спуск оновлює один параметр, а спуск градієнта намагається оновити всі параметри одночасно.
Важко точно вказати , коли один алгоритм зробить краще, ніж інший. Наприклад, я був дуже шокований, дізнавшись, що спуск координат - це найсучасніше для LASSO. І я не був єдиним; див. слайд 17 .
Зважаючи на це, є деякі особливості, які можуть зробити проблему більш корисною для координації спуску:
(1) Швидке умовне оновлення. Якщо з якихось причин проблема дозволяє швидко індивідуально оптимізувати параметри, координатний спуск може використати це. Наприклад, можна оновити певні параметри, використовуючи лише підмножину даних, що значно скорочує обчислювальну вартість цих оновлень. Інший випадок, якщо для окремого параметра існує рішення закритої форми, що залежить від значень усіх інших параметрів.
(2) Відносно незалежні режими параметрів. Якщо оптимальне значення одного параметра повністю не залежить від інших значень параметрів, то один раунд спуску координат призведе до рішення (якщо припустити, що кожне оновлення координат знаходить поточний режим). З іншого боку, якщо режим для заданого параметра дуже сильно залежить від інших значень параметрів, велика ймовірність спуску координат зростає на дюйм, з дуже невеликими оновленнями в кожному раунді.
На жаль, для більшості проблем (2) не виконується, тому рідко коли координатний спуск добре порівняно з альтернативними алгоритмами. Я вважаю, що причина, по якій вона спрацьовує для LASSO, полягає в тому, що існує багато хитрощів, які можна використати для прийняття умови (1).
α