Опубликован: 27.07.2006 | Доступ: свободный | Студентов: 6123 / 1491 | Оценка: 4.37 / 4.06 | Длительность: 13:49:00
ISBN: 978-5-9556-0049-9
Специальности: Программист
Лекция 13:

Когнитрон

< Лекция 12 || Лекция 13: 12345 || Лекция 14 >

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

OUT =\frac{E}{I}-1,\quad \text{если } E\gg1 \text{ и }I\gg 1.

В данном случае OUT определяется отношением возбуждающих входов к тормозящим входам, а не их разностью. Следовательно, величина OUT ограничивается, если оба входа возрастают в одном и том же диапазоне X. Тогда E и I можно выразить следующим образом:

E=pX,\quad I=qX,\quad p,q \text{ — константы},

и после некоторых преобразований

OUT = \frac{p-q}{2q}\cdot\left[1+\th\left(\frac{\log(pq)}{2}\right)\right].

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


Рис. 13.3.

Тормозящие нейроны. В когнитроне слой состоит из возбуждающих и тормозящих узлов. Как показано на рис. 13.3, нейрону слоя 2 присуща область связи, для которой он имеет синаптические соединения с набором выходов нейронов в слое 1. Аналогично, в слое 1 существует тормозящий нейрон, имеющий ту же область связи. Синаптические веса тормозящих узлов не изменяются в процессе обучения; их веса заранее установлены таким образом, что сумма весов в любом из тормозящих нейронов равна единице. В соответствии с этими ограничениями, выход тормозящего узла INHIB является взвешенной суммой его входов, которые в данном случае представляют собой среднее арифметическое выходов возбуждающих нейронов, к которым подсоединен данный выход. Таким образом,

INHIB=\sum_i c_i OUT_i.

где \sum_i c_i=1, c_i — возбуждающий вес i.

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

\delta a_i=q c_j u_j,

где c_j — тормозящий вес связи нейрона j в слое 1 с тормозящим нейроном i, u_jвыход нейрона j в слое 1, a_i — возбуждающий вес i, q — нормирующий коэффициент обучения.

Изменение тормозящих весов нейрона i в слое 2 пропорционально отношению взвешенной суммы возбуждающих входов к удвоенному тормозящему входу. Вычисления проводятся по формуле

\delta b_i = \frac{q\sum_j a_j u_j}{2\cdot INHIB_i}.

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

\delta a_i=q' c_ju_j,\quad \delta b_i=q'INHIB,

где q' — положительный обучающий коэффициент, меньший, чем q.

Приведенная стратегия настройки гарантирует, что узлы с большой реакцией заставляют возбуждающие синапсы, которыми они управляют, увеличиваться сильнее, чем тормозящие синапсы. Верна и обратная зависимость: узлы, имеющие малую реакцию, вызывают малое возрастание возбуждающих синапсов, но большее возрастание тормозящих синапсов. Таким образом, если узел 1 в слое 1 имеет больший выход, синапс a_1 возрастет больше, чем синапс b_1. И наоборот, узлы, имеющие малый выход, обеспечат малую величину для приращения a_i. Однако другие узлы в области связи будут возбуждаться, тем самым увеличивая сигнал INHIB и значения b_i.

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

Латеральное торможение. На рис. 13.3 показано, что каждый нейрон слоя 2 получает латеральное торможение от нейронов, расположенных в его области конкуренции. Тормозящий нейрон суммирует входы от всех нейронов в области конкуренции и вырабатывает сигнал, стремящийся к торможению целевого нейрона. Этот метод является эффектным, но с вычислительной точки зрения медленным. Он охватывает большую систему с обратной связью, включающую каждый нейрон в слое; для его стабилизации может потребоваться большое количество вычислительных итераций.

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

LAT\_INHIB=\sum_i g_i OUT_i,

где OUT_iвыход i -го нейрона в области конкуренции, g_iвес связи от этого нейрона к латерально-тормозящему нейрону; g_i выбраны таким образом, что \sum_i g_i=1.


Рис. 13.4.

Выход тормозящего нейрона OUT' затем вычисляется следующим образом:

OUT'=\frac{1+OUT_i}{1+LAT\_INHIB}-1.

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

Метод ускоренного латерального торможения решает и другую сложную проблему. Предположим, что узел в слое 2 возбуждается сильно, но возбуждение соседних узлов уменьшается постепенно с увеличением расстояния. При использовании обычного латерального торможения будет обучаться только центральный узел: другие узлы определят, что центральный узел в их области конкуренции имеет более высокий выход. С предлагаемой системой латерального торможения такой ситуации случиться не может. Множество узлов может обучаться одновременно, и процесс обучения становится более достоверным.

< Лекция 12 || Лекция 13: 12345 || Лекция 14 >