Рис. 6.2 а. Два нейрона порождают систему с четырьмя состояниями.
Рис. 6.2 б. Три нейрона порождают систему с восемью состояниями.
Когда подается новый входной вектор, сеть переходит из вершины в вершину, пока не стабилизируется. Устойчивая вершина определяется сетевыми весами, текущими входами и величиной порога. Если входной вектор частично неправилен или неполон, то сеть стабилизируется в вершине, ближайшей к желаемой.
Устойчивость
Как и в других сетях, веса между слоями в этой сети могут рассматриваться в виде матрицы W. В работе [2] показано, что сеть с обратными связями является устойчивой, если ее матрица симметрична и имеет нули на главной диагонали, т.е. если Wij = Wji и Wii = 0 для всех i. Устойчивость такой сети может быть доказана с помощью элегантного математического метода. Допустим, что найдена функция, которая всегда убывает при изменении состояния сети. В конце концов эта функция должна достичь минимума и прекратить изменение, гарантируя тем самым устойчивость сети. Такая функция, называемая функцией Ляпунова, для рассматриваемых сетей с обратными связями может быть введена следующим образом:
(6.2)где Е - искусственная энергия сети; wij - вес от выхода нейрона i к входу нейрона j; OUTj - выход нейрона j; Ij - внешний вход нейрона j; Тj - порог нейрона j.
Изменение энергии Е, вызванное изменением состояния j-нейрона, есть
(6.3)где d0UTj- изменение выхода у-го нейрона. Допустим, что величина NET нейрона j больше порога. Тогда выражение в скобках будет положительным, а из уравнения (6.1) следует, что выход нейрона j должен измениться в положительную сторону (или остаться без изменения). Это значит, что d0UTj может быть только положительным или нулем и dЕ должно быть отрицательным.
Следовательно, энергия сети должна либо уменьшиться, либо остаться без изменения. Далее, допустим, что величина NET меньше порога. Тогда величина d0UTj. может быть только отрицательной или нулем. Следовательно, опять энергия должна уменьшиться или остаться без изменения. И окончательно, если величина NET равна порогу, dj равна нулю и энергия остается без изменения. Это показывает, что любое изменение состояния нейрона либо уменьшит энергию, либо оставит ее без изменения. Благодаря такому непрерывному стремлению к уменьшению энергия в конце концов должна достигнуть минимума и прекратить изменение. По определению такая сеть является устойчивой. Симметрия сети является достаточным, но не необходимым условием для устойчивости системы. Имеется много устойчивых систем (например, все сети прямого действия!), которые ему не удовлетворяют. Можно продемонстрировать примеры, в которых незначительное отклонение от симметрии может приводить к непрерывным осцилляциям. Однако приближенной симметрии обычно достаточно для устойчивости систем.
Ассоциативная память
Человеческая память ассоциативна, т.е. некоторое воспоминание может порождать большую связанную с ним область. Например, несколько музыкальных тактов могут вызвать целую гамму чувственных воспоминаний, включая пейзажи, звуки и запахи. Напротив, обычная компьютерная память является локально адресуемой, предъявляется адрес и извлекается информация по этому адресу. Сеть с обратной связью формирует ассоциативную память. Подобно человеческой памяти по заданной части нужной информации вся информация извлекается из «памяти». Чтобы организовать ассоциативную память с помощью сети с обратными связями, веса должны выбираться так, чтобы образовывать энергетические минимумы в нужных вершинах единичного гиперкуба. Хопфилд разработал ассоциативную память с непрерывными выходами, изменяющимися в пределах от +1 до -1, соответствующих двоичным значениям 0 и 1. Запоминаемая информация кодируется двоичными векторами и хранится в весах согласно следующей формуле:
(6.4)где т - число запоминаемых выходных векторов; d - номер запоминаемого выходного вектора; OUTi,d - i -компонента запоминаемого выходного вектора. Это выражение может стать более ясным, если заметить, что весовой массив W может быть найден вычислением внешнего произведения каждого запоминаемого вектора с самим собой (если требуемый вектор имеет п компонент, то эта операция образует матрицу размером п х п) и суммированием матриц, полученных таким образом. Это может быть записано в виде
W = (6.5)
где Dj - i -й запоминаемый вектор-строка. Как только веса заданы, сеть может быть использована для получения запомненного выходного вектора по данному входному вектору, который может быть частично неправильным или неполным. Для этого выходам сети сначала придают значения этого входного вектора. Затем входной вектор убирается и сети предоставляется возможность «расслабиться», опустившись в ближайший глубокий минимум. Сеть идущая по локальному наклону функции энергии, может быть захвачена локальным минимумом, не достигнув наилучшего в глобальном смысле решения.
Непрерывные системы
В работе [7] рассмотрены модели с непрерывной активационной функцией F, точнее моделирующей биологический нейрон. В общем случае это S-образная или логистическая функция
F(x) = 1 / (1+ exp(-lNET)) (6.6)
где l - коэффициент, определяющий крутизну сигмоидальной функции. Если l велико, F приближается к описанной ранее пороговой функции. Небольшие значения l дают более пологий наклон. Как и для бинарных систем, устойчивость гарантируется, если веса симметричны, т.е. wij =wji и wii=0 при всех i. Функция энергии, доказывающая устойчивость подобных систем, была сконструирована, но она не рассматривается здесь из-за своего концептуального сходства с дискретным случаем. Интересующиеся читатели могут обратиться к работе [2] для более полного рассмотрения этого важного предмета. Если l велико, непрерывные системы функционируют подобно дискретным бинарным системам, окончательно стабилизируясь со всеми выходами, близкими нулю или единице, т.е. в вершине единичного гиперкуба. С уменьшением l устойчивые точки удаляются от вершин, последовательно исчезая по мере приближения l к нулю. На рис. 6.3 показаны линии энергетических уровней непрерывной системы с двумя нейронами.
Сети Хопфилда и машина Больцмана
Недостатком сетей Хопфилда является их тенденция стабилизироваться в локальном, а не глобальном минимуме функции энергии. Эта трудность преодолевается в основном с помощью класса сетей, известных под названием машин Больцмана, в которых изменения состоянии нейронов обусловлены статистическими, а не детерминированными закономерностями. Существует тесная аналогия между этими методами и отжигом металла, поэтому и сами методы часто называют имитацией отжига.
Термодинамические системы
Металл отжигают, нагревая его до температуры, превышающей точку его плавления, а затем давая ему медленно остыть. При высоких температурах атомы, обладая высокими энергиями и свободой перемещения, случайным образом принимают все возможные конфигурации. При постепенном снижении температуры энергии атомов уменьшаются, и система в целом стремится принять конфигурацию с минимальной энергией. Когда охлаждение завершено, достигается состояние глобального минимума энергии.
Рис 6.3. Линии энергетических уровней.При фиксированной температуре распределение энергий системы определяется вероятностным фактором Больцмана.
ехр(-E / kT),
где Е - энергия системы; k - постоянная Больцмана; Т -температура. Отсюда можно видеть, что имеется конечная вероятность того, что система обладает высокой энергией даже при низких температурах. Сходным образом имеется небольшая, но вычисляемая вероятность, что чайник с водой на огне замерзнет, прежде чем закипеть. Статистическое распределение энергий позволяет системе выходить из локальных минимумов энергии. В то же время вероятность высокоэнергетических состояний быстро уменьшается со снижением температуры. Следовательно, при низких температурах имеется сильная тенденция занять низкоэнергетическое состояние.
Статистические сети Хопфилда
Если правила изменения состояний для бинарной сети Хопфилда заданы статистически, а не детерминировано, как в уравнении (6.1), то возникает система, имитирующая отжиг. Для ее реализации вводится вероятность изменения веса как функция от величины, на которую выход нейрона OUT превышает его порог. Пусть