Читайте также:
|
|
Алгоритм обучения сети Хопфилда существенно отличается от таких классических алгоритмов обучения перцептронов, какметод коррекции ошибки или метод обратного распространения ошибки. Отличие заключается в том, что вместо последовательного приближения к нужному состоянию с вычислением ошибок, все коэффициенты матрицы рассчитываются по одной формуле, за один цикл, после чего сеть сразу готова к работе. Вычисление коэффициентов основано на следующем правиле: для всех запомненных образов Xi матрица связи должна удовлетворять уравнению
Xi = WXi
поскольку именно при этом условии состояния сети Xi будут устойчивы — попав в такое состояние, сеть в нём и останется.
Некоторые авторы относят сеть Хопфилда к обучению без учителя. Но это неверно, так как обучение без учителя предполагает отсутствие информации о том, к каким классам нужно относить стимулы. Для сети Хопфилда без этой информации нельзя настроить весовые коэффициенты, поэтому здесь можно говорить лишь о том, что такую сеть можно отнести к классу оптимизирующих сетей (фильтров). Отличительной особенностью фильтров является то, что матрица весовых коэффициентов настраивается детерминированным алгоритмом раз и навсегда, и затем весовые коэффициенты больше не изменяются. Это может быть удобно для физического воплощения такого устройства, так как на схемотехническом уровне реализовать устройство с переменными весовыми коэффициентами на порядок сложнее.
В сети Хопфилда есть обратные связи и поэтому нужно решать проблему устойчивости. Веса между нейронами в сети Хопфилда могут рассматриваться в виде матрицы взаимодействий W. В работе Cohen, Grossberg[2] показано, что сеть с обратными связями является устойчивой, если её матрица симметрична и имеет нули на главной диагонали. Имеется много устойчивых систем, например, все сети прямого распространения, а также современные рекуррентные сети Джордана и Элмана, для которых не обязательно выполнять условие на симметрию. Но это происходит вследствие того, что на обратные связи наложены другие ограничения. В случае сети Хопфилда условие симметричности является необходимым, но не достаточным, в том смысле, что на достижение устойчивого состояния влияет ещё и режим работы сети. Ниже будет показано, что только асинхронный режим работы сети гарантирует достижение устойчивого состояния сети, в синхронном случае возможно бесконечное переключение между двумя разными состояниями (такая ситуация называется динамическиматтрактором, в то время как устойчивое состояние принято называть статическим аттрактором).
Запоминаемые векторы должны иметь бинарный вид. После этого происходит расчёт весовых коэффициентов по следующей формуле:
wij =1 N ∑ d =1.. mXidXjd
где N — размерность векторов, m — число запоминаемых выходных векторов, d — номер запоминаемого выходного вектора, Xij — i-я компонента запоминаемого выходного j-го вектора.
Это выражение может стать более ясным, если заметить, что весовая матрица W может быть найдена вычислением внешнего произведения каждого запоминаемого вектора с самим собой и суммированием матриц, полученных таким образом. Это может быть записано в виде
W =1 N ∑ iXiXTi
где Xi — i-й запоминаемый вектор-столбец.
Расчёт этих весовых коэффициентов и называется обучением сети.
Как только веса заданы, сеть может быть использована для получения запомненного выходного вектора по данному входному вектору, который может быть частично неправильным или неполным. Для этого выходам сети сначала придают значения этого начального вектора (поэтому обозначение на схеме сети входных синапсов в явном виде носит чисто условный характер). Затем сеть последовательно меняет свои состояния согласно формуле:
Xi +1= F (WXi)
где F — активационная функция, Xi и Xi +1 — текущее и следующее состояния сети, до тех пор, пока состояния Xi и Xi +1не совпадут (или, в случае синхронного режима работы, не совпадут состояния Xi −1 с Xi +1 и одновременно Xi −2 с Xi). Именно этот процесс называется конвергенцией сети. Полученное устойчивое состояние Xi (статический аттрактор), или, возможно, в синхронном случае пара { Xi, Xi +1} (динамический аттрактор), является ответом сети на данный входной образ.
Работа сети в режиме фильтрации (восстановление повреждённых образов)
Пороговая функция, реализуемая нейроном сети Хопфилда.
Так как сети с обратными связями имеют пути, передающие сигналы от выходов к входам, то отклик таких сетей является динамическим, то есть после приложения нового входа вычисляется выход и, передаваясь по сети обратной связи, модифицирует вход. Затем выход повторно вычисляется, и процесс повторяется снова и снова. Для устойчивой сети последовательные итерации приводят к все меньшим изменениям выхода, пока в конце концов выход не становится постоянным. Для некоторых сетей процесс никогда не заканчивается, такие сети называют неустойчивыми.
Как только веса заданы, сеть может быть использована для получения запомненного выходного вектора по данному входному вектору, который может быть частично неправильным или неполным. Для этого выходам сети сначала придают значения этого начального вектора. Затем сеть последовательно меняет свои состояния согласно формуле:
X (t +1)= F (WX (t))
где F — активационная функция, X (t) и X (t +1) — текущее и следующее состояния сети, до тех пор, пока состояния X (t) и X (t +1) не совпадут (или, в случае синхронного режима работы, не совпадут состояния X (t −1) с X (t +1) и одновременно X (t −2) с X (t)). Именно этот процесс называется конвергенцией сети.
Это же можно описать так называемым локальным полем ai действующим на нейрон xi со стороны всех остальных нейронов сети: ai (t)=∑ Nj =1, j ≠ iwjixj (t −1).
После расчёта локального поля нейрона ai (t) это значение используется для расчёта значения выхода через функцию активации, которая в данном случае является пороговой (с нулевым порогом). Соответственно, значение выхода нейрона і в текущий момент времени xi (t) рассчитывается по формуле:
xi (t)= sign ⎛⎝∑ j =1, j ≠ iNwjixj (t −1)⎞⎠,
где wij — весовой коэффициент между нейронами i и j, xj (t −1) — значения выходов нейрона j в предыдущий момент времени.
Во время работы сети Хопфилда признаком нахождения решения является момент, когда достигается аттрактор, статический (когда на каждом следующем шаге повторяется устойчивое состояние X (t)) или, возможно, динамический (когда до бесконечности чередуются два разных состояния { X (t), X (t +1)}). Это конечное состояние сети и является её реакцией на данный образ.
Обычно ответом является такое устойчивое состояние, которое совпадает с одним из запомненных при обучении векторов, однако при некоторых условиях (в частности, при слишком большом количестве запомненных образов) результатом работы может стать так называемый ложный аттрактор («химера»), состоящий из нескольких частей разных запомненных образов, а также в синхронном режиме сеть может прийти к динамическому аттрактору. Обе эти ситуации в общем случае являются нежелательными, поскольку не соответствуют ни одному запомненному вектору — а соответственно, не определяют класс, к которому сеть отнесла входной образ.
Для сети Хопфилда могут существовать две модификации, отличающиеся по времени передачи сигнала: асинхронный и синхронный режимы.
Дата добавления: 2015-11-14; просмотров: 88 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Сеть Хопфилда | | | Устойчивость сети в процессе работы |