Файл: Нейронные сети Хопфилда и Хемминга. Назначение, архитектура, принципы работы, достоинства и недостатки.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 26.06.2023

Просмотров: 188

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

1.3. Нейронные сети Хэмминга

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

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

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

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

Ричард Липпман предложил эту сеть в 1987 году. Она была представлена как специализированное запоминающее устройство с гетероассоциацией.

1.4.Архитектура нейронных сетей Хопфилда и Хэмминга

На рис. 1.1 показана сеть с обратными связями, состоящая из двух слоев. Способ представления несколько отличается от использованного в работе Хопфилда, но с функциональной точки зрения является эквивалентом. Нулевой слой распределяет выходы сети обратно на входы, но не выполняет вычислительной функции.

Рис. 1.1. Однослойная сеть с обратными связями. Пунктирные линии обозначают нулевые веса

Каждый нейрон первого слоя вычисляет взвешенную сумму своих входов, давая сигнал NET, который затем с помощью нелинейной функции F преобразуется в сигнал OUT. Эти операции сходны с нейронами других сетей.

Бинарные системы

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


(1.1)

Состояние сети – это просто множество текущих значений сигналов OUT от всех нейронов. В первоначальной сети Хопфилда состояние каждого нейрона менялось в дискретные случайные моменты времени, в последующей работе состояния нейронов могли меняться одновременно. Так как выходом бинарного нейрона может быть только ноль или единица (промежуточных уровней нет), то текущее состояние сети является двоичным числом, каждый бит которого является сигналом OUT некоторого нейрона. [3]

Рис. 1.2. Структурная схема нейронной сети Хопфилда

Сеть Хэмминга многослойная и состоит из различных классов нейронных сетей. Пусть задано m образов, каждый из которых имеет размерность n:

(1.2)

Тогда нейронная сеть Хэмминга будет состоять из сети с прямыми связями, сети Хопфилда и слоя выходных нейронов (рис. 1.3).

Рис. 1.3. Архитектура нейронной сети Хэмминга

Сеть с прямыми связями состоит из n входных распределительных и m выходных нейронных элементов. Она вычисляет меру подобия между входным и эталонным образом, хранящимся в сети. В качестве меры подобия используется количество одинаковых разрядов между входным и эталонным образом. Тогда выходное значение i-го нейрона второго слоя представляет собой меру подобия Pi между входным и i-м эталонным образом: [2]

(1.3)

где di – расстояние Хэмминга между входным и i-м эталонным паттерном.

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

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


2. Принципы работы, достоинства и недостатки

2.1 Принципы работы нейронных сетей Хопфилда и Хэмминга

Функционирование сети Хопфилда легко визуализируется геометрически. На рис. 2.1 показан случай двух нейронов в выходном слое, причем каждой вершине квадрата соответствует одно из четырех состояний системы (00, 01, 10, 11). На рис. 2.2 показана трехнейронная система, представленная кубом (в трехмерном пространстве), имеющим восемь вершин, каждая из которых помечена трехбитовым бинарным числом. В общем случае система с n нейронами имеет 2n различных состояний и представляется n-мерным гиперкубом.

Рис. 2.1. Два нейрона порождают систему с четырьмя состояниями

Рис. 2.2. Три нейрона порождают систему с восемью состояниями

Когда подается новый входной вектор, сеть переходит из вершины в вершину, пока не стабилизируется. Устойчивая вершина определяется сетевыми весами, текущими входами и величиной порога. Если входной вектор частично неправилен или неполон, то сеть стабилизируется в вершине, ближайшей к желаемой.

Устойчивость

Как и в других сетях, веса между слоями в этой сети могут рассматриваться в виде матрицы W. Сеть с обратными связями является устойчивой, если ее матрица симметрична и имеет нули на главной диагонали, т. е. если wij = wji и wii = 0 для всех i. [9]

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

(2.1)

где Е – искусственная энергия сети; wij – вес от выхода нейрона i к входу нейрона j; OUTj – выход нейрона j; Ij – внешний вход нейрона j; Тj – порог нейрона j.

Изменение энергии Е, вызванное изменением состояния j-нейрона, есть


(2.2)

где δOUTj – изменение выхода j-го нейрона.

Допустим, что величина NET нейрона j больше порога. Тогда выражение в скобках будет положительным, а из уравнения (1.1) следует, что выход нейрона j должен измениться в положительную сторону (или остаться без изменения). Это значит, что δOUT может быть только положительным или нулем и δЕ должно быть отрицательным. Следовательно, энергия сети должна либо уменьшиться, либо остаться без изменения.

Далее, допустим, что величина NET меньше порога. Тогда величина δOUTможет быть только отрицательной или нулем. Следовательно, опять энергия должна уменьшиться или остаться без изменения.

И окончательно, если величина NET равна порогу, δj равна нулю и энергия остается без изменения.

Это показывает, что любое изменение состояния нейрона либо уменьшит энергию, либо оставит ее без изменения. Благодаря такому непрерывному стремлению к уменьшению, энергия в конце должна достигнуть минимума и прекратить изменение. По определению такая сеть является устойчивой.

Симметрия сети является достаточным, но не необходимым условием для устойчивости системы. Имеется много устойчивых систем (например, все сети прямого действия), которые ему не удовлетворяют. Можно продемонстрировать примеры, в которых незначительное отклонение от симметрии может приводить к непрерывным осцилляциям. Однако приближенной симметрии обычно достаточно для устойчивости систем.

Ассоциативная память

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

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

Хопфилд разработал ассоциативную память с непрерывными выходами, изменяющимися в пределах от +1 до –1, соответствующих двоичным значениям 0 и 1. Запоминаемая информация кодируется двоичными векторами и хранится в весах согласно следующей формуле: [7]


(2.3)

где m - число запоминаемых выходных векторов; d – номер запоминаемого выходного вектора; OUTi,j – i-компонента запоминаемого выходного вектора.

Это выражение может стать более ясным, если заметить, что весовой массив W может быть найден вычислением внешнего произведения каждого запоминаемого вектора с самим собой (если требуемый вектор имеет n компонент, то эта операция образует матрицу размером n х n) и суммированием матриц, полученных таким образом. Это может быть записано в виде:

(2.4)

где Di – i-й запоминаемый вектор-строка.

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

Непрерывные системы

Рассмотрим модели с непрерывной активационной функцией F, точнее моделирующей биологический нейрон. В общем случае это S-образная или логистическая функция:

(2.5)

где λ – коэффициент, определяющий крутизну сигмоидальной функции. Если λ велико, F приближается к описанной ранее пороговой функции. Небольшие значения λ дают более пологий наклон.

Как и для бинарных систем, устойчивость гарантируется, если веса симметричны, т. е. wij = wji и wii = 0 при всех i. Функция энергии, доказывающая устойчивость подобных систем, была сконструирована, и имеет концептуальное сходство с дискретным случаем.

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

Сети Хопфилда и машина Больцмана

Недостатком сетей Хопфилда является их тенденция стабилизироваться в локальном, а не глобальном минимуме функции энергии. Эта трудность преодолевается в основном с помощью класса сетей, известных под названием машин Больцмана, в которых изменения состояний нейронов обусловлены статистическими, а не детерминированными закономерностями. Существует тесная аналогия между этими методами и отжигом металла, поэтому и сами методы часто называют имитацией отжига. [6]