- •1.Сети адаптивной резонансной теории
- •1.1.Проблема стабильности-пластичности
- •1.2.Архитектура арт
- •1.2.1.Упрощенная схема арт
- •1.2.2.Слой сравнения
- •1.2.3.Слой распознавания.
- •1.2.4.Модули приемников и сброса
- •1.3.2.Распознавание
- •1.3.Функционирование сети арт
- •1.3.1.Инициализация
- •1.3.3.Сравнение
- •1.3.4.Поиск
- •1.3.5.Обучение
- •1.4.Пример обучения
- •1.5.Свойства сетей арт.
1.4.Пример обучения
Рассмотрим типичный сеанс обучения сети АРТ. Для простоты будем считать, что фаза поиска при обучении отсутствует. Если параметр сходства возбужденного нейрона меньше заданного порога или в конкурентной борьбе выигрывает нераспределенный нейрон, то для запоминания входного образа в слой распознавания добавляется новый нейрон. Зададим пороговый уровень сходства на уровне п = 0,8.
Рис.6.4. Обучающие примеры
Обучающие образы являются произвольными символами, состоящими из квадратов (рис.6.4). Размерность каждого символа 3х3.Закрашенный квадрат представляет компоненту вектора X с единичным значением (xi=1), не закрашенный квадрат – компоненту X с нулевым значением (xj=0). Тогда сеть обучается на примере четырех векторов (табл.6.2), которые последовательно предъявляются сети на вход слоя сравнения.
Обучающие примеры Табл.6.2
i |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
X1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
X2 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
X3 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
X4 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
Вектора весов Bн и Тн несвязанного нейрона вычисляются в соответствии с (6.1) и (6.2). Если константа L=2, тогда bнk≤1/5, например, bнk=1/6. В итоге Тн =(1 1 1 1 1 1 1 1 1), Bн =(1/6 1/6 1/6 1/6 1/6 1/6 1/6 1/6 1/6).
Первый
цикл обучения. Сети предъявляется
обучающий вектор X1.
В слое распознавания присутствует
только один нераспределенный нейрон,
который активизируется входным вектором,
Для запоминания первой категории в слое
распознавания выделяем новый (первый)
нейрон и обучаем его в соответствии с
правилами (6.6) и (6.7). Определим сумму
единичных компонент в векторе C=X1:
=
3, тогда веса первого обученного нейрона
будут иметь следующие значения:
Т1 =(1 0 0 0 1 0 0 0 1), B1 =(1/4 0 0 0 1/4 0 0 0 1/4).
Второй цикл обучения. Сети предъявляется обучающий вектор X2. Свертка (6.3), осуществляемая нераспределенным нейроном (sн) и первым обученным нейроном (s1) в слое распознавания дает следующие значения:
Вычисление свертки Табл.6.3
i |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
C2 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
B1 |
1/4 |
0 |
0 |
0 |
1/4 |
0 |
0 |
0 |
1/4 |
C2•B1 |
0 |
0 |
0 |
0 |
1/4 |
0 |
0 |
0 |
0 |
Bн |
1/6 |
1/6 |
1/6 |
1/6 |
1/6 |
1/6 |
1/6 |
1/6 |
1/6 |
C2•Bн |
0 |
0 |
1/6 |
0 |
1/6 |
0 |
1/6 |
0 |
0 |
В результате, s1 = (C2•B1)= 1/4, sн = (C2•Bн)=1/2. Победителем оказывается нераспределенный нейрон, что автоматически приводит к добавлению нового (второго) нейрона в слой распознавания. Его веса настраиваются для запоминания второй категории по правилами (6.6) и (6.7). Сумма единичных компонент в векторе C=X2: = 3, тогда веса второго обученного нейрона будут иметь следующие значения:
Т2 =(0 0 1 0 1 0 1 0 0), B2 =(0 0 1/4 0 1/4 0 1/4 0 0).
Третий цикл обучения. Сети предъявляется обучающий вектор X3. Свертка (6.3), осуществляемая нераспределенным нейроном (sн), первым (s1) и вторым (s2) обученными нейронами дает следующие значения:
s1 = (C3•B1)= 3*1/4=3/4, s2 = (C3•B2)=1/4, sн = (C3•Bн)=4*1/6=2/3.
Победителем становится первый нейрон. Вычисляется значение для определения его сходства с входным вектором X3.
Вычисление сходства с X3 Табл.6.4
i |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
P=T1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
X3 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
1 |
C3 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
Компоненты вектора C3 определяются по правилу двух третей. Количество совпавших компонент в векторах X3 и С3 - l=8, тогда мера сходства, определяемая по (6.5) =8/9>п. Пороговый уровень превышен, происходит переобучение весов первого нейрона в соответствии со значениями компонент вектора C3. Новые значения весов в этом случае повторяют старые. Единичная компонента x8=1 в векторе X3 не запоминается, т.к. она отсутствовала в ранее запомненной первой категории:
Т1 =(1 0 0 0 1 0 0 0 1), B1 =(1/4 0 0 0 1/4 0 0 0 1/4).
Четвертый цикл обучения. Сети предъявляется обучающий вектор X4. Свертка (6.3), осуществляемая нераспределенным (sн), первым (s1) и вторым (s2) обученными нейронами дает следующие значения:
s1 = (C4•B1)= 1/4, s2 = (C4•B2)=2*1/4=1/2, sн = (C4•Bн)=2*1/6=1/3.
Победителем становится второй нейрон. Вычисляется значение для определения его сходства с входным вектором X4.
Вычисление сходства с X4 Табл.6.4
i |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
P=T2 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
X4 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
C4 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
Количество совпавших компонент в векторах X3 и С3 - l=9, тогда мера сходства, определяемая по (6.5) =1>п. Для переобучения весов первого нейрона используются компоненты вектора C4. Новые значения весов:
Т2 =(0 0 0 0 1 0 1 0 0), B2 =(0 0 0 0 1/3 0 1/3 0 0).
Единичная компонента x3=1, ранее присутствовавшая во второй категории, теперь не фиксируется, т.к. входной вектор X4 ее не содержит.
Итогом обучения сети является запоминание двух категорий образов:
Т1 =(1 0 0 0 1 0 0 0 1), B1 =(1/4 0 0 0 1/4 0 0 0 1/4).
Т2 =(0 0 0 0 1 0 1 0 0), B2 =(0 0 0 0 1/3 0 1/3 0 0), что соответствует символам (рис. 6.5).
Рис. 6.5 Результат обучения
Рассматриваемый способ обучения приводит к «сокращению» компонент запомненных векторов, которые не соответствуют входным векторам. Если вес однажды установлен в ноль, обучающий алгоритм никогда не восстановит его единичное значение. Таким образом, запомненный вектор представляет собой логическое пересечение всех обучающих векторов и может включать существенные характеристики данной категории. Новый вектор, включающий только существенные характеристики, будет соответствовать этой категории.
