Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Sb97955

.pdf
Скачиваний:
21
Добавлен:
13.02.2021
Размер:
978.55 Кб
Скачать

- 10 -

5

Uвых A3 (1) g[Uвых A3 (0) ε Uвых Ak (0)] g[0,8 0,2(0,2 0,6 0,4 0,4)] k 1,k 3

g(0,48) 0,48;

 

 

 

5

 

 

 

Uвых A

(1) g[Uвых A

(0) ε

Uвых A (0)] g[0,4

0,2(0,2 0,6 0,8 0,4)]

4

4

 

k 1,k 4

k

 

 

 

 

 

 

 

 

g(0) 0;

 

 

 

 

 

 

 

 

5

 

 

 

Uвых A

(1) g[Uвых A

(0) ε Uвых A

(0)]

g[0,4 0,2(0,2 0,6 0,8 0,4)]

5

5

 

k

 

 

 

 

k 1

 

 

 

g(0) 0.

 

 

 

 

 

Используя вектор (Uвых A (1), ..., Uвых A (1))

выходных сигналов A -

 

 

 

1

 

5

 

элементов при t 1, аналогичным образом рассчитывают выходные сигналы A -нейронов при t 2, 3 и 4. Результаты расчётов приведены в таблице.

Результаты расчётов итерационного процесса в подсети Maxnet

Время

 

Значения выходных сигналов нейронов Ak (k 1, 5)

 

Uвых A

 

Uвых A

Uвых A

Uвых A

 

Uвых A

 

 

 

 

1

 

2

3

4

 

5

0

0,200

 

0,600

0,800

0,400

 

0,400

 

 

 

 

 

 

 

 

1

0,000

 

0,240

0,480

0,000

 

0,000

 

 

 

 

 

 

 

 

2

0,000

 

0,144

0,423

0,000

 

0,000

 

 

 

 

 

 

 

 

3

0,000

 

0,058

0,403

0,000

 

0,000

 

 

 

 

 

 

 

 

4

0,000

 

0,000

0,402

0,000

 

0,000

 

 

 

 

 

 

 

 

Итерационный процесс в подсети Maxnet заканчивается при t 5 , поскольку на этом шаге функционирования подсети не изменяется ни один выходной сигнал A -элементов. Вектор выходных сигналов A -элементов, записанный в последней строке таблицы, поступает на входы Y -элементов. Так как Y -нейроны имеют функцию активации вида (1.9), то на выходе только одного элемента Y3 появится единичный сигнал. Это означает, что

предъявленное изображение S1 наиболее близко к эталонному изображе-

нию V 3 . Визуальное сопоставление рис. 1.2 и 1.3 подтверждает правильность работы сети.

Определим теперь

реакцию

сети при предъявлении изображения

S 2 ( 1, 1, 1, 1, 1, 1,

1, 1,

1) . Поскольку расчёты аналогичны, то

приведём только основные промежуточные результаты:

 

 

 

 

 

 

 

 

 

 

 

 

 

- 11 -

 

 

 

 

 

 

 

 

 

 

 

Uвх Z (S

2 ) 6, Uвх Z

2

(S

2 ) 2, Uвх Z

3

(S 2 ) 4, Uвх Z

4

(S 2 ) 4, Uвх Z

5

(S 2 ) 8;

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

U

вых Z

(S 2 ) a 0,6; U

вых Z

 

(S 2 ) a

2

0,2; U

вых Z

 

 

(S 2 ) U

вых Z

 

 

(S 2 )

 

 

1

 

 

 

 

2

 

 

 

 

 

3

 

4

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

a

4

0,4; U

вых Z5

(S

2 ) a

0,8.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Поскольку входной вектор (0,6; 0,2; 0,4; 0,4; 0,8) подсети Maxnet содержит единственный максимальный элемент a5 0,8 , то в результате итераци-

онного процесса на выходе только элемента A5 окажется положительный выходной сигнал, который вызовет единичный сигнал на выходе нейрона Y5 . Следовательно, предъявленное изображение наиболее близко к эталон-

ному изображению V 5 , что подтверждает и визуальное сопоставление рис.

1.2 и 1.3.

Определим теперь реакцию сети Хемминга на входное изображение

S 3 ( 1, 1,

1, 1, 1, 1, 1, 1, 1)

(см. рис. 1.3). При предъявлении

изображения

S 3 имеем: Uвх Z (S3) 8,

Uвх Z

2

(S3) 0,

Uвх Z

3

(S3) 1,

 

 

 

 

 

1

 

 

 

 

 

 

 

Uвх Z

4

(S3) 2, Uвх Z

5

(S3) 8 . Поскольку сигналы Uвх

1

(S3) Uвх Z

5

(S3)

 

 

 

 

 

 

 

 

 

 

 

являются одинаковыми максимальными входными сигналами, то одинако-

выми

будут и максимальные

сигналы

на выходах

Z -элементов

(Uвх Z

(S3) Uвх Z

5

(S3) 0,8)

и

на

входах

A -нейронов

 

 

1

 

 

 

 

 

 

 

 

(a

1

(S3) a

5

(S3) 0,8) . Следовательно, подсеть Maxnet не сможет выделить

 

 

 

 

 

 

 

 

 

 

единственный максимальный сигнал и в результате её функционирования на всех выходах A - и Y -нейронов появятся нулевые сигналы.

Таким образом, сеть Хемминга не может определить, к какому из эта-

лонных изображений наиболее близко предъявленное изображение S 3 .

Порядок выполнения работы

1. Разработать нейронную сеть Хемминга, которая сможет распознавать не менее 6 различных букв Вашего имени и Вашей фамилии. При этом обосновать выбор:

-числа рецепторных нейронов;

-числа нейронов выходного слоя;

-12 -

-значения параметра ε в подсети Maxnet;

-вида функций активации нейронов каждого слоя;

-значения весов связей и смещений в подсети Хемминга. 2. Обучить нейронную сеть эталонным изображениям букв.

3. Исследовать возможности сети по распознаванию искаженных изоб-

ражений.

4. Подобрать входное изображение, равноудалённое по расстоянию Хемминга от двух эталонных изображений.

Содержание отчёта

1.Цель лабораторной работы.

2.Формализация задачи.

3.Структуры данных и их описание.

4.Программа, реализующая алгоритм.

5.Листинг программы.

6.Результаты выполнения пп. 1–4 задания.

7.Выводы.

Работа 2. НЕЙРОННАЯ СЕТЬ ХЕББА

Цель работы – приобретение и закрепление знаний и получение практических навыков работы с простейшими нейронными сетями, для обучения которых используется алгоритм Хебба.

Краткие сведения из теории

Формальные нейроны искусственных нейронных сетей. При моде-

лировании нейронных сетей в качестве искусственных нейронов обычно используется простой процессорный элемент (рис. 2.1) [2]. На его входы поступает вектор X (x1, ... , xn ) входных сигналов, являющихся выходными сигналами других нейронов, а также единичный сигнал смещения. Все входные сигналы, включая и сигнал смещения, умножаются на весовые коэффициенты своих связей и суммируются:

n

 

 

 

 

S xi wi

w0 ,

(2.1)

i 1

 

 

 

 

 

 

 

 

 

где S – суммарный входной сигнал;

wi (i 1, n)

– весовые коэффициенты

связей входных сигналов x1,..., xn ; w0 – весовой коэффициент связи сигнала смещения.

- 13 -

w 0

1

 

w1

 

 

x1

 

S

y

 

f

 

.

 

 

 

.

 

 

 

.

 

 

xn

 

 

 

wn

Рис. 2.1. Процессорный элемент, используемый в обычных нейросетях

Полученный сигнал S поступает на вход блока, реализующего функцию f активации нейрона. Типичными функциями активации являются бинарная

 

если S 0,

 

1,

 

y

 

(2.2)

0, если S 0

 

или биполярная

 

 

1,

если S 0,

 

y

 

(2.3)

1,

если S 0.

 

Многие авторы при описании модели нейрона используют не сигнал

смещения, а порог θ нейрона, что приводит к эквивалентной модели элемента. В этом случае выражения (2.2) и (2.3) принимают соответственно вид:

1, если S θ, y 0, если S θ,

1, если S θ,

y 1, если S θ,

где

n

S xi wi . i 1

(2.4)

(2.5)

(2.6)

Графическое изображение бинарной и биполярной функций активации для этого случая представлено на рис. 2.2, а и б.

y

 

 

1

 

 

0

θ

S

а

 

 

y

 

 

1

 

 

0

θ

S

1

 

 

г

 

 

y

1

 

 

 

- σ 0

σ

S

ж

 

 

- 14 -

 

 

 

 

 

 

y

 

 

 

 

y

 

1

 

 

 

 

1

 

 

 

 

 

 

 

0

θ1

θ2

S

 

0

S

б

 

 

 

 

в

 

y

 

 

 

 

y

 

 

 

 

 

 

 

1

 

 

 

 

1

 

 

 

 

 

 

 

 

θ1

 

 

 

 

 

0

 

θ2

S

 

0

S

1

 

 

 

 

1

 

д

 

 

 

 

е

 

y

 

 

 

y

 

 

1

 

 

 

1

 

 

 

 

 

 

θ1

θ2

 

0 θ1 θ2

θk

S

0

 

θk S

 

 

 

 

1

 

 

з

 

 

 

и

 

 

Рис. 2.2. Функции активации нейронов

Из сопоставления выражений (2.1)–(2.3) и (2.4)– (2.6) следует, что каждому значению порога θ нейрона может быть поставлен в соответствие весовой коэффициент w0 связи сигнала смещения и наоборот.

Реже используются линейные бинарные или биполярные функции активации (рис. 2.2, в и г):

a при S θ1 ,

y kS a0 ,при θ1 S θ2, (2.7)

1 при S θ2,

где a = 0 для бинарных выходных сигналов нейронов и а = –1 для биполярных сигналов; k , a0 – постоянные коэффициенты.

Кроме приведённых в теории нейронных сетей используются также следующие нелинейные функции активации:

– бинарная сигмоидальная или логическая сигмоидальная (рис. 2.2, д):

y

 

1

,

(2.8)

 

 

 

e τS

1

 

 

 

 

 

- 15 -

 

 

 

 

 

 

 

 

где τ– постоянный коэффициент;

 

 

 

 

 

 

 

 

 

 

 

– биполярная сигмоидальная (рис. 2.2, е):

 

 

 

 

 

 

 

 

 

2

 

 

1;

 

 

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 e τS

 

 

 

 

 

 

 

– радиально-симметричная (рис. 2.2, ж):

 

 

 

 

 

 

 

 

 

y e

S 2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

τ2

;

 

 

 

 

 

 

 

 

 

K -значная бинарная (рис. 2.2, з):

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 при S θ1,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1/(K 1) при θ1 S θ2 ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.....................................,

y 2 /(K 1) при θ2 S θ3 ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

K 2

при θk 1 S θk ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

K 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 при S θk ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

K -значная биполярная (рис. 2.2, и):

 

 

 

 

 

 

 

 

 

1 при S θ1,,

 

 

 

 

 

 

 

 

 

 

 

 

 

1 2 /(K 1) при θ

 

S θ

2

,

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

1 4 /(K 1) при θ

2

S θ

3

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.....................................

 

 

 

 

 

 

 

 

 

 

2(K 2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

при θ

 

 

 

S θ

 

,

 

 

 

k 1

k

 

 

 

K 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 при S θk .

 

 

 

 

 

 

 

 

 

 

 

(2.9)

(2.10)

(2.11)

(2.12)

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

- 16 -

дения сигнала снижается до нормального уровня. Этот список отличий, которые многие биологи считают решающими, легко продолжить, однако искусственные нейронные сети все же обнаруживают ряд интересных свойств, характерных для биологических прототипов.

Решение задач распознавания на основе отдельных нейронов. Пра-

вило Хебба. Искусственные нейронные сети, предназначенные для решения разнообразных конкретных задач, могут содержать от нескольких нейронов до тысяч и даже миллионов элементов. Однако уже отдельный нейрон (рис. 2.1) с биполярной или бинарной функцией активации может быть использован для решения простых задач распознавания и классификации изображений. Выбор биполярного (1, –1) или бинарного (1, 0) представления сигналов в нейросетях осуществляется исходя из решаемой задачи, и во многих случаях он равноценен. Имеется спектр задач, в которых бинарное кодирование сигналов более удобно, однако, в общем, биполярное представление информации более предпочтительно.

Поскольку выходной сигнал у двоичного нейрона (рис. 2.1) принимает только 2 значения, то нейрон можно использовать для классификации

предъявляемых изображений на 2 класса.

 

 

 

 

 

 

 

 

 

 

 

Пусть имеется множество M изображений, для которых известна кор-

ректная

 

классификация

на

2

класса

X

1

X

11

12

, ..., X

lq

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, X

 

 

 

X

2

X

21

, X

22

,

..., X

2 p

 

, X 1 X 2

M , X 1

X 2

,

и пусть первому

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

классу

X 1 соответствует выходной сигнал

y 1,

а классу

X 2

сигнал

y 1.

Если,

 

например,

предъявлено

некоторое

изображение

X α X1α ,

... , Xnα , X α M и его взвешенная сумма входных сигналов

превышает нулевое значение:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S xiα wi w0 0 ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

то выходной сигнал y 1

 

и, следовательно, входное изображение X α при-

надлежит классу

X 1. Если S 0, то

y 1 и предъявленное изображение

принадлежит классу X 2 .

 

 

 

 

 

 

 

 

 

 

 

 

 

Возможно использование отдельного нейрона и для выделения из множества классов

 

- 17 -

M X 1 X 11, ..., X 1k , ... ,

X i X i1, ... , X iq , ... , X P X p1, ..., X pm

изображений единственного класса X i . В этом случае полагают, что один из двух возможных выходных сигналов нейрона (например, 1) соответ-

ствует классу X i , а второй – всем остальным классам.

Система распознавания на основе единственного нейрона делит всё пространство возможных решений на две области с помощью гиперплоскости

x1w1 x2w2 ... xnwn w0 0 .

Для двумерных входных векторов границей между двумя классами изображений является прямая линия: входные векторы, расположенные выше этой прямой, принадлежат к одному классу, а ниже – к другому.

Для адаптации, настройки или обучения весов связей нейрона может использоваться несколько методов. Рассмотрим один из них, получивший название «правило Хебба». Хебб, исследуя механизмы функционирования центральной нервной системы, предположил, что обучение происходит посредством усиления связей между нейронами, активность которых совпадает по времени. Хотя в биологических системах это предположение выполняется далеко не всегда и не исчерпывает всех видов обучения, однако при обучении однослойных нейросетей с биполярными сигналами оно весьма эффективно.

В соответствии с правилом Хебба, если предъявленному биполярному изображению X (x1, ..., xn ) соответствует неправильный выходной сигнал y , то веса wi (i 1, n) связей нейрона адаптируются по формуле

 

 

 

 

 

 

 

 

 

 

wi (t 1) wi (t) xi y, i 0, n ,

(2.13)

где wi (t) , wi (t 1)

– соответственно вес i -й связи нейрона до и после адап-

 

 

 

 

x0 1 – сигнал

тации; xi (i 1, n)

– компоненты входного изображения;

смещения; y – выходной сигнал нейрона.

В более полной и строгой форме алгоритм настройки весов связей нейрона с использованием правила Хебба выглядит следующим образом:

Шаг 1. Задаётся множество M X 1,t1 , ..., X m ,t m , состоящее из пар

(входное изображение X k x1k , ..., xmk , необходимый выходной сигнал нейрона t k , k 1, m ). Инициируются веса связей нейрона: wi 0, i 1, n .

- 18 -

Шаг 2. Для каждой пары ( X k , tk ), k 1, m , пока не соблюдаются условия останова, выполняются шаги 3–5.

Шаг 3. Инициируется множество входов нейрона: x0 1, xi xik , i 1, n .

Шаг 4. Инициируется выходной сигнал нейрона: y t k . Шаг 5. Корректируются веса связей нейрона по правилу

 

 

 

 

wi (new) wi (old) xi y0,

i 0, n .

Шаг 6. Проверяются условия останова.

Для каждого входного изображения X k рассчитывается соответствующий ему выходной сигнал y k :

 

 

 

1, если S

k

0,

 

 

 

 

k

 

 

 

 

 

y

 

k 1, m ,

 

 

 

 

 

 

 

1, если S k 0,

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

где S k xik wi w0 .

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

 

 

 

Если вектор ( y1, ..., ym )

рассчитанных выходных сигналов равен век-

тору (t1, ... , t m ) заданных сигналов нейрона, т. е. каждому входному изображению соответствует заданный выходной сигнал, то вычисления прекращаются (переход к шагу 7), если же ( y1, ..., ym ) (t1, ..., t m ) , – переход к шагу 2 алгоритма.

Шаг 7. Останов.

Пример 1. Пусть требуется обучить биполярный нейрон распознава-

нию изображений X 1 и X 2 (рис. 2.3). При этом потребуем, чтобы изобра-

жению X 1 соответствовал выходной сигнал нейрона «+1», а изображению

X 2 – сигнал «–1».

X 1

1

2

3

 

 

 

4

5

6

 

 

 

7

8

9

 

 

 

 

X 2

 

1

2

3

4

5

6

7

8

9

Рис. 2.3. Входные изображения

 

 

 

 

 

 

 

- 19 -

 

 

 

Применение алгоритма Хебба даёт следующие результаты:

 

Шаг 1. Задаётся множество

M X 1 (1,

1, 1, 1, 1, 1, 1, 1, 1), 1 , X 2 (1, 1, 1, 1, 1, 1, 1, 1, 1), 1 ,

 

 

 

 

 

 

 

 

инициируются веса связей нейрона: wi 0 (i 0, 9 ).

 

Шаг 2. Для каждой из двух пар ( X 1, 1) , ( X 2 , 1) выполняются шаги 3–

5.

 

 

 

 

 

 

 

 

 

 

 

 

 

Шаг 3. Инициируется множество входов нейрона дня изображения пер-

 

 

 

 

x1

 

 

 

 

вой пары:

x

1, x

( i 0, 9 ) .

 

 

0

 

i

 

i

 

 

 

 

 

 

 

Шаг 4. Инициируется выходной сигнал нейрона для изображения пер-

вой пары:

y t1 1.

 

 

 

 

 

 

 

Шаг 5.

Корректируются веса связей нейрона по правилу Хебба

w w x1y (i

 

) :

 

 

 

 

 

 

0, n

 

 

 

 

 

 

i

i

i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

w0 w0 x0 y 0 1 1 1;

 

 

 

 

 

 

w1 w1 x11y 0 1 1 1;

 

 

 

 

 

 

w1 w3 w4 w5 w6 w9 1;

 

 

 

 

 

 

w2 w2 x12 y 0 ( 1) 1 1;

 

 

 

 

 

 

 

w2 w7 w8 1.

 

Шаг 6. Инициируется множество входов нейрона дня изображения X 2

второй пары:

 

 

x x2 ( i

 

) .

x 1,

 

0, 9

 

 

 

0

 

 

i

i

 

Шаг 7. Инициируется выходной сигнал нейрона для изображения вто-

рой пары ( X 2 ,t 2 ) : y t 2

1.

 

Шаг 8. Корректируются веса связей нейрона:

w0 w0 x0 y 1 1 ( 1) 0;

w1 w1 x12 y 1 1 ( 1) 0;

w1 w3 w4 w5 w6 w9 0;

w2 w2 x12 y 0 ( 1) 1 1;

w2 w7 2;

w5 w5 x52 y 1 ( 1) ( 1) 2; w8 w8 x82 y 1 ( 1) ( 1) 2 .

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]