Россия |
Решение задач нейронными сетями
Сети Хопфилда
Перейдем от одноэлементных систем к нейронным сетям. Пусть - вес связи, ведущей от j -го нейрона к i -му (полезно обратить внимание на порядок индексов). Для полносвязных сетей определены значения
при всех i,j, для других архитектур связи, ведущие от j -го нейрона к i -му для некоторых i,j не определены. В этом случае положим
.
В данном разделе речь пойдет в основном о полносвязных сетях. Пусть на выходах всех нейронов получены сигналы xj ( j -номер нейрона). Обозначим x вектор этих выходных сигналов. Прохождение вектора сигналов x через сеть связей сводится к умножению матрицы ( ) на вектор сигналов x. В результате получаем вектор входных сигналов нелинейных элементов нейронов:
.
Это соответствие " прохождение сети умножение матрицы связей на вектор сигналов " является основой для перевода обычных численных методов на нейросетевой язык и обратно. Практически всюду, где основной операцией является умножение матрицы на вектор, применимы нейронные сети. С другой стороны, любое устройство, позволяющее быстро осуществлять такое умножение, может использоваться для реализации нейронных сетей.
В частности, вычисление градиента квадратичной формы



Что можно сделать, если мы умеем вычислять градиент квадратичной формы?
В первую очередь, можно методом наискорейшего спуска искать точку минимума многочлена второго порядка. Пусть задан такой многочлен: . Его градиент равен
. Этот вектор может быть получен при прохождении вектора x через сеть с весами связей
при условии, что на входной сумматор каждого нейрона по дополнительной связи веса b подается стандартный единичный сигнал.
Зададим теперь функционирование сети формулой
![]() |
( 8) |
Нелинейных элементов вовсе не нужно! Каждый ( j -й) нейрон имеет входные веса для связей с другими нейронами (
), вес
для постоянного единичного входного сигнала и вес
для связи нейрона с самим собой (передачи на него его же сигнала с предыдущего шага). Выбор шага h>0 может вызвать затруднение (он зависит от коэффициентов минимизируемого многочлена). Есть, однако, простое решение: в каждый момент дискретного времени T выбирается свое значение
. Достаточно, чтобы шаг стремился со временем к нулю, а сумма шагов - к бесконечности (например,
, или
).
Итак, простая симметричная полносвязная сеть без нелинейных элементов может методом наискорейшего спуска искать точку минимума квадратичного многочлена.
Решение системы линейных уравнений сводится к минимизации многочлена

Поэтому решение системы может производиться нейронной сетью. Простейшая сеть, вычисляющая градиент этого многочлена, не полносвязна, а состоит из двух слоев: первый с матрицей связей A, второй - с транспонированной матрицей . Постоянный единичный сигнал подается на связи с весами
на первом слое. Минимизация этого многочлена, а значит и решение системы линейных уравнений, может проводиться так же, как и в общем случае, в соответствии с формулой
. Усовершенствованные варианты алгоритма решения можно найти в работах Сударикова [2.8].
Небольшая модификация позволяет вместо безусловного минимума многочлена второго порядка P искать точку условного минимума с условиями для
, то есть точку минимума P в ограничении на аффинное многообразие, параллельное некоторым координатным плоскостям. Для этого вместо формулы

следует использовать:


![]() |
( 9) |
