Быстрый инкрементальный метод оптимизации больших сумм функций с суперлинейной скоростью сходимости А. О. Родоманов Д. А. Кропотов МГУ им. М. В. Ломоносова, Москва ММРО, 2015 А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 1 / 16 Задача оптимизации больших сумм функций Задача минимизации `2 -регуляризованного эмпирического риска: " # N 1 X λ 2 min F (w) := fi (w) + kwk2 (1) N 2 w∈RD i=1 где λ > 0 – коэффициент регуляризации. Например, логистическая регрессия: fi (w) := ln(1 + exp(−yi w> xi )) (2) Случай «больших данных»: N 1. Предположения: все функции fi дважды непрерывно дифференцируемы и выпуклы гессианы ∇2 fi удовлетворяют условию Липшица: 2 ∇ fi (w) − ∇2 fi (u) ≤ M kw − uk , ∀w, u ∈ RD . 2 2 А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 2 / 16 Стохастический градиентный спуск (SGD) [Robbins and Monro, 1951] Итерация метода: wk+1 = wk − αk (∇fik (wk ) + λwk ), где ik ∈ {1, . . . , N } – случайно выбираемый номер компоненты. (3) Достоинства: Низкая стоимость итерации (O(D)) и требования по памяти (O(D)); Минимальные требования к F (w) и fi (w); Простота реализации. Недостатки: Необходимость тонкой настройки параметров (стратегия уменьшения αk , коэффициент momentum, размер мини-батча, параметры условия останова и др.) Скорость сходимости: сублинейная, O(1/k). А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 3 / 16 Скорости сходимости методов оптимизации Невязка rk := F (wk ) − F (w∗ ). Скорость сходимости: Сублинейная: rk → 0; Линейная: rk+1 ≤ crk для некоторого 0 < c < 1; Суперлинейная: rk+1 ≤ ck rk и ck → 0; Квадратичная: rk+1 ≤ crk2 . log(residual) sublinear linear superlinear iteration А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 4 / 16 Стохастический средний градиент (SAG) [Schmidt et al., 2013] Шаг метода: wk+1 = wk − α(gk + λwk ), (4) где gk – «средний» градиент: gk = N 1 X ∇fi (vki ), N (5) i=1 который обновляется в итерациях как: 1 gk = gk−1 + ∇fik (wk ) − yk−1 . ik N (6) Память: O(N D) для хранения yki := ∇fi (vki ), где vki = последняя точка, в которой вычислялась fi . Скорость сходимости: линейная, O(ρk ), где ρ ∈ (0, 1). А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 5 / 16 Инкрементальный метод Ньютона (NIM) Квадратичная модель одного слагаемого fi с центром в vki : 1 qik (w) := fi (vki )+∇fi (vki )> (w−vki )+ (w−vki )> ∇2 fi (vki )(w−vki ). 2 (7) Модель полной функции F : N λ 1 X k qi (w) + kwk22 . Qk (w) := (8) N 2 i=1 regularizer А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 6 / 16 Инкрементальный метод Ньютона (NIM) Квадратичная модель одного слагаемого fi с центром в vki : 1 qik (w) := fi (vki )+∇fi (vki )> (w−vki )+ (w−vki )> ∇2 fi (vki )(w−vki ). 2 Модель полной функции F : N 1 X k λ Qk (w) := qi (w) + kwk22 . N 2 i=1 Итерация метода: Выбрать номер компоненты ik ∈ {1, . . . , N }. Обновить модель только для одной компоненты: vkik := wk , vki := vk−1 , i 6= ik . i Найти минимум модель полной функции: w̄k := argminw∈RD Qk (w). Сделать шаг в направлении минимума модели: wk+1 = wk + αk (w̄k − wk ), (9) где αk > 0 – длина шага. А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 7 / 16 Минимизация модели Минимум модели: w̄k = (Hk + λI)−1 (pk − gk ), (10) где N N N 1 X 2 1 X 2 1 X k k k Hk := ∇ fi (vi ), pk := ∇ fi (vi )vi , gk := ∇fi (vki ). N N N i=1 i=1 i=1 (11) Обновление модели по схеме «прибавить-вычесть»: 1 2 ∇ fik (wk ) − ∇2 fik (vk−1 ) , Hk = Hk−1 + ik N 1 k−1 (12) pk = pk−1 + ∇2 fik (wk )wk − ∇2 fik (vk−1 )v , ik ik N 1 ∇fik (wk ) − ∇fik (vk−1 gk = gk−1 + ik ) , N где ik ∈ {1, . . . , N } – номер обновляемой компоненты. Сложность итерации: O(D3 ) для решения СЛАУ. Память: O(N D + D2 ) для хранения Hk и всех центров vki . А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 8 / 16 Модификация метода NIM на случай линейных моделей D Линейные модели: fi (w) := φi (x> i w) для некоторого xi ∈ R Градиенты и гессианы имеют специальную структуру: ∇fi (w) = φ0i (x> i w)xi , > ∇2 fi (w) = φ00i (x> i w)xi xi . (13) Вместо сохранения центра vki , можно хранить только результат скалярного произведения: k µki := x> (14) i vi . Нет необходимости решать СЛАУ, обновление Bk := (Hk + λI)−1 : δk Bk−1 xik x> ik Bk−1 , (15) Bk = Bk−1 − > N + δk xik Bk−1 xik где δk := φ00ik (µkik ) − φ00ik (µik−1 ). k Стоимость итерации: O(D2 ) вместо O(D3 ). Память: O(N + D2 ) вместо O(N D + D2 ). А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 9 / 16 Скорость сходимости метода NIM Теорема (локальная скорость сходимости) Пусть все центры инициализированы в окрестности оптимума w∗ : 0 vi − w∗ ≤ 2λ √ . (16) 2 M N Предположим, что используется единичный шаг αk ≡ 1. Тогда {wk } сходится к w∗ с R-суперлинейной скоростью сходимости: rk+1 = 0. kwk − w∗ k2 ≤ rk and lim k→∞ rk Кроме того, {wk } также сходится R-квадратично по эпохам (каждую N -ю итерацию): M 2 rk+N ≤ r , k = 2N, 2N + 1, . . . . 2λ k А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 10 / 16 Сравнение с другими методами Функция: F (w) := (1/N ) Метод SGD SAG NIM Стоимость итерации O(D) O(D) O(D2 ) PN > i=1 φi (xi w) Память O(D) O(N + D) O(N + D2 ) + (λ/2) kwk22 . Скорость сходимости По итерациям По эпохам Сублинейная Сублинейная Линейная Линейная Суперлинейная Квадратичная Обозначения: N = кол-во слагаемых; D = кол-во оптимизируемых переменных; Одна эпоха = N итераций. SGD = стохастический градиентный спуск. SAG = стохастический средний градиент [Schmidt et al., 2013]. А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 11 / 16 Эксперименты: небольшое N Функционал: `2 -регуляризованная логистическая регрессия. 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 10 -15 L-BFGS objective residual objective residual Данные quantum (25 MB; N = 50 000, D = 65): SGD SAG HFN NIM Newton 0 5 10 15 epoch А.О. Родоманов, Д.А. Кропотов 20 25 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 NIM 10 -10 10 -11 10 -12 10 -13 10 -14 10 -15 0.0 0.2 Инкрементальный метод Ньютона SAG SGD L-BFGS HFN Newton 0.4 0.6 0.8 1.0 1.2 time (in seconds) ММРО, 2015 1.4 1.6 12 / 16 Эксперименты: сравнение с SFO Данные a9a (N = 32 561, D = 125) и covtype (N = 581 012, D = 54). 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 10 -15 objective residual objective residual Сравнение с SFO [Sohl-Dickstein et al., 2014]: SFO NIM 0 5 10 15 epoch А.О. Родоманов, Д.А. Кропотов 20 25 30 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 10 -15 SFO NIM 0 5 Инкрементальный метод Ньютона 10 15 epoch 20 ММРО, 2015 25 30 13 / 16 Эксперименты: большие данные #1 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 SGD SAG Newton NIM 0 5 10 epoch А.О. Родоманов, Д.А. Кропотов 15 20 objective residual objective residual Dataset mnist8m (47 GB; N = 8 100 000, D = 784): 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 SGD SAG Newton NIM 0 1 Инкрементальный метод Ньютона 2 3 4 5 6 time (in hours) ММРО, 2015 14 / 16 Эксперименты: большие данные #2 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 10 -15 objective residual objective residual Данные dna18m (107 GB; N = 18 000 000, D = 800): SGD Newton SAG NIM 0 5 10 15 epoch А.О. Родоманов, Д.А. Кропотов 20 25 30 10 0 10 -1 10 -2 10 -3 10 -4 10 -5 10 -6 10 -7 10 -8 10 -9 10 -10 10 -11 10 -12 10 -13 10 -14 10 -15 Newton SGD SAG NIM 0 Инкрементальный метод Ньютона 2 4 6 time (in hours) 8 ММРО, 2015 10 15 / 16 Заключение Выводы: Предложен новый инкрементальный метод оптимизации с суперлинейной скоростью сходимости; Настройка параметров не требуется; Эффективная адаптация для случая линейных моделей; На практике метод всегда сходится за 3–5 эпох; При небольшом количестве переменных опережает многие другие методы; При большом количестве переменных характеристики метода значительно снижаются. Планы на будущее: Доказательство глобальной сходимости метода; Адаптация метода для других «простых» регуляризаторов Ω(w). А.О. Родоманов, Д.А. Кропотов Инкрементальный метод Ньютона ММРО, 2015 16 / 16