На правах рукописи

На правах рукописи На правах рукописи

cdn.scipeople.com
from cdn.scipeople.com More from this publisher
19.11.2014 Views

(t) где: p - это m-ая компонента вектора направления p (t) , соответствующая связи m m. Оптимальное значение α (t) определяется путем минимизации функционала ошибки вдоль направления p (t) при помощи одного из алгоритмов одномерного поиска. Из большого арсенала алгоритмов одномерного поиска наилучшим образом себя зарекомендовал при обучении нейронных сетей при помощи методов сопряженных градиентов алгоритм Чараламбуса (Charalambous) [50], который использует кубическую интерполяцию в сочетании с методом деления интервала на части. После оптимального шага, сделанного в выбранном направлении, методы сопряженных градиентов определяют следующее направление поиска как линейную комбинацию нового направления антиградиента и предыдущего направления движения: ( t ) ( t ) ( t) ( t−1) p = −g + β p (25) Различные методы сопряженных градиентов различаются выбором коэффициента β (t) . Так, в методе Флетчера-Ривса (Fletcher-Reevs) [51] он равен отношению квадрата нормы градиента к квадрату нормы градиента на предыдущей итерации: ( g ( g ) ) g g ( t ) T ( t ) ( t) = ( t−1) T ( t−1) β (26) В методе Полака-Рибьеры (Polak-Ribiére) [49] искомый коэффициент равен скалярному произведению приращения градиента на текущий градиент, деленный на квадрат нормы градиента на предыдущей итерации: ( Δg ( g ) g ) g ( t) T ( t ) ( t) = ( t−1) T ( t−1) β (27) Алгоритмы методов сопряженных градиентов требуют не многим больше памяти, чем градиентные алгоритмы, поэтому могут быть использованы для обучения нейронных сетей с большим количеством настраиваемых параметров. 30

1.2.4.7. Квазиньютоновские методы обучения Эта группа методов базируется на Ньютоновском методе аппроксимации функций, но не требует вычисления вторых производных. X t+ 1 X t − −1 t = H g , (28) t где: Х – матрица весовых коэффициентов; g – вектор градиента; t – счетчик итераций; H - матрица вторых частных производных (матрица Гессе). ⎛ ∂ ⎜ ⎜ H = ⎜ ⎜ ∂ ⎜ ⎜ ⎝ 2 2 E( w E( w ∂w i(1) j(1) 2 ∂wi (1) j(1) M , K, w i(1) j(1) i( M ) j( M ) , K, w ∂w i( M ) j( M ) i( M ) j( M ) i(1) j(1) ) ) L O L ∂ ∂ 2 2 E( w ∂w E( w i(1) j(1) i(1) j(1) , K, w ∂wi ( M ) M , K, w i( M ) j( M ) j( M ) i(1) j(1) i( M ) j( M ) 2 ∂wi ( M ) j( M ) ) ⎞ ⎟ ⎟ ⎟ , (29) ) ⎟ ⎟ ⎟ ⎠ где: функция i(m) показывает номер нейрона, из которого исходит связь m; j(m) показывает номер нейрона, в который входит связь m; M – число связей (т.е. число настраиваемых параметров) в нейросети. Идея квазиньютоновских методов базируется на возможности аппроксимации кривизны нелинейной оптимизируемой функции без явного формирования ее матрицы Гессе. Сама матрица при этом не хранится, а ее действие аппроксимируется скалярными произведениями специально подобранных векторов. Наиболее удачным методом из этой группы является метод Бройдена- Флетчера-Гольдфарба-Шанно (BFGS) [52], согласно которому: s ( g − g ) g T t+ 1 t t+ 1 t+ 1 = −gt+ 1 + s T t , (30) ( gt+ 1 − gt ) st где: s t – направление, вдоль которого проводится одномерная оптимизация на t- ой итерации; g t+1 – вектор градиента на t+1-ой итерации. Для квазиньютоновских методов наилучшим алгоритмом поиска вдоль выбранного направления является, по-видимому, метод перебора с возвратами [49, 52]. На первой итерации этот алгоритм использует значения функционала ошибки и его производных, чтобы построить его квадратичную аппроксимацию вдоль направления поиска. Минимум этой аппроксимирующей функции выбирается в качестве приближения к оптимальной точке, в которой оценивается функционал ошибки. Если значение функционала недостаточно мало, то 31

(t)<br />

где: p - это m-ая компонента вектора направления p (t) , соответствующая связи<br />

m<br />

m. Оптимальное значение α (t) определяется путем минимизации функционала<br />

ошибки вдоль направления p (t) при помощи одного из алгоритмов одномерного<br />

поиска.<br />

Из большого арсенала алгоритмов одномерного поиска наилучшим образом<br />

себя зарекомендовал при обучении нейронных сетей при помощи методов<br />

сопряженных градиентов алгоритм Чараламбуса (Charalambous) [50], который<br />

использует кубическую интерполяцию в сочетании с методом деления интервала<br />

на части.<br />

После оптимального шага, сделанного в выбранном направлении, методы<br />

сопряженных градиентов определяют следующее направление поиска как линейную<br />

комбинацию нового направления антиградиента и предыдущего направления<br />

движения:<br />

( t ) ( t ) ( t)<br />

( t−1)<br />

p = −g<br />

+ β p<br />

(25)<br />

Различные методы сопряженных градиентов различаются выбором коэффициента<br />

β (t) . Так, в методе Флетчера-Ривса (Fletcher-Reevs) [51] он равен отношению<br />

квадрата нормы градиента к квадрату нормы градиента на предыдущей<br />

итерации:<br />

( g<br />

( g<br />

)<br />

)<br />

g<br />

g<br />

( t ) T ( t )<br />

( t)<br />

=<br />

( t−1)<br />

T ( t−1)<br />

β (26)<br />

В методе Полака-Рибьеры (Polak-Ribiére) [49] искомый коэффициент равен<br />

скалярному произведению приращения градиента на текущий градиент, деленный<br />

на квадрат нормы градиента на предыдущей итерации:<br />

( Δg<br />

( g<br />

) g<br />

) g<br />

( t)<br />

T ( t )<br />

( t)<br />

=<br />

( t−1)<br />

T ( t−1)<br />

β (27)<br />

Алгоритмы методов сопряженных градиентов требуют не многим больше<br />

памяти, чем градиентные алгоритмы, поэтому могут быть использованы для<br />

обучения нейронных сетей с большим количеством настраиваемых параметров.<br />

30

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!