Адаптивная ДАП
В версиях ДАП, рассматриваемых до сих пор, весовая матрица вычисляется в виде суммы произведений пар векторов. Такие вычисления полезны, поскольку они демонстрируют функции, которые может выполнять ДАП. Однако это определенно не тот способ, посредством которого производится определение весов нейронов мозга.
Адаптивная ДАП изменяет свои веса в процессе функционирования. Это означает, что подача на вход сети обучающего набора входных векторов заставляет ее изменять энергетическое состояние до получения резонанса. Постепенно кратковременная память превращается в долговременную память, настраивая сеть в ходе ее функционирования. В процессе обучения векторы подаются на слой
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
Так как доказано, что непрерывная ДАП является стабильной независимо от значения весов, ожидается, что медленное изменение ее весов не должно нарушить этой стабильности.
Простейший обучающий алгоритм использует правило Хэбба, в котором изменение веса пропорционально уровню активации его нейрона- источника и уровню активации нейрона-приемника. В символьной записи это выглядит следующим образом:
![](../../../../img/tex/6/3/6/6362716e219bb42ae69ea6d012388911.png)
где
![](../../../../img/tex/5/8/8/5886afd6d2df848e8288207d89ad4ace.png)
![](../../../../img/tex/6/0/4/6048f1e10201f48f0650ed59edaedd21.png)
![](../../../../img/tex/e/5/c/e5c56b3f413c625963df2cd10182744f.png)
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/b/0/7/b073ed756487b0aca7bdd1de344b281a.png)
![](../../../../img/tex/6/0/4/6048f1e10201f48f0650ed59edaedd21.png)
![](../../../../img/tex/4/3/e/43e89e1e8d00188da1c584bda07fbad3.png)
Емкость памяти
Как и сети Хопфилда, ДАП имеет ограничения на максимальное количество ассоциаций, которые она может точно воспроизвести. Если этот лимит превышен, сеть может выработать неверный выходной сигнал, воспроизводя ассоциации, которым не обучена.
Б. Коско получил оценки, в соответствии с которыми количество запомненных ассоциаций не может превышать количества нейронов в меньшем слое. Для этого емкость памяти должна быть максимизирована посредством специального кодирования, при котором количество компонент со значениями
![](../../../../img/tex/d/1/d/d1da40811ba5af961c454b307c6cfc2f.png)
![](../../../../img/tex/1/0/3/1037c52e28b1cefc100063ed0101df9d.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/3/6/2/362171cd7ceee90858b971b5c5151c8e.png)
![](../../../../img/tex/b/5/b/b5b31ff78fdd837e6c2ebed0a841bbad.png)
![](../../../../img/tex/5/9/7/5971fcd33613bad38e40c73b8d8d05a6.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/0/9/0/0905223bbc6f1924fec60237628a78c0.png)
Известно, что ДАП может иметь до
![](../../../../img/tex/c/3/0/c303c4d6ff6a248027362f54c95f17f8.png)
![](../../../../img/tex/3/d/2/3d2aaa9d1086426997ff3990331eb40f.png)
![](../../../../img/tex/5/d/c/5dc44511f44c3873768b7ce0b3cae3b8.png)
где
![](../../../../img/tex/5/2/0/52049adb878f2d44538441a004bff231.png)
![](../../../../img/tex/f/c/2/fc28cef66fa05e7bc7947aaa3878ce46.png)
С помощью выбора соответствующего порога для каждого нейрона, количество стабильных состояний может быть сделано любым в диапазоне от 1 до
![](../../../../img/tex/b/5/b/b5b31ff78fdd837e6c2ebed0a841bbad.png)
![](../../../../img/tex/b/5/b/b5b31ff78fdd837e6c2ebed0a841bbad.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/b/e/a/beae9f27216dab5ec8f836dd2ce2b280.png)
![](../../../../img/tex/1/0/e/10ef7bf01f7826b3faec19fc4f6a9928.png)
![](../../../../img/tex/1/0/3/1037c52e28b1cefc100063ed0101df9d.png)
Например, если
![](../../../../img/tex/9/e/e/9ee4bdd71344f1b7c6a12c6ef5b09bbc.png)
![](../../../../img/tex/7/5/e/75ef023b8a1909e682519c6e0999043a.png)
![](../../../../img/tex/a/2/4/a24d306cc272b752cb45ffd77b7a629a.png)
Ограничение количества единиц во входных векторах представляет серьезную проблему, тем более, что теория, которая позволяет перекодировать произвольный набор векторов в такой "разреженный" набор, отсутствует. Возможно, однако, что еще более серьезной является проблема некорректной сходимости. Суть этой проблемы заключается в том, что сеть может не производить точных ассоциаций вследствие природы поля притяжения; об ее форме известно очень немногое. Это означает, что ДАП не является ассоциатором по отношению к ближайшему соседнему образу. В действительности она может производить ассоциации, имеющие слабое отношение ко входному вектору. Как и в случае гомогенных ДАП, могут встречаться ложные стабильные состояния, а об их количестве и природе известно крайне мало.
Несмотря на эти проблемы, ДАП остается объектом интенсивных исследований. Основная привлекательность ДАП заключается в ее простоте. Кроме того, она может быть реализована в виде СБИС (либо аналоговых, либо цифровых), что делает ее потенциально недорогой. Так как наши знания постоянно растут, ограничения ДАП могут быть сняты. В этом случае как в экспериментальных, так и в практических приложениях ДАП будет являться весьма перспективным и полезным классом искусственных нейронных сетей.
Кодировка ассоциаций
Обычно сеть обучается распознаванию множества образов. Обучение производится с использованием обучающего набора, состоящего из пар векторов
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/e/2/b/e2b9c5a14189069e362cfa5199a5a8cb.png)
Предположим, что все запомненные образы представляют собой двоичные векторы. Это ограничение будет выглядеть менее строгим, если вспомнить, что все содержимое Библиотеки Университета может быть закодировано в один очень длинный двоичный вектор. Показано, что более высокая производительность достигается при использовании биполярных векторов. При этом векторная компонента, большая чем 0, становится
![](../../../../img/tex/d/1/d/d1da40811ba5af961c454b307c6cfc2f.png)
![](../../../../img/tex/1/0/3/1037c52e28b1cefc100063ed0101df9d.png)
Предположим, что требуется обучить сеть с целью запоминания трех пар двоичных векторов, причем векторы
![](../../../../img/tex/a/3/c/a3c52966cfc18dcc553f41c4efa44c42.png)
![](../../../../img/tex/8/e/b/8eb30e2b9367857b8be226cee55de52d.png)
Исходный вектор | Ассоциированный вектор | Бинарная версия | |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
![]() | ![]() | ![]() | ![]() |
Вычисляем весовую матрицу:
![](../../../../img/tex/2/d/e/2de40aa3cad96ba9ea018f7a386ca561.png)
![](../../../../img/tex/f/0/2/f02295e285d4243417da443ebe432d2f.png)
Далее, прикладывая входной вектор
![](../../../../img/tex/3/9/3/3938bc2cd140dc44435438c7d9f3679b.png)
![](../../../../img/tex/0/9/6/09688a10a38e089656daaf7388859341.png)
![](../../../../img/tex/0/7/a/07a7c3db0e0132308489878c59f0eff1.png)
Используя пороговое правило,
![](../../../../img/tex/a/6/4/a64ec4c645dfe78d1d3e32961b56ba49.png)
![](../../../../img/tex/7/6/6/76646a586d356783f72b9ff43badbbdc.png)
![](../../../../img/tex/c/1/b/c1bf8d4afb3336f4f61d573a1b373c16.png)
![](../../../../img/tex/3/8/7/38751d5ff7af3ce2ee0858c58b535693.png)
![](../../../../img/tex/e/3/b/e3b8abfeb4282e1355f75d5fb027afe5.png)
![](../../../../img/tex/1/c/c/1cc47a725329c0b578d5ed913b89b837.png)
вычисляем
![](../../../../img/tex/6/c/c/6cc950b9e36d446b6ee005d8d6e305f9.png)
что является требуемой ассоциацией. Затем, подавая вектор
![](../../../../img/tex/2/f/4/2f41b32352840271802cac4423d71618.png)
через обратную связь на вход первого слоя к
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/f/2/4/f2467c2b6ef96b2501cac85a203c6190.png)
что дает значение
![](../../../../img/tex/4/3/b/43b0c5c22c6fb8250465bd8868811c15.png)
![](../../../../img/tex/e/5/2/e52372adc603dc9f5a58e8d96e5816da.png)
Этот пример показывает, как входной вектор
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
с использованием матрицы
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
ДАП обладает способностью к обобщению. Например, если незавершенный или частично искаженный вектор подается в качестве
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
Системы с обратной связью могут иметь тенденцию к колебаниям; это означает, что они могут переходить от состояния к состоянию, никогда не достигая стабильности. Доказано, что все ДАП безусловно стабильны при любых значениях весов сети. Это важное свойство возникает из отношения транспонирования между двумя весовыми матрицами и означает, что любой набор ассоциаций может быть использован без риска возникновения нестабильности.
Существует взаимосвязь между ДАП и рассмотренными на предыдущих лекциях сетями Хопфилда. Если весовая матрица
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
является квадратной и симметричной, то
![](../../../../img/tex/6/4/e/64e2b15d37456a17ea489415210c2941.png)
Конкурирующая ДАП
Во многих конкурирующих нейронных системах наблюдаются некоторые виды конкуренции между нейронами. В нейронах, обрабатывающих сигналы от сетчатки, латеральное торможение приводит к увеличению выхода наиболее высокоактивных нейронов за счет соседних. Такие системы увеличивают контрастность, поднимая уровень активности нейронов, подсоединенных к яркой области сетчатки, и в то же время еще более ослабляя выходы нейронов, подсоединенных к темным областям. В ДАП конкуренция реализуется с помощью взаимного соединения нейронов внутри каждого слоя посредством дополнительных связей. Веса этих связей формируют другую весовую матрицу с положительными значениями элементов главной диагонали и отрицательными значениями остальных элементов. Теорема Кохонена-Гроссберга показывает, что такая сеть является безусловно стабильной, если весовые матрицы симметричны. На практике сети обычно стабильны даже в случае отсутствия симметрии весовых матриц. Однако неизвестно, какие особенности весовых матриц могут привести к неустойчивости функционирования сети.
Непрерывная ДАП
В предшествующем обсуждении нейроны в слоях 1 и 2 рассматривались как синхронные; каждый нейрон обладает памятью, причем все нейроны изменяют состояния одновременно под воздействием импульса от центральных часов. В асинхронной системе любой нейрон свободен изменять состояние в любое время, когда его вход предписывает это сделать.
Кроме того, при определении функции активации нейрона использовался простой порог, образуя разрывность передаточной функции нейронов. Как синхронность функционирования, так и разрывность функций являются биологически неправдоподобными и совсем необязательными; непрерывные асинхронные ДАП отвергают синхронность и разрывность, но функционируют в основном аналогично дискретным версиям. Может показаться, что такие системы должны быть нестабильными. Показано, что непрерывные ДАП являются стабильными (однако для них справедливы ограничения емкости, указанные ранее). С. Гроссберг показал, что сигмоида является оптимальной функцией активации благодаря ее способности усиливать низкоуровневые сигналы и в то же время сжимать динамический диапазон нейронов. Непрерывная ДАП может иметь сигмоидальную функцию с величиной
![](../../../../img/tex/c/3/a/c3a26558e30e84670de83de038dc2e21.png)
Структура ДАП
На рис. 10.1 приведена базовая конфигурация ДАП. Она выбрана таким образом, чтобы подчеркнуть сходство с сетями Хопфилда и предусмотреть увеличения количества слоев. На рис. 10.1 входной вектор
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/9/0/b/90b7ba441022b54063051d047bdbd32a.png)
![](../../../../img/tex/a/7/d/a7d9e9f2a57f845a8fa93336e8892666.png)
или в векторной форме:
![](../../../../img/tex/0/0/f/00f93c0cbbd80a60b41067127366c1a4.png)
где
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
![](../../../../img/tex/9/0/b/90b7ba441022b54063051d047bdbd32a.png)
![](image/24-1.png)
Рис. 10.1.
Аналогично,
![](../../../../img/tex/4/1/1/4113c9544cf1241b3ac3cf31bca2407d.png)
где
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
Как отмечено нами ранее, Гроссберг показал преимущества использования сигмоидальной (логистической) функции активации
![](../../../../img/tex/3/c/7/3c7ee449eb2a3ed5dc1d0880908dc9cd.png)
где
![](../../../../img/tex/b/0/7/b073ed756487b0aca7bdd1de344b281a.png)
![](../../../../img/tex/6/0/4/6048f1e10201f48f0650ed59edaedd21.png)
![](../../../../img/tex/7/0/4/704d36417df935ff49413a56662b813c.png)
— взвешенная сумма входных сигналов нейрона
![](../../../../img/tex/6/0/4/6048f1e10201f48f0650ed59edaedd21.png)
![](../../../../img/tex/c/3/a/c3a26558e30e84670de83de038dc2e21.png)
В простейших версиях ДАП значение константы
![](../../../../img/tex/c/3/a/c3a26558e30e84670de83de038dc2e21.png)
выбирается большим, в результате чего функция активации приближается к простой пороговой функции. В дальнейшем будем предполагать, что используется пороговая функция активации.
Примем также, что существует память внутри каждого нейрона в слоях 1 и 2 и что выходные сигналы нейронов изменяются одновременно с каждым тактом синхронизации, оставаясь постоянными в паузах между этими тактами. Таким образом, поведение нейронов может быть описано следующими правилами:
![](../../../../img/tex/a/c/b/acb1062f344762856d74d9ffd22293bc.png)
где
![](../../../../img/tex/6/d/c/6dcfffb1f72a1009824267dcb8aa7b48.png)
![](../../../../img/tex/6/0/4/6048f1e10201f48f0650ed59edaedd21.png)
в момент времени
![](../../../../img/tex/b/5/b/b5b31ff78fdd837e6c2ebed0a841bbad.png)
Заметим, что, как и в описанных ранее сетях, слой 0 не производит вычислений и не имеет памяти; он является только средством распределения выходных сигналов слоя 2 к элементам матрицы
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
Восстановление запомненных ассоциаций
Долговременная память (или ассоциации) реализуется в весовых массивах
![](../../../../img/tex/b/0/7/b07e53e2778fbfd087e9fe13f44cbb02.png)
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/6/1/8/618a48ba286743cf6db5b9a0318c4d70.png)
![](../../../../img/tex/f/b/c/fbc8e1c1b009757b8e3cf61220e2b01d.png)
![](../../../../img/tex/5/7/9/579ccfc016adc91d1f9de5b90cb9f24b.png)
Сеть функционирует в направлении минимизации функции энергии Ляпунова в основном таким же образом, как и сети Хопфилда в процессе сходимости. Следовательно, каждый цикл модифицирует систему в направлении энергетического минимума, расположение которого определяется значениями весов.
Этот процесс может быть визуально представлен в форме направленного движения мяча по резиновой ленте, вытянутой над столом, причем каждому запомненному образу соответствует точка, "вдавленная" в направлении поверхности стола. Рис. 10.2 иллюстрирует данную аналогию, на нем отмечен один запомненный образ. Данный процесс формирует минимум гравитационной энергии в каждой точке, соответствующей запомненному образу, с соответствующим искривлением поля притяжения в направлении к данной точке. Свободно движущийся мяч попадает в поле притяжения и в результате будет двигаться в направлении энергетического минимума, где и остановится.
![](image/24-2.png)
Рис. 10.2.