Россия |
Стохастические методы обучения нейронных сетей
Обучение Коши
В этом методе при вычислении величины шага распределение Больцмана заменяется на распределение Коши. Распределение Коши имеет, как показано на рис. 7.3, более длинные "хвосты", увеличивая тем самым вероятность больших шагов. В действительности, распределение Коши имеет бесконечную (неопределенную) дисперсию. С помощью такого простого изменения максимальная скорость уменьшения температуры становится обратно пропорциональной линейной величине, а не логарифму, как для алгоритма обучения Больцмана. Это резко уменьшает время обучения. Зависимость может быть выражена следующим образом:


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

где — коэффициент скорости обучения;
—
изменение веса.
Теперь применение метода Монте-Карло становится очень простым.
Для нахождения x в этом случае выбирается случайное число из равномерного
распределения на открытом интервале (необходимо
ограничить функцию тангенса). Оно подставляется в формулу выше в качестве
, и с помощью текущей температуры вычисляется величина
шага.
Метод искусственной теплоемкости
Несмотря на улучшение, достигаемое с помощью метода Коши, время обучения может оказаться все еще слишком большим. Для дальнейшего ускорения этого процесса может быть использован способ, уходящий своими корнями в термодинамику. В этом методе скорость уменьшения температуры изменяется в соответствии с искусственной "теплоемкостью", вычисляемой в процессе обучения.
Во время отжига металла происходят фазовые переходы, связанные с дискретными изменениями уровней энергии. При каждом фазовом переходе может происходить резкое изменение величины, называемой теплоемкостью. Теплоемкость определяется как скорость изменения температуры в зависимости от изменения энергии. Изменения теплоемкости происходят из-за попадания системы в локальные энергетические минимумы.
Искусственные нейронные сети проходят аналогичные фазы в процессе обучения. На границе фазового перехода искусственная теплоемкость может скачкообразно измениться. Эта псевдотеплоемкость определяется как средняя скорость изменения температуры с целевой функцией. В примере шарика в коробке, приведенном выше, сильная начальная встряска делает среднюю величину целевой функции фактически не зависящей от малых изменений температуры, т. е. теплоемкость близка к константе. Аналогично, при очень низких температурах система замерзает в точке минимума, так что теплоемкость снова близка к константе. Ясно, что в каждой из этих областей допустимы сильные изменения температуры, так как не происходит улучшения целевой функции.
При критической температуре небольшое уменьшение ее значения
приводит к большому изменению средней величины целевой функции. Возвращаясь к
аналогии с шариком, при "температуре", когда шарик обладает
достаточной средней энергией, чтобы перейти из в
, но не достаточной для перехода из
в
, средняя величина целевой функции испытывает скачкообразное
изменение. В этих критических точках алгоритм должен изменять температуру
очень медленно, чтобы гарантировать, что система не "замерзнет" случайно в
точке
, оказавшись пойманной в локальный
минимум. Критическая температура может быть обнаружена по резкому
уменьшению искусственной
теплоемкости, т.е. средней скорости изменения температуры с целевой
функцией. При достижении критической
температуры скорость изменения температуры должна замедляться, чтобы
гарантировать сходимость к глобальному минимуму. При всех остальных
температурах может без риска использоваться более высокая скорость снижения
температуры, что приводит к значительному снижению времени обучения.