Моделирование свойств химических соединений с использованием искусственных нейронных сетей и фрагментных дескрипторов (1097754), страница 5
Текст из файла (страница 5)
Действительно, при подстановке формулы (9) в (14)получаем:Δw(jit ) = w (jit +1) − w(jit ) = −η∂E p ( w)∂w ji(15)Формула (15) определяет шаг, который делается в направлении, противоположном градиенту, и поэтому дельта-правило представляет собой метод минимизации функционала ошибки в пространстве весов связей при помощи простейшего варианта градиентного метода скорейшего спуска с фиксированнымзначением параметра скорости обучения.В своем первоначальном виде дельта-правило представляет в настоящеевремя главным образом историческую ценность, поскольку именно с его изло24жения в статье Румельхарта [42] начался современный этап развития всей методологии искусственных нейронных сетей.
Между тем, будучи простейшимградиентным методом оптимизации нелинейных функций, дельта-правило обладает целым рядом серьезных недостатков. Во-первых, теория нелинейной оптимизации гарантирует возможность достижения локального минимума за конечное число шагов лишь при постепенном уменьшении параметра скорости помере обучения, тогда как при фиксированном его значении алгоритм может зациклиться в окрестностях узкого минимума. Во-вторых, в тех случаях, когдапроизводные по различным весам сильно различаются (а именно так обычно ибывает в нейросетях), рельеф функционала ошибки представляет собой узкийовраг, попав в который градиентные методы вместо движения по его дну начинают осциллировать по его стенкам (поскольку практически во всех точкахкроме очень узкой области у самого дна оврага градиент направлен почти перпендикулярно направлению движения к минимуму), что часто приводит к чрезвычайному замедлению и даже к практической остановке процесса обучения(см.
Рис. 4). В-третьих, градиентные методы оптимизации часто застревают вмелких локальных минимумах.Рис. 4. Неэффективность метода скорейшего спуска: градиент направлен почтиперпендикулярно необходимому направлению движения к минимумуОсознание вышеприведенных проблем очень скоро привело к модификации метода и созданию расширенного варианта дельта-правила, в котором частично устранено или, по крайней мере, ослаблено влияние всех трех вышеперечисленных типов недостатков. Достигнуто это путем введения момента инер25ции, приводящего, по мере обучения, к накоплению влияния градиента на изменение весов:Δw(jit ) = −η∂E p ( w)+ μ Δw (jit −1) ,∂w ji(16)где: µ - параметр момента инерции.
Типичное значение этого параметра 0.9, ионо не меняется по ходу обучения. Хотя формально допустимы любые значения в интервале 0≤µ<1, наибольший эффект достигается при его значении,близкой к 1.Объяснить влияние момента инерции на процесс обучения можно следующим образом [18]. Допустим, мы находимся вдалеке от дна оврага в области, где градиент меняется плавно, и потому на протяжении некоторого времениего изменением можно пренебречь. В этом случае изменения весов могут бытьаппроксимированы как:Δw(jit ) = −η ∂E p ( w)∂E p ( w)∂E p ( w)(1 + μ + μ 2 + K) ≈ −⋅≡ −η '∂w ji1 − μ ∂w ji∂w ji(17)Из формулы (17) следует, что вдали от минимума и дна оврага эффективная скорость обучения η’ довольно высока (поскольку параметр µ близок кединице). С другой стороны, вблизи минимума либо дна оврага, когда направление градиента из-за упомянутых выше осцилляций постоянно меняет направление, изменения весов могут быть аппроксимированы как:Δw(t )jiη ∂E p ( w)∂E p ( w)∂E p ( w)2μμKη=−(1 − + − ) ≈ −⋅≡ − ''∂w ji1 + μ ∂w ji∂w ji(18)В этом случае эффективная скорость обучения η’’ значительно понижается, что и дает возможность двигаться по дну оврага и подходить близко к минимумам.
Таким образом, благодаря введению инерции в процесс обучения,появляется возможность адаптивно менять эффективную скорость обучения(см. Рис. 5).26Рис. 5. Введение момента инерции позволяет благодаря появившейся возможности адаптивноменять эффективную скоростьобучения значительно быстреепродвигаться к минимумуБлагодаря введению параметра µ, у нейросети появляется также способность преодолевать мелкие локальные минимумы на гиперповерхности функционала ошибки в пространстве весов. Чтобы понять причину этого, запишемразностное уравнение (15) в виде дифференциального:w& ji = −η∂E ( w)∂w ji(19)Уравнение (19), описывающее обучение нейросети по дельта-правилу, математически эквивалентно дифференциальному уравнению движения неинерционного тела в вязкой среде.
Введение момента соответствует появлению утакого тела инерции (т.е. массы µ), и процесс обучения при помощи расширенного дельта-правила уже описывается дифференциальным уравнением движения инерционного тела в вязкой среде:&& ji + (1 − μ ) w& ji = −ημw∂E ( w)∂w ji(20)Таким образом, гипотетическое тело, уравнение движения которого описывается уравнением (20), может, разогнавшись, преодолевать по инерции небольшие локальные минимумы, застревая лишь в относительно глубоких минимумах функционала ошибки, соответствующих статистически значимымнейросетевым моделям.Тем не менее, не смотря на все успехи, достигнутые при помощи расширенного дельта-правила с включенным параметром момента, данный метод всеравно не лишен недостатков.
Прежде всего, в методе присутствуют две «магические» константы, обоснованный выбор точных значений которых сделать не27возможно. Кроме того, эффективная скорость обучения, хотя и существенновыше, чем у первоначального дельта-правила, но все равно существенно уступает более совершенным методам обучения, рассмотренным ниже. Последнееобстоятельство отчасти связано еще и с тем, что методы обучения, основанныена последовательной адаптации, менее эффективны по сравнению с методамигруппового обучения, каковыми являются все рассматриваемые ниже алгоритмы.1.2.4.5.
Метод эластичного распространения (RPROP)При обучении по методу эластичного распространения для настройки весовых коэффициентов используется только информация о знаках частных производных функции ошибки нейросети [46, 47]. Тем самым, методу RPROP удается избежать замедление темпа обучения на плоских «равнинах» ландшафтафункции ошибки, что характерно для схем, где изменения весов пропорциональны величине градиента. Величина, на которую изменяются весовые коэффициенты, вычисляется следующим образом:⎧∂E (t )⎪ − Δ (ijt ) , если>0∂ w ij⎪⎪(t )Δ w ij( t ) = ⎪⎨ + Δ (ijt ) , если ∂ E < 0∂ w ij⎪⎪ 0 ,иначе⎪⎪⎩,(21)где⎧∂E (t −1) ∂E (t )⎪η + * Δ(ijt −1) , если*>0∂wij∂wij⎪⎪(t ) ⎪∂E (t −1) ∂E (t )(t −1)Δ ij = ⎨η − * Δ ij, если*<0∂wij∂wij⎪⎪ (t −1), иначе⎪ Δ ij⎪⎩где:∂E∂wij,(22)- величина, характеризующая суммарный градиент для всех входныхвекторов из обучающей выборки; η - и η+ - факторы уменьшения и увеличенияскорости обучения; t – счетчик итераций; Δ(ijt ) - величина индивидуального28адаптивно настраиваемого темпа обучения на t-ой итерации для связи, соединяющей нейрон i c нейроном j.Если знак производной по данному весу изменил направление, то это означает, что величина шага по данной координате слишком велика, и поэтомуалгоритм уменьшает ее в η- раз.
В противном же случае шаг увеличивается в η+раз для ускорения обучения вдали от минимума.1.2.4.6. Методы сопряженных градиентовМетоды сопряженных градиентов [48, 49], так же как и в случае расширенного дельта-правила, осуществляют на каждом шаге обучения движение внаправлении, получаемом путем комбинирования направления антиградиента инаправления движения на предыдущем шаге. Принципиальное же отличие методов сопряженных градиентов от последнего заключается в том, что размершага в выбранном направлении не является фиксированным, а определяется накаждой итерации при помощи процедуры одномерного поиска минимума вдольвыбранного направления.Все алгоритмы методов сопряженных градиентов на первой итерации начинают поиск в направлении антиградиента:p (1) = − g (1)⎛ ∂E ( w) ⎞⎜⎟⎜ ∂w j (1) i (1) ⎟⎟= −∇E ( w) = −⎜M⎜ ∂E ( w) ⎟⎜⎜ ∂w⎟⎟⎝ j ( M )i ( M ) ⎠(23)где: p(t) – вектор направления, вдоль которой ведется поиск на t-ой итерации; g(t)– вектор градиента функционала ошибки нейросети в пространстве весов связей на t-ой итерации; j(m) – номер нейрона, из которого выходит связь m; i(m) –номер нейрона, в который входит связь m; M – число связей в нейросети.После выбора направления определяется оптимальный шаг поиска α(t), навеличину которого меняются все веса связей по формуле:w (jt(+m1))i ( m ) = w (jt()m ) i ( m ) + α ( t ) pm( t ) ,(24)29где: pm(t ) - это m-ая компонента вектора направления p(t), соответствующая связиm.
Оптимальное значение α(t) определяется путем минимизации функционалаошибки вдоль направления p(t) при помощи одного из алгоритмов одномерногопоиска.Из большого арсенала алгоритмов одномерного поиска наилучшим образом себя зарекомендовал при обучении нейронных сетей при помощи методовсопряженных градиентов алгоритм Чараламбуса (Charalambous) [50], которыйиспользует кубическую интерполяцию в сочетании с методом деления интервала на части.После оптимального шага, сделанного в выбранном направлении, методысопряженных градиентов определяют следующее направление поиска как линейную комбинацию нового направления антиградиента и предыдущего направления движения:p ( t ) = − g (t ) + β ( t ) p ( t −1)(25)Различные методы сопряженных градиентов различаются выбором коэффициента β(t) .
Так, в методе Флетчера-Ривса (Fletcher-Reevs) [51] он равен отношению квадрата нормы градиента к квадрату нормы градиента на предыдущей итерации:β (t ) =( g (t ) )T g (t )( g (t −1) ) T g ( t −1)(26)В методе Полака-Рибьеры (Polak-Ribiére) [49] искомый коэффициент равен скалярному произведению приращения градиента на текущий градиент, деленный на квадрат нормы градиента на предыдущей итерации:β (t ) =(Δg (t ) )T g (t )( g (t −1) ) T g ( t −1)(27)Алгоритмы методов сопряженных градиентов требуют не многим большепамяти, чем градиентные алгоритмы, поэтому могут быть использованы дляобучения нейронных сетей с большим количеством настраиваемых параметров.301.2.4.7. Квазиньютоновские методы обученияЭта группа методов базируется на Ньютоновском методе аппроксимациифункций, но не требует вычисления вторых производных.−1X t +1 = X t − H t g t ,(28)где: Х – матрица весовых коэффициентов; g – вектор градиента; t – счетчикитераций; H - матрица вторых частных производных (матрица Гессе).⎛ ∂ 2 E ( wi (1) j (1) ,K, wi ( M ) j ( M ) )∂ 2 E ( wi (1) j (1) ,K, wi ( M ) j ( M ) ) ⎞⎜⎟L∂wi2(1) j (1)∂wi (1) j (1) ∂wi ( M ) j ( M )⎜⎟⎜⎟,MOMH=⎜ ∂ 2 E (w2∂ E ( wi (1) j (1) ,K, wi ( M ) j ( M ) ) ⎟i (1) j (1) ,K, wi ( M ) j ( M ) )⎜⎟L⎜⎟∂wi ( M ) j ( M ) ∂wi (1) j (1)∂wi2( M ) j ( M )⎝⎠(29)где: функция i(m) показывает номер нейрона, из которого исходит связь m; j(m)показывает номер нейрона, в который входит связь m; M – число связей (т.е.число настраиваемых параметров) в нейросети.Идея квазиньютоновских методов базируется на возможности аппроксимации кривизны нелинейной оптимизируемой функции без явного формирования ее матрицы Гессе.