Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6_АРТ_.doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
223 Кб
Скачать
☆

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 Результат обучения

Рассматриваемый способ обучения приводит к «сокращению» компонент запомненных векторов, которые не соответствуют входным векторам. Если вес однажды установлен в ноль, обучающий алгоритм никогда не восстановит его единичное значение. Таким образом, запомненный вектор представляет собой логическое пересечение всех обучающих векторов и может включать существенные характеристики данной категории. Новый вектор, включающий только существенные характеристики, будет соответствовать этой категории.