Россия |
Адаптивная резонансная теория. Архитектура
Функционирование сети APT в процессе классификации
Процесс классификации в APT состоит из трех основных фаз: распознавание, сравнение и поиск.
Фаза распознавания. В
начальный момент времени входной
вектор отсутствует на входе сети; следовательно, все компоненты входного
вектора можно рассматривать как нулевые. Тем самым сигнал
устанавливается в
и, следовательно, в нуль устанавливаются
выходы
всех нейронов слоя распознавания. Поскольку все нейроны слоя
распознавания начинают работу в одинаковом состоянии, они имеют равные
шансы выиграть в последующей конкуренции.
Затем на вход сети подается входной вектор
, который должен быть
классифицирован. Этот вектор должен иметь одну или более компонент,
отличных от нуля, в результате чего и
, и
становятся равными
единице. Это "подкачивает" нейроны слоя сравнения, обеспечивая один
из двух единичных входов, необходимых для возбуждения нейронов в
соответствии с правилом двух третей, и тем самым позволяя нейрону
возбуждаться, если соответствующая компонента входного вектора
равна единице. Таким образом, в течение данной фазы вектор
в
точности
дублирует вектор
.
Далее, для каждого нейрона в слое распознавания вычисляется свертка
вектора его весов и вектора
(см. рис. 11.5).
Нейрон с
максимальным значением свертки имеет веса, наилучшим образом
соответствующие входному вектору. Он выигрывает конкуренцию и
возбуждается, одновременно затормаживая все остальные нейроны этого
слоя. Таким образом, единственная компонента
вектора
(см.
рис. 11.3) становится равной единице, а все остальные компоненты
становятся равными нулю.
В результате сеть APT запоминает образы в весах нейронов слоя распознавания — один нейрон для каждой категории классификации. Нейрон слоя распознавания, веса которого наилучшим образом соответствуют входному вектору, возбуждается, его выход устанавливается в единичное значение, а выходы остальных нейронов этого слоя устанавливаются в нуль.
Фаза сравнения. Единственный возбужденный нейрон в слое
распознавания возвращает единицу обратно в слой сравнения в виде своего
выходного сигнала . Эта единственная единица может быть
визуально
представлена в виде "веерного" выхода, подающегося через отдельную связь
с весом
на каждый нейрон в слое сравнения, обеспечивая
каждый
нейрон сигналом
, равным величине
(нулю
или единице) (см.
рис. 11.6).
Алгоритмы инициализации и обучения построены таким образом, что
каждый весовой вектор имеет двоичные значения весов; кроме
того,
каждый весовой вектор
представляет собой масштабированную
версию
соответствующего вектора
. Это означает, что все компоненты
(вектора возбуждения слоя сравнения) также являются двоичными
величинами.
Так как вектор не является больше нулевым, сигнал
устанавливается в нуль. Таким образом, в соответствии с правилом двух
третей, возбудиться могут только нейроны, получающие на входе
одновременно единицы от входного вектора
и вектора
.
Другими словами, обратная связь от распознающего слоя действует
так, чтобы установить компоненты в нуль в случае, если входной
вектор
не соответствует входному образу (т. е. если
и
не имеют
совпадающих компонент).
Если имеются существенные различия между и
(малое
количество совпадающих компонент векторов), несколько нейронов на фазе
сравнения будут возбуждаться и
будет содержать много нулей, в то
время как
содержит единицы. Это означает, что возвращенный
вектор
не является искомым и возбужденные нейроны в слое распознавания
должны быть заторможены. Такое торможение производится блоком сброса
(см. рис. 11.2), который сравнивает входной вектор
и вектор
и
вырабатывает сигнал сброса, если степень сходства этих векторов меньше
некоторого уровня. Влияние сигнала сброса заключается в установке выхода
возбужденного нейрона в нуль, отключая его на время текущей
классификации.
Фаза поиска. Если не выработан сигнал сброса, сходство является
адекватным и процесс классификации завершается. В противном случае,
другие запомненные образы должны быть исследованы с целью поиска
лучшего соответствия. При этом торможение возбужденного нейрона в
распознающем слое приводит к установке всех компонент вектора в
0,
устанавливается в 1 и входной вектор
опять
прикладывается в
качестве
. В результате другой нейрон выигрывает соревнование в
слое
распознавания и другой запомненный образ
возвращается в слой
сравнения. Если
не соответствует
, возбужденный
нейрон в слое
распознавания снова тормозится. Этот процесс повторяется до тех пор, пока
не встретится одно из двух событий:
- Найден запомненный образ, сходство которого с вектором
выше уровня параметра сходства, т. е.
. Если это происходит, проводится обучающий цикл, в процессе которого модифицируются веса векторов
и
, связанных с возбужденным нейроном в слое распознавания.
- Все запомненные образы проверены, определено, что они не
соответствуют входному вектору, и все нейроны слоя распознавания
заторможены. В этом случае предварительно не распределенный нейрон в
распознающем слое выделяется этому образу и его весовые векторы
и
устанавливаются соответствующими новому входному образу.
Проблема производительности. Описанная сеть должна производить последовательный поиск среди всех запомненных образов. В аналоговых реализациях это будет происходить очень быстро; однако, при моделировании на обычных цифровых компьютерах процесс может оказаться очень длительным. Если же сеть APT реализуется на параллельных процессорах, все свертки на распознающем уровне могут вычисляться одновременно. В этом случае поиск может стать очень быстрым.
Время, необходимое для стабилизации сети с латеральным торможением, может быть длительным при моделировании на последовательных цифровых компьютерах. Чтобы выбрать победителя в процессе латерального торможения, все нейроны в слое должны быть вовлечены в одновременные вычисления и передачу. Этот процесс может потребовать проведения большого объема вычислений перед достижением сходимости.