Опубликован: 13.09.2006 | Уровень: специалист | Доступ: платный | ВУЗ: Новосибирский Государственный Университет
Лекция 10:

Рекуррентные сети как ассоциативные запоминающие устройства

< Лекция 9 || Лекция 10: 12345 || Лекция 11 >

Обучение сети Хопфилда по правилу Хебба

Для одного обучающего вектора x значения весов могут быть вычислены по правилу Хебба

\begin{align*}
w_{ij}=(1/N)x_ix_j,
\end{align*}

поскольку тогда

\begin{align*}
(1/N)(\sum_{j=1}^N x_ix_jx_j)=x_i
\end{align*}

(вследствие биполярных значений элементов вектора x всегда x_j^2 = (\pm 1)^2 = 1 ).

При вводе большего количества обучающих векторов x(k), k=1,2, \ldots,
p веса w_{ij} подбираются согласно обобщенному правилу Хебба

\begin{align*}
w_{ij}=(1/N)\sum_{k=0}^p x_i^{(k)}x_j^{(k)}.
\end{align*}

Важным параметром ассоциативной памяти является ее емкость. Под емкостью понимается максимальное число запомненных образов, которые классифицируются с допустимой погрешностью \varepsilon _{max}. Показано, что при использовании для обучения правила Хебба и при \varepsilon_ {max} =
0.01 (1% компонентов образа отличается от нормального состояния) максимальная емкость памяти составит всего лишь около 13,8% от количества нейронов, образующих ассоциативную память. Столь малая емкость обусловлена тем, что сеть Хебба хорошо запоминает только взаимно ортогональные векторы или близкие к ним.

Обучение сети Хопфилда методом проекций

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

\begin{align*}
WX = X,
\end{align*}

где W - матрица весов сети размерностью N \times
N, а X - прямоугольная матрица размерностью N \times p, составленная из p обучающих векторов x^{(i)},
i=1,2,\ldots, p. Решение такой линейной системы уравнений имеет вид

\begin{align*}
W=XX^+,
\end{align*}

где знак + обозначает псевдоинверсию.

Если обучающие векторы линейно независимы, последнее выражение можно упростить и представить в виде

\begin{equation}
W=X(X^TX)^{-1}X^T.
\end{equation} ( 2)

Здесь псевдоинверсия заменена обычной инверсией квадратной матрицы X^TX размерностью p \times
p.

Выражение (2) можно записать в итерационной форме, не требующей расчета обратной матрицы. В этом случае (2) принимает вид итерационной зависимости от последовательности обучающих векторов x^{(i)}, i=1,2,
\ldots p:

y^{(i)}=(W^{(i-1)}- E)x^{(i)},\\
W^{(i)}=W^{(i-1)} -(y^{(i)} y^{(i)T)}/( y^{(i)T} y^{(i)})

при начальных условиях W^{(0)}=0. В результате предъявления p векторов матрица весов сети принимает значение W=W^{(p)}. Описанный здесь метод называется методом проекций. Применение его увеличивает максимальную емкость сети Хопфилда до N - 1. Увеличение емкости обусловлено тем, что в методе проекций требование ортогональности векторов заменено гораздо менее жестким требованием их линейной независимости.

Модифицированный вариант метода проекций - метод \Delta -проекций — градиентная форма алгоритма минимизации. В соответствии с этим методом веса подбираются с помощью процедуры, многократно повторяемой на всем множестве обучающих векторов:

\begin{align*}
W\leftarrow W+(h/N)(x^{(i)} - Wx^{(i)})x^{(i)T}, h \in (0.7, 0.9).
\end{align*}

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

< Лекция 9 || Лекция 10: 12345 || Лекция 11 >
Ирина Ткаченко
Ирина Ткаченко
Россия, Москва
Николай Ткаченко
Николай Ткаченко
Россия