Sb97955
.pdfМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина)
А. В. ГОРЯЧЕВ Н. Е. НОВАКОВА
ТЕХНОЛОГИИ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Санкт-Петербург
2018
- 1 -
МИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина)
А. В. ГОРЯЧЕВ Н. Е. НОВАКОВА
ТЕХНОЛОГИИ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА
Учебно-методическое пособие
Санкт-Петербург
Издательство СПбГЭТУ «ЛЭТИ»
2018
- 2 -
УДК 004.415.28 + 7.021.5(075) ББК З973.23 – 018я7
Г 71
Горячев А. В., Новакова Н. Е.
Г 71 Технологии искусственного интеллекта: учеб. -метод. пособие. СПб.: Изд-во СПбГЭТУ «ЛЭТИ», 2018. 36 с.
ISBN 978-5-7629-2336-1
Посвящено технологиям искусственного интеллекта. Содержит задания к лабораторным и практическим работам по дисциплинам «Технологии искусственного интеллекта» и «Основы искусственного интеллекта». Позволяет получить базовые знания в области искусственных нейронных сетей, генетического алгоритма и решения задач дискретной оптимизации на основе алгоритмов роевого интеллекта.
Предназначено для студентов дневной формы обучения по направлению 220300 «Информатика и вычислительная техника».
УДК 004.415.28 + 7.021.5(075) ББК З973.23 – 018я7
Рецензент: д-р техн. наук С. Ю. Лузин (ООО «Эремекс»).
Утверждено редакционно-издательским советом университета
в качестве учебно-методического пособия
ISBN 978-5-7629-2336-1 |
© СПбГЭТУ «ЛЭТИ», 2018 |
- 3 -
ЛАБОРАТОРНЫЕ РАБОТЫ
Работа 1. НЕЙРОННАЯ СЕТЬ ХЕММИНГА
Цель работы – приобретение и закрепление знаний и получение практических навыков работы с нейронной сетью Хемминга.
Краткие сведения из теории
Сеть Хемминга – это одна из наиболее многообещающих распознающих и классифицирующих нейронных сетей [1]. В этой сети чёрно-белые изображения представляются в виде m -мерных биполярных векторов. Своё название она получила от расстояния Хемминга, которое используется при нахождении меры сходства R входного и эталонных изображений, хранимых с помощью весов связей сети. Мера сходства определяется соотношением
R m Rx , |
(1.1) |
где m – число компонент входного и эталонных векторов; Rx – расстояние Хемминга между векторами.
Определение 1. Расстоянием Хемминга между двумя двоичными векторами называется число компонент, в которых векторы различны.
В силу определения расстояния Хемминга мера сходства изображений (1.1) может быть задана и как число a компонент двоичных векторов, в которых они совпадают: R a .
Запишем для биполярных векторов S (s1, ..., sm ) и Z (z1, ..., zm ) их скалярное произведение через число совпадающих и отличающихся компонент:
m |
|
S Z si zi a d . |
(1.2) |
i 1 |
|
Поскольку a – размерность векторов, то m a d , |
следовательно, |
скалярное произведение (1.2) можно записать в виде |
|
S Z 2a m. |
|
Отсюда несложно получить:
a m/ 2 S Z
2
|
m |
|
1 |
m |
|
|
|
|
|
si zi . |
(1.3) |
|
|
||||
|
2 |
|
2 i 1 |
|
- 4 -
Правую часть выражения (1.3) можно рассматривать как входной сигнал нейрона, имеющего m синапсов с весовыми коэффициентами zi / 2
(i 1, m) и смещением m/ 2 . Синапсы нейрона воспринимают m компо-
нент входного вектора S (s1, ..., sm ) . Такая интерпретация правой части выражения (1.3) приводит к архитектуре нейронной подсети, изображённой в нижней части рис. 1.1. Одни авторы называют сетью Хемминга сеть, изображенную на рис. 1.1, другие – только её нижнюю часть, считая, что приведённая сеть состоит из двух подсетей – Хемминга и Махnet. Будем придерживаться первой точки зрения.
Y 1 |
|
Y2 |
Yi |
|
Yn 1 |
Yn |
A1 |
A2 |
. . . |
Ai |
. . . |
An 1 |
A n |
|
|
|||||
Z 1 |
Z2 |
. . . |
Zi |
. . . |
Zn 1 |
Zn |
|
|
1 |
S2 |
Si |
S1 |
||
|
. . . |
. . . |
Рис. 1.1. Сеть Хемминга
Sm 1 Sm
Сеть Хемминга имеет m входных нейронов S1, ..., |
Sm , воспринимаю- |
|
щих биполярные компоненты s1q ,..., smq |
входных |
изображений S q |
(q 1, L) . Выходные сигналы S -элементов определяются соотношением
|
|
- 5 - |
|
|
|
q |
1, |
|
1, |
если si |
|
U вых i |
|
если sq |
(1.4) |
|
1, |
1, |
|
|
|
i |
|
т. е. выходной сигнал S -элемента повторяет его входной сигнал:
UвыхSi UвхSi siq .
Каждый нейрон S j ( j 1, m) связан со входом каждого элемента Zk (k 1, n) . Веса этих связей w1k , ... , wkm содержат информацию о k -м
эталонном изображении V k (v1k , |
..., vmk ) : |
||||
|
|
|
если s |
q |
1, |
|
|
1, |
|
||
Uвых S |
|
|
i |
|
|
i |
|
если sq |
(1.5) |
||
|
1, |
1. |
|||
|
|
|
i |
|
Функции активации Z -элементов описывается соотношением
|
|
|
|
0, если Uвх 0, |
|
|
|
|
|
|||
g |
Z |
(U |
вх |
) k U |
вх |
, если 0 |
U |
вх |
U |
n |
, |
(1.6) |
|
|
1 |
|
|
|
|
|
|||||
|
|
|
|
U n , если Uвх |
U n , |
|
|
|
|
где Uвх – входной сигнал нейрона; k1, U n – константы.
При предъявлении входного изображения S* (s1* , ..., s*m ) каждый Z -нейрон рассчитывает свой входной сигнал в соответствии c выражением вида (1.3):
|
m |
|
|
|
Uвх Zk m/ 2 wik Si* |
|
(1.7) |
||
|
i 1 |
|
|
|
и с помощью функций активации определяет выходной сигнал Uвх Z |
k |
. Вы- |
||
|
|
|
|
|
ходные сигналы Uвых Z , ..., Uвых Z |
n |
Z -элементов являются входными |
||
1 |
|
|
|
сигналами a1, ..., an верхней подсети, которой является сеть Maxnet. Функ-
ции активации нейронов Ap ( p 1, n) и веса их связей задаются соотноше-
ниями
U |
вх |
, если U |
вх |
0, |
|
|
|
||
g(Uвх ) |
|
|
|
|
0, если Uвх |
0, |
- 6 -
|
|
|
1, если i j, |
|
|
wij |
|
|
ε , |
если i j, i, |
j 1, n, |
где ε – константа, удовлетворяющая неравенствам 0 ε 1/n .
Сеть функционирует циклически, динамика нейронов описывается итерационным выражением
|
|
|
|
|
n |
|
|
|
|
||
Ui (t 1) g(Ui (t) ε |
U j (t)), |
i 1, n , |
|
||||||||
|
|
|
|
j 1, j i |
|
|
|
|
|||
при начальных условиях |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
U |
i |
(0) a |
U |
вх Zi |
, i 1, n . |
|
|
|
(1.8) |
||
|
i |
|
|
|
|
|
|
|
|
||
Если среди входных сигналов a1, |
..., an , нейронов A1, ..., An |
имеется |
один наибольший сигнал a p ( p 1, 2, ..., n ) , то в результате итерацион-
ного процесса в подсети Maxnet только один нейрон Ap останется с выход-
ным сигналом, большим нуля, т. е. станет «победителем». Поскольку выходные сигналы U p , ..., U n A -элементов поступают на входы Y -нейронов,
которые имеют функцию активации вида
|
вх |
|
|
1, если U |
|
0, |
|
gY (Uвх ) |
|
|
(1.9) |
0, если Uвх 0, |
|
то в результате на выходе сети Хемминга только один нейрон Yp окажется
с единичным выходным сигналом. Единичный выход этого нейрона и нулевые всех остальных и будут указывать на то, что предъявленное изображение S* (s1* , ... , s*m ) наиболее близко, в смысле заданной меры близости
(1.1), к эталонному изображению V p (v1p , ..., vmp ) .
Существенное достоинство сети Хемминга заключается в том, что она не требует трудоёмких вычислительных процедур для своего обучения. Заметный недостаток сети: она не выделяет 2 и более эталонных изображений, имеющих с предъявленным одинаковые максимальные меры близости.
Пример. Разработать сеть Хемминга, имеющую в качестве эталонных 5 чёрно-белых изображений V1, ..., V5 (рис. 1.2). Определить реакцию сети на изображения, приведённые на рис. 1.3.
|
|
- 7 - |
|
|
V1 |
V 2 |
V 3 |
V 4 |
V 5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис. 1.2. Эталонные изображения |
|
|
|
|
|
|
|
||||||||||||||
|
|
|
S 1 |
|
|
|
|
S 2 |
|
|
|
S 3 |
|
|
|
|
|
|
|
|||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
2 |
3 |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
5 |
6 |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
8 |
9 |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
Рис. 1.3. Предъявляемые изображения |
Рис. 1.4. Нумерация |
элементов изображения
Поскольку задано всего 5 эталонных изображений, то сеть должна иметь по 5 Z -, A - и Y -нейронов. Наличие девяти чёрно-белых элементов в изображениях на рис. 1.2 и 1.3 определяет 9 S -нейронов, воспринимающих элементы входных изображений.
Пронумеруем элементы изображений на рис. 1.2 и 1.3 в соответствии с рис. 1.4 и представим изображения V p ( p 1, s) в векторной форме, используя биполярное представление векторов:
V1 ( 1, |
1, 1, 1, 1, 1, |
1, 1, 1) , |
|
V 2 (1, |
1, 1, 1, 1, 1, |
1, 1, 1) , |
|
V 3 (1, |
1, 1, 1, 1, 1, |
1, |
1, 1) , |
V 4 (1, 1, |
1, 1, 1, 1, |
1, |
1, 1) , |
V 5 ( 1, 1, |
1, 1, 1, 1, 1, 1, 1) . |
|||||
Зная векторы эталонных изображений и их число по соотношению |
||||||
|
|
|
|
|
|
|
(1.5), рассчитаем матрицу |
Wik |
(i 1, 9, k 1, 5) весов связей нижней под- |
||||
сети сети Хемминга: |
|
|
|
|
|
|
|
|
|
|
|
- 8 - |
|
|
|
|
|
|
||
|
|
|
0,5 |
0,5 |
0,5 |
0,5 |
0,5 |
|
|
|||||
|
|
|
|
|
||||||||||
|
|
|
|
0,5 |
0,5 |
0,5 |
0,5 |
0,5 |
|
|
||||
|
|
|
0,5 |
0,5 |
0,5 |
0,5 |
0,5 |
|
|
|||||
|
|
|
0,5 |
0,5 |
0,5 |
0,5 |
0,5 |
|
|
|||||
|
|
|
|
0,5 |
0,5 |
0,5 |
|
0,5 |
0,5 |
, |
(1.10) |
|||
|
Wik |
|
|
|||||||||||
|
|
|
0,5 |
0,5 |
0,5 |
|
0,5 |
0,5 |
|
|
||||
|
|
|
0,5 |
0,5 |
0,5 |
0,5 |
0,5 |
|
|
|||||
|
|
|
|
0,5 |
0,5 |
0,5 |
|
0,5 |
0,5 |
|
|
|||
|
|
|
0,5 |
0,5 |
0,5 |
|
0,5 |
0,5 |
|
|
||||
Смещения b1, , b5 |
Z -нейронов рассчитываются как |
|
||||||||||||
|
|
b b |
b |
|
m |
|
|
9 |
4,5 . |
|
(1.11) |
|||
|
|
|
|
|
||||||||||
1 |
2 |
5 |
2 |
|
2 |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
||||
Функции активации |
Z -нейронов зададим соотношением (1.6) при |
k1 0,1 и Un 1k1 10,1 10 . Функции активации Y -нейронов определим как функции (1.9).
Константу ε , определяющую веса отрицательных связей в подсети Maxnet, найдём из равенства ε 1n . Так как n 5 , то ε 0,2 .
Зная все параметры сети Хемминга, рассмотрим её функционирование при предъявлении изображения S1 1, 1, 1, 1, 1, 1, 1, 1, 1 .
После предъявления изображения S1 на выходах S -нейронов в силу того, что их выходные сигналы повторяют входные (соотношения (1.4)), по-
явится вектор сигналов Sвых S S1. Используя выходные сигналы S -эле-
ментов, каждый Z -нейрон рассчитывает свой входной сигнал в соответствии с (1.7), матрицей весов (1.10) и смещением bk , k 1, 5 (1.11):
|
|
|
9 |
|
9 |
|
|
|
||
Uвх Z |
|
wi1Si1 4,5 0,5 1 0,5 1 0,5 1 0,5 1 0,5 1 |
||||||||
|
|
|||||||||
|
1 |
2 |
|
i 1 |
|
|
|
|||
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
||
0,5 1 0,5 1 0,5 1 0,5 1 2; |
|
|
||||||||
|
|
|
|
9 |
9 |
|
|
|
||
Uвх Z |
|
|
wi2Si1 4,5 0,5 1 0,5 |
1 0,5 |
1 0,5 |
1 0,5 1 |
||||
2 |
|
|||||||||
|
2 |
i 1 |
|
|
|
|||||
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
||
0,5 1 0,5 1 0,5 1 0,5 1 6; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- 9 - |
|
|
|
|
|
9 |
|
|
9 |
|
|
|
|
|
Uвх Z |
|
|
|
|
wi3Si1 4,5 0,5 |
1 0,5 1 0,5 1 0,5 1 0,5 1 |
||||||
3 |
|
|
|
|||||||||
|
2 |
|
i 1 |
|
|
|
|
|||||
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0,5 1 0,5 1 0,5 1 8; |
|
|
|
|
||||||||
|
|
|
|
|
9 |
9 |
|
|
|
|
||
Uвх Z |
|
|
wi4Si1 4,5 0,5 |
1 0,5 1 0,5 1 |
0,5 1 0,5 1 |
|||||||
4 |
|
|
||||||||||
|
2 |
i 1 |
|
|
|
|
||||||
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0,5 1 0,5 1 0,5 1 0,5 1 4; |
|
|||||||||||
|
|
|
9 |
|
|
9 |
|
|
|
|
||
Uвх Z |
|
|
|
wi5Si1 4,5 0,5 1 0,5 1 |
0,5 1 0,5 1 |
|||||||
5 |
|
|||||||||||
|
2 |
|
|
i 1 |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0,5 1 0,5 1 0,5 1 0,5 |
1 0,5 1 4. |
|
||||||||||
По входному сигналу Uвх Z |
k |
, используя свою функцию активации |
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
(1.6) при k1 0,1 и Un 10 , каждый Z -нейрон рассчитывает свой выходной сигнал:
Uвых Z |
k1Uвх Z |
0,1 2 0,2, |
|
|
1 |
1 |
|
|
|
Uвых Z2 k1Uвх Z2 |
0,1 6 0,6, |
|
||
Uвых Z3 k1Uвх.Z3 |
0,1 8 0,8, |
|
||
Uвых Z4 |
k1Uвх Z4 |
0,1 |
4 0,4, |
|
Uвых Z5 |
k1Uвх Z5 |
0,1 |
4 0,4. |
|
Вектор |
|
|
|
|
Uвых Z 0,2; 0,6; 0,8; 0,4; 0,4 |
(1.12) |
является входным вектором подсети Maxnet, которая начинает итерационный процесс выделения максимального выходного сигнала при начальных условиях (1.12). Для t 1 имеем:
|
|
|
5 |
|
|
|
Uвых A |
(1) g[Uвых A (0) ε Uвых A |
(0)] g[0,2 0,2(0,6 0,8 0,4 0,4)] |
|
|||
1 |
1 |
|
k |
|
|
|
|
|
k 2 |
|
|
|
|
g(0,24) 0,24; |
|
|
|
|
|
|
|
|
|
5 |
|
|
|
UвыхA |
(1) g(Uвых A |
(0) ε |
UвыхA |
(0)) g(0,6 0,2(0,2 0,8 0,4 0,4)) |
|
|
2 |
2 |
|
k 1,k 2 |
k |
|
|
|
|
|
|
|
|
g(0,24) 0,24;