Нейросетевые технологии. Каширина И.Л. - 19 стр.

UptoLike

Составители: 

19
Напишите программу, обучающую однонейронный персептрон распознава-
нию изображений «крестиков» и «ноликов». Входные образы (10–15 штук)
представляют собой графические изображения. Каждое изображение разбито
на квадраты (или пиксели), и от каждого квадрата на персептрон подается
вход. Если в квадрате имеется линия (или пиксель окрашен в черный цвет),
то от него подается единица, в противном
случаеноль. Множество квадра-
тов на изображении задает, таким образом, множество нулей и единиц, кото-
рое и подается на входы персептрона (рис. 10). Цель состоит в том, чтобы
научить персептрон давать единичный выход при подаче на него множества
входов, задающих «крестик», и нулевой выход в случае «нолика».
3.
Напишите программу, обучающую десятинейронный персептрон
распознаванию изображений цифр. Каждый нейрон должен давать еди-
ничный выход при подаче на вход изображения, соответствующего его по-
рядковому номеру, и нулевой для всех остальных изображений.
§ 4. ПРОЦЕДУРА ОБРАТНОГО РАСПРОСТРАНЕНИЯ
Рассмотренный в предыдущем параграфе алгоритм обучения одно-
слойного персептрона очень прост. Однако долгие годы не удавалось
обобщить этот алгоритм на случай многослойных сетей, что спровоциро-
вало в научных кругах значительный спад интереса к нейронным сетям.
Только в 1986 году Румельхарт разработал эффективный алгоритм коррек-
тировки весов, названный
алгоритмом обратного распространения оши-
бок
(back propagation).
Нейронные сети обратного распространенияэто современный инстру-
мент поиска закономерностей, прогнозирования, качественного анализа. Та-
кое название
сети обратного распространения они получили из-за ис-
пользуемого алгоритма обучения, в котором ошибка распространяется от вы-
ходного слоя к входному, т. е. в направлении, противоположном направле-
нию распространения сигнала при нормальном функционировании сети.
Нейронная сеть обратного распространения состоит из нескольких
слоев нейронов, причем каждый нейрон предыдущего слоя связан с каж-
дым нейроном
последующего слоя. В большинстве практических прило-
жений оказывается достаточно рассмотрения двухслойной нейронной сети,
имеющей входной (скрытый) слой нейронов и выходной слой (рис 11).
Матрицу весовых коэффициентов от входов к скрытому слою обозна-
чим W, а матрицу весов, соединяющих скрытый и выходной слой, – как V.
Для индексов примем следующие обозначения: входы будем нумеровать
только индексом
i, элементы скрытого слояиндексом j, а выходы, соот-
ветственно, индексом
k. Число входов сети равно n, число нейронов в
скрытом слое
– m, число нейронов в выходном слоеp. Пусть сеть обуча-
ется на выборке (
tt
DX ,), Tt ,1= .
Напишите программу, обучающую однонейронный персептрон распознава-
нию изображений «крестиков» и «ноликов». Входные образы (10–15 штук)
представляют собой графические изображения. Каждое изображение разбито
на квадраты (или пиксели), и от каждого квадрата на персептрон подается
вход. Если в квадрате имеется линия (или пиксель окрашен в черный цвет),
то от него подается единица, в противном случае – ноль. Множество квадра-
тов на изображении задает, таким образом, множество нулей и единиц, кото-
рое и подается на входы персептрона (рис. 10). Цель состоит в том, чтобы
научить персептрон давать единичный выход при подаче на него множества
входов, задающих «крестик», и нулевой выход в случае «нолика».
     3. Напишите программу, обучающую десятинейронный персептрон
распознаванию изображений цифр. Каждый нейрон должен давать еди-
ничный выход при подаче на вход изображения, соответствующего его по-
рядковому номеру, и нулевой для всех остальных изображений.
    § 4. ПРОЦЕДУРА ОБРАТНОГО РАСПРОСТРАНЕНИЯ
      Рассмотренный в предыдущем параграфе алгоритм обучения одно-
слойного персептрона очень прост. Однако долгие годы не удавалось
обобщить этот алгоритм на случай многослойных сетей, что спровоциро-
вало в научных кругах значительный спад интереса к нейронным сетям.
Только в 1986 году Румельхарт разработал эффективный алгоритм коррек-
тировки весов, названный алгоритмом обратного распространения оши-
бок (back propagation).
     Нейронные сети обратного распространения – это современный инстру-
мент поиска закономерностей, прогнозирования, качественного анализа. Та-
кое название – сети обратного распространения – они получили из-за ис-
пользуемого алгоритма обучения, в котором ошибка распространяется от вы-
ходного слоя к входному, т. е. в направлении, противоположном направле-
нию распространения сигнала при нормальном функционировании сети.
     Нейронная сеть обратного распространения состоит из нескольких
слоев нейронов, причем каждый нейрон предыдущего слоя связан с каж-
дым нейроном последующего слоя. В большинстве практических прило-
жений оказывается достаточно рассмотрения двухслойной нейронной сети,
имеющей входной (скрытый) слой нейронов и выходной слой (рис 11).
     Матрицу весовых коэффициентов от входов к скрытому слою обозна-
чим W, а матрицу весов, соединяющих скрытый и выходной слой, – как V.
Для индексов примем следующие обозначения: входы будем нумеровать
только индексом i, элементы скрытого слоя – индексом j, а выходы, соот-
ветственно, индексом k. Число входов сети равно n, число нейронов в
скрытом слое – m, число нейронов в выходном слое – p. Пусть сеть обуча-
ется на выборке ( X t , D t ), t = 1, T .

                                   19