Смекни!
smekni.com

Нейрокомпьютерные системы (стр. 14 из 32)

T(t) = T0/log(1 + t), (5.4)

где T(t) - искусственная температура как функция вре­мени; Т0 - начальная искусственная температура; t -искусственное время. Этот разочаровывающий результат предсказывает очень медленную скорость охлаждения (и данные вычисле­ния). Этот вывод подтвердился экспериментально. Машины Больцмана часто требуют для обучения очень большого ресурса времени.

Обучение Коши

В работе [6] развит метод быстрого обучения подоб­ных систем. В этом методе при вычислении величины шага распределение Больцмана заменяется на распределение Коши. Распределение Коши имеет, как показано на рис. .5.3, более длинные «хвосты», увеличивая тем самым вероятность больших шагов. В действительности распреде­ление Коши имеет бесконечную (неопределенную) диспер­сию. С помощью такого простого изменения максимальная скорость уменьшения температуры становится обратно пропорциональной линейной величине, а не логарифму, как для алгоритма обучения Больцмана. Это резко уменьшает время обучения. Эта связь может быть выражена следующим образом:

T(t) = T0/(1 + t) (5.5)

Распределение Коши имеет вид

P(x) = T(t) / [T(t)2 + x2] ,

где Р(х) есть вероятность шага величины х.

Рис. 5.3. Распределение Коши и распределение Больцмана.

В уравнении (5.6) Р(х) может быть проинтегрирована стандартными методами. Решая относительно х, получаем

xc = р{T(t)tg[P(х)]), (5.7)

где р - коэффициент скорости обучения; хc - изменение веса. Теперь применение метода Мойте Карло становится очень простым. Для нахождения х в этом случае выбирает­ся случайное число из равномерного распределения на открытом интервале (- p/2, p/2) (необходимо ограничить функцию тангенса). Оно подставляется в формулу (5.7) в качестве Р(х), и с помощью текущей температуры вычисля­ется величина шага.

Метод искусственной теплоемкости

Несмотря на улучшение, достигаемое с помощью мето­да Коши, время обучения может оказаться все еще слишком большим. Способ, уходящий своими корнями в термодинами­ку, может быть использован для ускорения этого процес­са. В этом методе скорость уменьшения температуры изменяется в соответствии с искусственной «теплоемкостью», вычисляемой в процессе обучения. Во время отжига металла происходят фазовые перехо­ды, связанные с дискретными изменениями уровней энергии. При каждом фазовом переходе может иметь место резкое изменение величины, называемой теплоемкостью. Теплоемкость определяется как скорость изменения темпе­ратуры с энергией. Изменения теплоемкости происходят из-за попадания системы в локальные энергетические минимумы. Искусственные нейронные сети проходят аналогичные фазы в процессе обучения. На границе фазового перехода искусственная теплоемкость может скачкообразно изме­ниться. Эта псевдотеплоемкость определяется как средняя скорость изменения температуры с целевой функцией. В примере шарика в коробке сильная начальная встряска делает среднюю величину целевой функции фактически не зависящей от малых изменений температуры, т.е. теплоем­кость близка к константе. Аналогично при очень низких температурах система замерзает в точке минимума, так что теплоемкость снова близка к константе. Ясно, что в каждой из этих областей допустимы сильные изменения температуры, так как не происходит улучшения целевой функции, При критических температурах небольшое уменьшение температуры приводит к большому изменению средней вели­ чины целевой функции. Возвращаясь к аналогии с шариком, при «температуре», когда шарик обладает достаточной средней энергией, чтобы перейти из А в В, но недоста­точной для перехода из В в А, средняя величина целевой функции испытывает скачкообразное изменение. В этих критических точках алгоритм должен изменять температуру очень медленно, чтобы гарантировать, что система не замерзнет случайно в точке А, оказавшись пойманной в локальный минимум. Критическая температура может быть обнаружена по резкому уменьшению искусственной теплоем­кости, т.е. средней скорости изменения температуры с целевой функцией. При достижении критической температуры скорость изменения температуры должна замедляться, чтобы гарантировать сходимость к глобальному минимуму.

ОБРАТНОЕ РАСПРОСТРАНЕНИЕ И ОБУЧЕНИЕ КОШИ

Обратное распространение обладает преимуществом прямого поиска, т.е. веса всегда корректируются в на­правлении, минимизирующем функцию ошибки. Хотя время обучения и велико, оно существенно меньше, чем при случайном поиске, выполняемом машиной Коши, когда нахо­дится глобальный минимум, но многие шаги выполняются в неверном направлении, что отнимает много времени. Соединение этих двух методов дало хорошие резуль­таты [7]. Коррекция весов, равная сумме, вычисленной алгоритмом обратного распространения, и случайный шаг, задаваемый алгоритмом Коши, приводят к системе, которая сходится и находит глобальный минимум быстрее, чем система, обучаемая каждым из методов в отдельности. Простая эвристика используется для избежания паралича сети, который может иметь место как при обратном рас­пространении, так и при обучении по методу Коши.

Трудности, связанные с обратным распространением

Несмотря на мощь, продемонстрированную методом обратного распространения, при его применении возникает ряд трудностей, часть из которых, однако, облегчается благодаря использованию нового алгоритма.

Сходимость. В работе [5] доказательство сходимости дается на языке дифференциальных уравнений в частных производных, что делает его справедливым лишь в том случае, когда коррекция весов выполняется с помощью бесконечно малых шагов. Так как это ведет к бесконечному времени сходимости, то оно теряет силу в практичес­ких применениях. В действительности нет доказательства, что обратное распространение будет сходиться при конеч­ном размере шага. Эксперименты показывают, что сети обычно обучаются, но время обучения велико и непредска­зуемо.

Локальные минимумы. В обратном распространении для коррекции весов сети используется градиентный спуск, продвигающийся к минимуму в соответствии с локальным наклоном поверхности ошибки. Он хорошо работает в слу­чае сильно изрезанных невыпуклых поверхностей, которые встречаются в практических задачах. В одних случаях локальный минимум является приемлемым решением, в дру­гих случаях он неприемлем. Даже после того как сеть обучена, невозможно ска­зать, найден ли с помощью - обратного распространения глобальный минимум. Если решение неудовлетворительно, приходится давать весам новые начальные случайные зна­чения и повторно обучать сеть без гарантии, что обуче­ние закончится на этой попытке или что глобальный мини­мум вообще будет когда либо найден.

Паралич. При некоторых условиях сеть может при обучении попасть в такое состояние, когда модификация весов не ведет к действительным изменениям сети. Такой «паралич сети» является серьезной проблемой: один раз возникнув, он может увеличить время обучения на несколько поряд­ков. Паралич возникает, когда значительная часть нейро­нов получает веса, достаточно большие, чтобы дать боль­шие значения NET. Это приводит к тому, что величина OUT приближается к своему предельному значению, а производ­ная от сжимающей функции приближается к нулю. Как мы видели, алгоритм обратного распространения при вычисле­нии величины изменения веса использует эту производную в формуле в качестве коэффициента. Для пораженных пара­личом нейронов близость производной к нулю приводит к тому, что изменение веса становится близким к нулю. Если подобные условия возникают во многих нейронах сети, то обучение может замедлиться до почти полной остановки. Нет теории, способной предсказывать, будет ли сеть парализована во время обучения или нет. Эксперименталь­но установлено, что малые размеры шага реже приводят к параличу, но шаг, малый для одной задачи, может ока­заться большим для другой. Цена же паралича может быть высокой. При моделировании многие часы машинного време­ни могут уйти на то, чтобы выйти из паралича.

Трудности с алгоритмом обучения Коши

Несмотря на улучшение скорости обучения, даваемое машиной Коши по сравнению с машиной Больцмана, время сходимости все еще может в 100 раз превышать время для алгоритма обратного распространения. Отметим, что сете­вой паралич особенно опасен для алгоритма обучения Коши, в особенности для сети с нелинейностью типа логи­стической функции. Бесконечная дисперсия распределения Коши приводит к изменениям весов неограниченной величи­ны. Далее, большие изменения весов будут иногда прини­маться даже в тех случаях, когда они неблагоприятны, часто приводя к сильному насыщению сетевых нейронов с вытекающим отсюда риском паралича.

Комбинирование обратного распространения с обучением Коши

Коррекция весов в комбинированном алгоритме, ис­пользующем обратное распространение и обучение Коши, состоит из двух компонент: (1) направленной компоненты, вычисляемой с использованием алгоритма обратного рас­пространения, и (2) случайной компоненты, определяемой распределением Коши. Эти компоненты вычисляются для каждого веса, и их сумма является величиной, на которую изменяется вес. Как и в алгоритме Коши, после вычисления изменения веса вычисляется целевая функция. Если имеет место улучше­ние, изменение сохраняется. В противном случае оно

сохраняется с вероятностью, определяемой распределением Больцмана. Коррекция веса вычисляется с использованием пред­ставленных ранее уравнений для каждого из алгоритмов: