Нейронная сеть АРТ-1 адаптивной резонансной теории
1.1. Введение в теорию нейронных сетей адаптивного резонанса
В большинстве нейронных сетей, обучаемых методом обратного распространения, генетическими алгоритмами, в двунаправленной ассоциативной памяти, сетях Хопфилда и т.д. очень часто обучение новому образу, ситуации или ассоциации заметно искажает или даже уничтожает плоды предшествующего обучения, требуя изменения значительной части весов связей или полного переобучения сети. В этом отношении указанные нейронные сети резко отличаются от мозга человека, который, непрерывно обрабатывая потоки информации из внешней среды, может как модифицировать и уточнять хранящиеся в памяти образы, так и создавать новые, не уничтожая то, что уже хранится. Таким образом, мозг человека обладает высокой пластичностью к поступающей информации, позволяющей ему воспринимать новые образы и уточнять хранящуюся информацию по уже известным, и в то же время он имеет и высокую стабильность, сохраняя ранее полученные знания. Невозможность с помощью уже известных нейронных сетей решить проблему стабильности - пластичности явилась одной из основных причин разработки принципиально новых конфигураций нейросетей. Примером таких сетей являются нейросети, полученные на основе адаптивной резонансной теории (adaptive resonance theory (ART)), разработанной Гроссбергом и Карпентером. Эти сети в известной мере позволяют решать противоречивые задачи чувствительности к новым данным и сохранения полученных знаний.
Нейронная сеть адаптивной резонансной теории (АРТ) относит входное изображение к одному из известных классов, если оно в достаточной степени подобно или резонирует с прототипом этого класса. Если найденный прототип с определенной точностью, задаваемой специальным параметром сходства, соответствует входному изображению, то он модифицируется, чтобы стать более похожим на предъявленное изображение. Когда входное изображение недостаточно подобно ни одному из имеющихся прототипов, то на его основе создается новый класс. Это возможно благодаря тому, что сеть имеет большое число избыточных или нераспределенных элементов, которые не используются до тех пор, пока в этом нет необходимости (если нет нераспределенных нейронов, то входное изображение не вызывает реакции сети). Таким образом, новые образы могут создавать новые классы, но не могут исказить существующую память.
Разработано несколько видов нейросетей на основе адаптивной резонансной теории, в частности, сети АРТ-1 и АРТ-2. АРТ-1 предназначена для работы с двоичными входными изображениями или векторами, а АРТ-2 - для классификации как двоичных, так и непрерывнозначных векторов. Хотя детали архитектуры и алгоритмов работы для АРТ-1 и АРТ-2 различны, однако они имеют общую базовую архитектуру.
1.2. Базовая архитектура сетей АРТ
Базовая архитектура сетей АРТ включает три группы нейронов: поле F1 входных обрабатывающих нейронов, состоящее из двух слоев элементов, слой распознающих нейронов и группу нейронов управления (рис. 1).
Поле F1 нейронов состоит из двух слоев: входной слой и интерфейсный слой . Входной слой воспринимает предъявляемые изображения и передает полученную информацию нейронам интерфейсного слоя и управляющему нейрону R. Каждый элемент интерфейсного слоя связан с каждым элементом распознающего слоя Y двумя множествами взвешенных связей. Сигналы из интерфейсного слоя в слой Y передаются связями, идущими снизу вверх (с весами ), а из распознающего слоя в интерфейсный - связями, идущими сверху вниз (с весами ). Из-за наличия большого числа связей на рисунке приведено обозначение только одной пары связей между интерфейсными и распознающими элементами.
Слой является слоем конкурирующих или соревнующихся нейронов. В любое время каждый элемент распознающего слоя находится в одном из трех состояний:
активен ( для ART-1 и 0 < d < 1 для АРТ-2);
неактивен ( но способен участвовать в соревновании);
заторможен ( и не допущен к соревнованиям при предъявлении текущего входного вектора).
После предъявления входного изображения активным остается только один распознающий нейрон, все остальные Y-элементы имеют нулевые или отрицательные выходные сигналы. Выделенный распознающий нейрон допускается к обучению входным изображением только в том случае, если его весовой вектор связей из слоя Y в слой подобен входному вектору. Это решение принимается с помощью R-нейрона на основе специального параметра, получившего название параметра сходства, и сигналов, поступающих из входного и интерфейсного слоя элементов. Через вспомогательные элементы, разные для сетей АРТ-1 и АРТ-2, производится или обучение выделенного распознающего Y-элемента, или его затормаживание с дальнейшим исключением из числа соревнующихся при повторных предъявлениях этого же входного изображения, когда выделяются новые кандидаты для обучения входным изображением.
В наиболее общем виде алгоритм функционирования АРТ нейронной сети можно представить в следующем виде:
Шаг 1. Инициируются параметры сети. Шаг 2. До тех пор, пока не соблюдаются условия останова, выполняются шаги 3 - 10. Шаг 3. Для каждого входного вектора или изображения выполняются шаги 4 - 9. Шаг 4. Предъявляется входной вектор и вычисляются выходные сигналы нейронов входного слоя . Шаг 5. Пока не соблюдаются условия сброса или возврата к поиску нового Y-нейрона, выполняются шаги 6 - 8. Шаг 6. Находится незаторможенный Y-элемент, имеющий наибольший выходной сигнал. Шаг 7. Вычисляются выходные сигналы нейронов интерфейсного слоя . Шаг 8. С помощью параметра сходства проверяются условия сброса или возврата (они различны для сетей АРТ-1 и АРТ?2). Если они выполняются, тогда выделенный Y-элемент затормаживается и производится возврат к шагу 5. Если условия сброса не выполняются, тогда выделенный кандидат из Y-слоя допускается к обучению на шаге 9. Шаг 9. Производится обучение выделенного Y-элемента. Шаг 10. Проверяются условия останова. Если они не выполняются, то переход к шагу 2, в противном случае - переход к шагу 11. Шаг 11. Останов.
Хотя сети АРТ не предъявляют требований к порядку появления входных изображений и не требуют появления всех изображений с одинаковой частотой, при их обучении также используется понятие эпохи (последовательного предъявления каждого из обучающих изображений). Процесс обучения сетей АРТ может занимать много эпох.
Нейронные сети АРТ - динамические объекты, описываемые системами обыкновенных дифференциальных уравнений, поэтому их обучение в общем случае достаточно трудоемко. Однако модели сетей АРТ могут быть упрощены, если предположить, что изменение выходных сигналов нейронов происходит много быстрее, чем изменение весовых векторов их связей. Поэтому в нейросетях теории адаптивного резонанса можно полагать, что после выделения для обучения приемлемого Y-элемента (наступлении резонанса между предъявленным и хранящимся в памяти изображением), выходные сигналы всех нейронов остаются неизменными на протяжении длительного периода времени, в течение которого происходят изменения весов связей.
В АРТ различают два типа обучения: быстрое и медленное. Они отличаются как теоретическими предпосылками, так и своими рабочими характеристиками. В методе быстрого обучения веса в течение времени длительного резонанса достигают равновесного состояния при каждом предъявлении изображений. Эта форма обучения типична для двоичных нейронных сетей АРТ-1 и будет подробно рассмотрена в следующих параграфах. В методе медленного обучения имеет место существенно более медленное изменение весов во время резонанса, и они не достигают равновесных значений при каждом предъявлении входных изображений. Этот метод более свойственен нейросетям АРТ-2, хотя теоретически может применяться (но, практически не применяется) для обучения и дискретных сетей АРТ-1. Он требует большого числа предъявлений входных изображений, но относительно небольшого объема вычислений при каждом предъявлении.
1.3. Архитектура нейронных сетей АРТ-1
Нейронные сети АРТ-1 рассчитаны на работу с бинарными входными изображениями или векторами. Их общая архитектура приведена на рис. 2 и отличается от базовой архитектуры сетей АРТ (рис. 1) наличием дополнительных элементов G1 и G2, обеспечивающих управление процессом обучения. На рис. 2, как и на предыдущем рисунке, из-за наличия большого числа связей между Z- иY-слоями элементовприведены обозначения только одной обобщенной пары весов связей между интерфейсными и распознающими нейронами. Большинство связей, приведенных на рис. 2, являются возбуждающими: от входного слоя элементов к нейронам R, G1 и -слоя, от нейронов G1, G2 и R соответственно к нейронам слоев и Y. Тормозящие сигналы передают только множества связей от интерфейсных элементов к R-нейрону, и от Y-нейронов к элементу G1. Все связи сети АРТ-1 передают только бинарные сигналы 0 или 1.
Каждый элемент в интерфейсном или Y-слое сети АРТ-1 имеет три источника входных сигналов. Произвольный интерфейсный элемент может получать сигналы от элемента входного слоя, из вершин Y-слоя и от нейрона . Аналогично, элемент может получать сигналы от интерфейсных элементов, нейронов R и . Для перевода нейронов интерфейсного или распознающего слоев в активное единичное состояние необходимо наличие входных возбуждающих сигналов из двух источников. Поскольку каждый из рассматриваемых нейронов имеет три возможных источника сигналов, то условие возбуждения этих нейронов получило название ?правила два из трех?.
В исходном состоянии нейроны и входного слоя имеют нулевые выходные сигналы (находятся в состоянии ?0?). При подаче на входы S-элементов бинарных компонент предъявляемого изображения часть из них, получивших единичные входные сигналы, переходит в состояние ?1?. Возбуждающие сигналы с выходов этих нейронов переводят в состояние ?1? нейроны и R, а также поступают на входы соответствующих нейронов интерфейсного слоя. Нейроны интерфейсного слоя, получившие единичные сигналы от нейронов входного слоя и элемента , по правилу два из трех переходят в активное состояние и посылают свои возбуждающие сигналы по связям с весами на входы нейронов распознающего слоя. Нейроны распознающего слоя переходят в активное состояние также по правилу два из трех, получая возбуждающие сигналы не только от элементов интерфейсного слоя, но и от элемента . После этого в слое Y-нейронов происходит латеральный процесс и выделяется единственный Y-нейрон. Все нейроны Y-слоя, кроме победившего, переходят в состояние ?0?, а победивший нейрон - в состояние ?1?. Единичный сигнал победившего нейрона затормаживает управляющий нейрон , а также поступает по связям с весами на входы элементов интерфейсного слоя. Поскольку элементы интерфейсного слоя подчиняются правилу два из трех, то в отсутствии возбуждающих сигналов от нейрона , в активном состоянии останутся только те интерфейсные элементы, которые получают единичные сигналы и от элемента входного слоя, и от победившего нейрона распознающего слоя.
Тормозящие сигналы активных элементов интерфейсного слоя поступают на входы R-элемента, который также получает и возбуждающие сигналы от нейронов входного слоя. В зависимости от соотношения величин возбуждающих и тормозящих сигналов R-элемент переходит или в состояние "0", или в состояние "1". При нулевом выходном сигнале R-элемента в сети наступает резонанс и происходит обучение весов связей победившего Y-нейрона, а при единичном выходном сигнале - победивший Y-нейрон затормаживается и лишается возможности участвовать в соревнованиях при повторных предъявлениях текущего изображения. Затем в Y-слое производится выбор нового победившего нейрона.
1.4. Алгоритм обучения сетей АРТ-1
В основу рассматриваемого алгоритма положен метод быстрого обучения, предполагающий, что веса победившего Y-нейрона достигают равновесных значений при каждом предъявлении обучающего вектора или изображения. Дифференциальные уравнения, описывающие изменения весов победившего Y-элемента (обозначенного индексом J) в общем случае имеют вид:
(1)
где - вес связи от элемента к победившему элементу ; - вес связи от элемента к элементу ; t - время; , - постоянные коэффициенты; , - определяемые функции; - выходной сигнал i-го Z-нейрона.
Функция в первом дифференциальном уравнении системы (1) задается прямо пропорционально норме вектора выходных сигналов нейронов интерфейсного слоя:
(2)
где L - положительная константа и а норма вектора определяется как сумма его компонент.
С учетом соотношения (2) первое уравнение системы (1) преобразуется к виду:
или
(3)
Если то уравнение (3) принимает вид:
(4)
где - норма вектора выходных сигналов нейронов интерфейсного слоя.
Поскольку в равновесном состоянии
(5)
то из соотношений (4) и (5) следует, что
(6)
Если элемент активен, то есть , то и уравнение (3) преобразуется к виду:
(7)
Из уравнения (7) при условии (5) нетрудно получить соотношение для равновесных значений весов
(8)
Формулы (6) и (8) для равновесных значений весов можно объединить с помощью одного выражения:
(9)
так как если нейрон пассивен и , если нейрон активен.
Выражение для равновесных весов получается более просто, так как во втором уравнении системы (1) согласно данным известных работ по теории АРТ можно положить: . В связи с этим уравнение преобразуется к виду
(10)
Поскольку в равновесном состоянии производная в левой части соотношения (10) должна быть равной нулю, то имеем:
(11)
На основе метода быстрого обучения для нейросетей АРТ-1 может использоваться следующий алгоритм.
1.5. Алгоритм обучения нейросетей АРТ-1
В алгоритме приняты следующие обозначения:
- максимальное число распознающих элементов в Y-слое или максимальное число распознаваемых классов входных изображений; n - число компонент во входном векторе или изображении;
- n-мерный бинарный входной вектор; ; q - число обучающих входных векторов;
- n-мерный бинарный вектор выходных сигналов интерфейсного слоя элементов;
- норма вектора X;
- вес связи от интерфейсного элемента к элементу , диапазон допустимых начальных значений: рекомендуемое начальное значение:
- вес связи от элемента к элементу , рекомендуемое начальное значение: p - параметр сходства между предъявленным вектором и вектором весов победившего нейрона Y-слоя, диапазон допустимых значений параметра: рекомендуемое значение: .
Шаг 1. Инициируются параметры L,p и веса и Шаг 2. Пока не выполняются условия останова, реализуются шаги 3 - 14. Шаг3. Для каждого обучающего входного вектора выполняются шаги 4 - 13. Шаг4. Задается нулевая активация всех распознающих элементов Y-слоя: Входным обучающим вектором устанавливается активация S-элементов входного слоя:
Шаг 6. Формируют входные и выходные сигналы элементов интерфейсного слоя:
Шаг 7. Для каждого незаторможенного Y-нейрона, то есть у которого выходной сигнал не равен -1, рассчитываются его входной и выходной сигналы:
если то
Шаг 8. Пока не найден Y-нейрон, весовой вектор которого при заданном параметре сходства р соответствует входному вектору выполняются шаги 9 - 12. Шаг 9. В Y-слое определяется нейрон удовлетворяющий условию Если таких нейронов несколько, то выбирается элемент с наименьшим индексом. Если , то все элементы заторможены и входное изображение не может быть классифицировано. Шаг 10. Рассчитываются выходные сигналы Z-элементов:
Шаг 12. Проверяется условие на возможность обучения выделенного Y- нейрона:
если то
то есть затормаживается элемент и продолжается выполнение с шага 9;
если то переход к шагу 13.
Шаг 13. Адаптируются веса связей элемента :
,
Шаг 14. Проверяются условия останова. Условиями останова могут быть: отсутствие изменений весов сети, достижение заданного числа эпох и т. д. Если условия останова не выполняются, то переход к шагу 2 алгоритма, иначе - к шагу 15. Шаг 15. Останов.
Примеры применения быстрого алгоритма обучения сети АРТ-1
Рассмотрим в деталях применение описанного алгоритма на простых примерах. Пример 1. Использование алгоритма АРТ-1 для классификации четырех векторов .
Для решения задачи классификации используем алгоритм АРТ-1 со следующими параметрами: - максимальное число создаваемых кластеров; - размерность входных векторов; - число входных векторов; - параметр сходства; - параметр для адаптации весов - начальные веса - начальные веса
Применение алгоритма дает следующее:
Шаг1. Инициируются параметры и начальные веса связей: Шаг 2. Начало вычислений. Шаг3. Для первого входного вектора выполняются шаги 4 - 13. Шаг 4. Задаются выходные сигналы элементов Y-слоя:
Шаг6. Формируются вектора входных и выходных сигналов элементов интерфейсного слоя:
Шаг 7. Вычисляются входные сигналы для всех элементов Y-слоя:
Шаг 8. Пока не найден Y-нейрон, весовой вектор которого в соответствии с заданным параметром сходства p соответствует предъявленному вектору , выполняются шаги 9 - 12. Шаг9.Так как все Y-элементы имеют одинаковые входные сигналы, то нейроном-победителем выбирается первый незаторможенный Y-нейрон: . Шаг 10. Рассчитываются выходные сигналы Z-элементов:
Так как и то имеем Шаг 11. Вычисляется норма вектора
Шаг 12. Проверяется сходство векторов и , поскольку то на следующем шаге выполняется адаптация весов нейрона . Шаг 13. С помощью формулы (9) определяются равновесные веса :
С помощью формулы (11) определяются равновесные веса :
В результате адаптации весов получим следующие весовые матрицы:
, .
Шаг 3. Для второго входного вектора выполняются шаги 4 - 13. Шаг 4. Задаются выходные сигналы элементов Y-слоя:
Шаг 6. Определяются выходные сигналы элементов интерфейсного слоя: Шаг 7. Вычисляются входные сигналы для элементов Y-слоя:
Шаг 8. Выполняются шаги 9 - 12. Шаг 9. Так как три элемента имеют одинаковые входные, а следовательно, и выходные сигналы, то нейроном-победителем выбирается нейрон с меньшим номером: Шаг 10. Рассчитываются выходные сигналы Z-элементов:
,
Шаг 11. Вычисляется норма вектора :
Шаг 12. Проверяется сходство векторов и :
Шаг 13. Определяются равновесные веса и :
В результате получаются следующие весовые матрицы:
,
Шаг 3. Для третьего входного вектора выполняются шаги 4 - 13. Шаг 4. Задаются выходные сигналы элементов Y-слоя:
Определяются выходные сигналы S-элементов: Шаг 5. Вычисляется норма вектора : Шаг 6. Определяется вектор выходных сигналов интерфейсного слоя: Шаг 7. Вычисляются входные сигналы для элементов Y-слоя:
В результате получаются следующие весовые матрицы:
(12)
Шаг 3. Для четвертого входного вектора выполняются шаги 4 - 13.
В результате выполнения шагов 4 - 12 вычисляется норма входного вектора , входные сигналы элементов Y-слоя определяется нейрон YJ c максимальным выходным сигналом рассчитывается вектор выходных сигналов Z-элементов и его норма а затем проверяется сходство векторов и :
Шаг 13. Определяются равновесные веса :
В результате получаются следующие весовые матрицы:
Шаг 14. Проверка условий останова.
На этом заканчивается первая эпоха обучения. Легко убедиться, что вторая и последующие эпохи не могут внести в полученные матрицы при параметре сходства каких-либо изменений. Поэтому, если в качестве условий останова использовать неизменность матриц весов в течение эпохи обучения, то алгоритм прекратит свою работу после выполнения второй эпохи обучения.
Пример 2. Применение алгоритма АРТ-1 для классификации векторов примера 1, предъявляемых в том же самом порядке, но при параметре сходства
Нетрудно убедиться, что для векторов обучение будет выполняться так же, как и в примере 1, и будут получены весовые матрицы (12) примера 1. Однако после предъявления четвертого входного вектора получаются результаты, отличающиеся от результатов примера 1. Шаг 3. Для четвертого входного вектора выполняются шаги 4 - 13. Шаг 4. Задаются выходные сигналы элементов Y-слоя:
определяются выходные сигналы S-элементов:
Шаг 5. Вычисляется норма вектора :
Шаг 6. Определяется вектор выходных сигналов интерфейсного слоя: Шаг 7. Вычисляются входные сигналы для элементов Y-слоя: