Каллан Р. Основные концепции нейронных сетей
6.2. Сети, использующие статистический подход

До сих пор все рассмотренные нами модели нейронных сетей использовали детерминированные алгоритмы обучения. Слово "детерминированные" здесь означает, что при необходимости обновления весовых значений или значений активности элемента соответствующие величины изменений могут быть определены в результате непосредственного прямого вычисления. Даже в сети Хопфилда, где обновляемый элемент выбирается случайно, сами изменения являются детерминированными, поскольку если элемент уже выбран, новое значение его активности может быть вычислено вполне однозначно. В противоположность этому, для стохастического алгоритма обучения в любой момент времени мы остаемся в неведении относительно того, как изменится состояние сети ("состояние" в данном случае означает набор текущих весовых значений и активность элемента). Другими словами, по информации о текущем состоянии предсказать следующее состояние оказывается невозможным. Например, при использовании стохастического алгоритма обновления состояния элемента в сети Хопфилда для принятия решения о том, должен данный элемент перейти в новое вычисленное состояние или нет, используется функция распределения вероятностей. Поэтому даже когда элемент выбран для обновления, непосредственного обновления его состояния может и не произойти. Но, хотя мы и не можем сказать, как стохастическая сеть будет реагировать в каждый конкретный момент времени, мы в общем на самом деле знаем, как будет вести себя сеть по прошествии достаточно долгого периода времени.

6.2.1. Метод модельной "закалки"

Метод модельной "закалки" является методом, часто используемым при решении проблем оптимизации. Решение рассматриваемой проблемы представляется в виде решения задачи минимизации некоторой функции стоимости. Функция стоимости определяется в терминах глобальной энергии сети. Например, определенная стоимость соответствуй каждому маршруту, который принимает решение пройти продавец, чтобы посетить своих клиентов в разных городах. В данном случае стоимость может быть выражена в терминах расстояния, которое предстоит преодолеть, и тогда функция стоимости возвратит длину выбранного маршрута. Маршруты с меньшим расстоянием будут иметь меньшую стоимость. Самым оптимальным маршрутом в данном случае будет маршрут наименьшей длины. Иногда невозможно найти оптимальное решение, тогда следует искать разумно оптимальное решение. Модельная закалка

Метод модельной "закалки" базируется на аналогии с процессом закалки металла. Когда металл, подвергается закалке, он нагревается почти до точки плавления, а потом медленно охлаждается до комнатной температуры. Процесс закалки делает металл более гибким, так что становится возможным придать ему нужную форму без изломов. Когда металл нагрет до высокой температуры, атомы двигаются хаотически. Если металл быстро охладить, атомы застынут в случайных положениях. Если же металл, напротив, охлаждать медленно, атомы будут стремиться выстроиться регулярным образом. Поэтому основой всего процесса является управление графиком снижения температуры.

Аналогию с функцией оптимизации иллюстрируют рис. 6.1 и 6.2. На рис. 6.1 показана кривая, заданная некоторой гипотетической функцией одной переменной. Эта функция не является гладкой и имеет несколько (локальных) минимумов. Процедура для нахождения глобального минимума является очень простой. Сначала выбирается диапазон, в котором будет оцениваться функция. Значения функции оцениваются в некотором числе случайно выбираемых точек, при этом запоминается наименьшее из них. Диапазон затем уменьшается, и значения функции оцениваются снова в некотором числе случайно выбираемых точек. Снова сохраняется наименьшее из этих значений. Процесс повторяется снова и снова с постепенным уменьшением диапазона.

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

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

p = exp( - DE/T)
(6.1)
где DE — изменение энергии, а Т обозначает температуру.


Модельная закалка