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

Методическое пособие 314

.pdf
Скачиваний:
5
Добавлен:
30.04.2022
Размер:
834.48 Кб
Скачать

может быть описан вектором

X={хi: i = 1, 2,..., п},

(2.12)

где п – число нейронов в сети и размерность входных и выходных векторов.

Каждый элемент xi равен либо +1, либо –1. Обозначим вектор, описывающий k-й образец, через Xk, а его компоненты, соответственно, как хik, k = 1, 2, ..., m, где т – число образцов.

Когда сеть распознает (или «вспомнит») какой-либо образец на основе предъявленных ей данных, ее выходы будут содержать именно его, то есть

Y = Xk,

(2.13)

где Y – вектор выходных значений сети: Y = {уi: i = 1,2,..., п}. В противном случае выходной вектор не совпадет ни с

одним образцовым.

Если сигналы соответствуют некоторому изображению, то, отобразив в графическом виде данные с выхода сети, можно будет увидеть картинку, полностью совпадающую с одной из образцовых (в случае успеха) или же «вольную импровизацию» сети (в случае неудачи).

На стадии инициализации сети весовые коэффициенты синапсов устанавливаются следующим образом (см. рис. 2.10):

 

 

 

 

m

i j,

xi

wij

yi

 

xik xkj ,

wij

 

(2.14)

 

i

 

k 1

 

 

 

 

 

 

 

i j

 

 

 

 

0,

xj

 

yj где i

 

 

j

и j – индексы, соответ-

 

 

 

ственно, предсиноптического и

 

Рис. 2.10

 

постсиноптического нейронов;

 

 

 

xik, xjk i-й и j-й элементы

вектора k-гo образца.

Алгоритм функционирования сети следующий:

1. На входы сети подается неизвестный сигнал. Фактически его ввод осуществляется непосредственной установкой

41

значений выходов:

 

yi (0) = xi, i = 1, 2,..., п,

(2.15)

Ноль в скобке справа от yi означает нулевую итерацию

вцикле работы сети.

2.Рассчитываются новые состояния сумматоров

нейронов

n

 

 

sj(t 1) wijyi(t),

j 1, 2, ..., n

(2.16)

i 1

 

 

и новые значения выходов

 

 

yj (t 1) f[sj (t 1)],

(2.17)

где f – пороговая активационная функция с порогом = 0.

3. Проверка, изменились ли значения выходов за последнюю итерацию. Если да – переход к п. 2, иначе (если выходы стабилизировались) – конец работы. При этом выходной вектор представляет собой образец, наилучшим образом сочетающийся с входными данными.

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

Достаточным условием устойчивой работы такой сети является выполнение равенств

wij wji, wii 0. (2.18)

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

Для сети Хопфилда число запоминаемых образов m не должно превышать величины, примерно равной 0,15n. Кроме того, если два образа А и В очень похожи, они могут вызывать у сети перекрестные ассоциации, то есть предъявление на

42

входы сети вектора А приведет к появлению на ее выходах вектора В и наоборот.

2.3.2. Сеть Хэмминга

Когда нет необходимости, чтобы сеть в явном виде выдавала образец, то есть достаточно, например, получать номер образца, ассоциативную память успешно реализует сеть Хэмминга (рис. 2.11). Данная сеть характеризуется, по сравнению с сетью Хопфилда, меньшими затратами памяти и объемом вычислений [6].

Сеть состоит из двух слоев. Первый и второй слои имеют по т нейронов, где m – число образцов. Нейроны первого слоя имеют по n синапсов, соединенных с входами x1, x2,… , xj, xn сети (образующими фиктивный нулевой слой). Нейроны второго слоя связаны между собой отрицательными обратными синоптическими связями. Единственный синапс с положительной обратной связью для каждого нейрона соединен с его же выходом.

Обратная связь

x1

x2

.

.

. xj

.

.

. xn

+1

1

-

1

 

-

-

2

 

2

.

 

.

.

 

.

 

.

.

 

 

k

 

k

.

 

.

.

 

.

 

.

.

 

 

m m

y1

y2

.

.

.

yk

.

.

.

ym

Слой 1 Слой 2 Рис. 2.11. Структурная схема сети Хемминга

43

Идея работы сети состоит в нахождении расстояния Хэмминга от тестируемого образа до всех образцов (числа различающихся битов в двух бинарных векторах).

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

w

xk

 

 

n 2,

i 1, 2,

..., n, k 1, 2,

..., m, (2.19)

i

,

 

 

2

 

ik

 

 

k

 

 

 

 

где xik i-й вход k-гo образца.

 

 

 

Весовые

коэффициенты

тормозящих

синапсов во

втором слое выбирают из диапазона: 0 < < 1/m. Синапс нейрона, связанный с его же выходом, имеет вес +1.

Алгоритм функционирования сети Хэмминга следую-

щий:

1.На входы сети подается неизвестный вектор X = {хi:

i= 1,..., n}, исходя из которого рассчитываются состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя):

n

 

 

y(j1) wij xi j ,

j 1, 2, ..., m.

(2.20)

i 1

После этого полученными значениями инициализируются значения выходов второго слоя:

y(j2) y(j1),

j 1, 2, ..., m.

(2.21)

2. Вычислить новые состояния сумматоров нейронов второго слоя:

m

 

 

s(j2)(t 1) y(j2) yk(2)(t),

k j,

j 1, 2, ..., m (2.22)

k 1

и значения выходов

y(j2)(t 1) f [s(j2)(t 1)],

j 1, 2, ..., m.

(2.23)

44

3. Проверить, изменились ли выходы нейронов второго слоя за последнюю итерацию. Если да – перейти к шагу 2. Иначе – конец работы.

В заключение отметим следующее. Сети Хопфилда и Хэмминга позволяют просто и эффективно разрешить задачу воссоздания образов по неполной и искаженной информации. Невысокая емкость сетей (число запоминаемых образов) объясняется тем, что сети не просто запоминают образы, а позволяют проводить их обобщение. Вместе с тем легкость построения программных и аппаратных моделей делают эти сети привлекательными для многих применений.

2.3.3. Вероятностные нейронные сети

Вероятностные сети состоят их трех слоев: входного слоя ВС, слоя примеров СП, суммирующего слоя СС (рис. 2.12).

СС

. . .

СП 1 . . . j . . . m . . . . k . . . N

ВС

1

. . .

i

. . .

n

 

x1

. . .

xi

. . .

xn

Рис. 2.12. Вероятностная нейронная сеть [6]

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

45

ет одному примеру, т.е. набору входных значений. Если имеется набор примеров, относящихся к одному классу, то выходы нейронов, соответствующих примерам, объединяются на одном нейроне суммирующего слоя СС. Таким образом, выход этого нейрона является выходом, соответствующим классу.

Алгоритм работы сети состоит в определении разности входных значений и весов связей между нейронами входного слоя и слоя примеров. Для отдельного нейрона слоя примеров эта разность представляется в виде

n

 

dj

 

xij wij

 

.

(2.24)

 

 

i 1

 

 

 

 

 

При определении принадлежности примеров к классу устанавливается оценочная функция W, которая используется как функция активации нейронов слоя примеров. Таким образом, для нейронов, характеризующих определенный класс Ср при произвольном входном наборе Xk, формируются наборы значений Wj, сумма которых есть вероятность отнесения входного набора к определенному классу.

 

X

k

 

 

m

 

 

 

 

 

P

 

 

 

 

W

(X

k

).

(2.25)

 

 

 

 

 

 

 

j

 

 

 

 

Cp

 

j 1

 

 

 

 

 

Здесь m – количество нейронов слоя примера, которые характеризуют класс Ср.

Если функция активации слоя примеров пороговая, то сеть с достаточно высокой достоверностью осуществляет классификацию входных признаков, если величина неопределенности (погрешности) представления входных данных не превышает 5%.

2.3.4. Коллективы нейронных сетей

Коллективы нейронных сетей применяются для сокращений аппаратных и программных ресурсов, поддерживающих работу сети. Для реализации коллектива пространство признаков X разбивается на подмножества X1, X2, ..., Xi,…, XN, каждое из которых имеет схожие признаки. Для каждого

46

подмножества конструируется своя сеть Fi, которая выполняет отображение Xi в пространство Yi (где Yi – выходное состояние сети) Fi: Xi Yi.

 

 

 

 

 

Э1

 

 

Для коллектива сетей ре-

X1

 

 

F

 

 

 

шение

представляется

некото-

 

 

1

 

 

 

 

рым функционалом Ф(F), кото-

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

рый определяет правила объеди-

 

.

 

 

 

 

 

 

 

 

 

Э2

 

нения решений, полученных от-

Xi

 

 

Fi

 

 

 

 

 

Ф(F)

дельными сетями. Сети, работа-

 

 

 

 

 

 

 

 

ющие с подмножествами, назы-

 

 

 

.

 

 

 

 

 

.

 

 

 

 

ваются

экспертами Э1,

Э2, ...,

 

.

 

ЭN

 

 

 

 

 

 

 

 

 

 

 

 

 

Эi,…, ЭN, а их объединение через

XN

 

 

FN

 

 

 

 

 

 

 

 

функционал Ф(F) – коллективом

 

 

 

 

 

 

 

 

 

Рис. 2.13. Коллектив

нейронных сетей (рис. 2.13).

 

нейронных сетей

В

пределах одного экс-

 

перта, в свою очередь,

может

 

 

 

 

 

 

 

 

быть реализован коллектив сетей, т.е. появляются эксперты нижнего уровня, и формируется иерархическая структура коллектива сетей.

2.3.5. Аппаратно-программные средства реализации нейронных сетей для задач электроэнергетики

Нейронные сети реализуются следующим образом [6].

1.В виде программных моделей.

2.Аппаратным способом с использованием специальных чипов-нейронов.

3.Созданием аппаратных средств, моделирующих фрагменты нейронной сети на программируемых логических интегральных схемах.

4.Созданием многопроцессорных систем с повышенным быстродействием на основе процессоров обработки сигналов.

В перечисленных исполнениях сети применяются в различных приложениях.

1.Использование нейронных сетей при обработке изображения.

47

При распознавании изображений производится предварительная их обработка, которая реализуется методом маски. Этот метод заключается в сканировании изображения небольшим по размеру растром, размером 3 3 или 4 4.

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

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

2. Использование сетей для распознавания речи.

При распознавании речи часто используется алгоритм линейного предсказания. Он заключается в том, что по ряду дискретных отсчетов можно предсказать какое созвучие (фонема) будет произнесено. Реализация алгоритма выполняется с помощью следующих аппаратных средств (рис. 2.14):

1)АЦП с частотой отсчета 100 кГц и более;

2)сдвиговых регистров СР в качестве буферной памяти для последовательных отсчетов и нейронных сетей НС, которые по группе отсчетов формируют выходные состояния, соответствующие фонемам (созвучиям).

АС

 

 

 

 

 

НС

 

АЦП

 

СР

 

 

. . .

 

 

 

 

 

 

 

 

НС

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 2.14. Структура системы распознавания речи

48

3. Использование сетей для формирования законов управления.

Вкачестве элементов управления нейронные сети используются как формирователи управляющих воздействий на основе входных данных, описывающих объект управления. В частности, при управлении перемещениями координат входными данными являются рассогласования заданных и реальных координат и производные от этих рассогласований. Нейросетевой регулятор, получив эти данные, формирует величину, корректирующую управляющее воздействие.

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

2.4.Моделирование нейронных сетей в системе MATLAB

2.4.1.Функции создания и активации нейронных сетей

Впакете MATLAB используются следующие функции создания нейронных сетей:

• network – функция создания нейронной сети пользователя;

• newcf – функция создания каскадной НС;

• newhop – функция создания сети Хопфилда;

• newp – функция создания персептрона.

Впакете MATLAB используются следующие функции активации.

• hardlim(X) – пороговая функция активации с порогом, равным нулю.

Пример:

>>X = [0.9 –0.6;0.1 0.4;0.2 –0.5;0 0.5];

>>hardlim(X)

ans =

49

1

0

1

1

1

0

1

1

hardlims(X) – знаковая или сигнатурная функция активации.

logsig(X) – сигмоидальная логистическая функция.

purelin(X) – возвращает матрицу значений линейной функции активации.

dhardlim(X,Y) – производная пороговой функции активации.

dlogsig(X,Y) – производная сигмоидальной логистической функции.

Примеры:

>>X=[0.1; 0.8; –0.7];

>>Y=logsig(X)

Y = 0.5250 0.6900 0.3318

>> dY_dX=dlogsig(X,Y) dY_dX =

0.2494

0.2139

0.2217

2.4.2. Основные этапы реализации нейронной сети

Нейронно-сетевой подход реализуется в несколько эта-

пов.

Рассмотрим пример реализации нейронной сети. 1. Подготовка данных для обучения сети. Задание входного вектора:

>> P = [0 1 2 3 4 5];

50