Самообучение НС методом Хебба
Алгоритм Хебба позволяет обучать НС без контроля правильности ответов. Алгоритм основан на принципе усиления связи между возбужденными нейронами. Сигнальный метод обучения Хебба корректирует весовые коэффициенты НС в соответствии со следующими формулами:
, ,
где - выходной сигнал обучаемого нейрона, - выходной сигнал нейрона предыдущего слоя, который является одним из входных сигналов обучаемого нейрона, - номер шага обучения. Из формулы видно, что наибольшие изменения претерпит та синаптическая связь, которая соединяет большие входные и выходные сигналы. В матричной форме данный алгоритм можно записать в следующем виде:
, , ,…,
, ,
.
Нейронная сеть Хебба самостоятельно определяет количество классов, на которые она разбивает поток обучающей выборки. Количество выходных линий НС должно браться с запасом, поскольку заранее количество классов неизвестно, при этом следует учитывать, что классы кодируются на выходе позиционным двоичным кодом.
Пример. Создана имитационная модель самообучаемой НС со следующими параметрами: количество слоев – 3, количество входов – 60, количество нейронов по слоям – 16, 12, 12, число эталонов – 9, количество циклов обучения – 300, скорость обучения – 0.001. В качестве обучающей выборки были взяты 9 изображений трех цифр, приведенные на рис.20.1. Разрешение изображений: 10х6. Изображения каждой цифры отличаются за счет наложенных искажений. Классификация данных изображений для человека не вызывает трудностей.
Рис.20.1. Обучающая выборка.
В результате самообучения на выходе НС сформировалось множество выходных сигналов, представленное на рис.20.2. Каждый столбик приведенной диаграммы представляет собой число, соответствующее 12-битовому числу, получаемому на выходе НС, если считать, что каждый выход соответствует определенному разряду двоичного кода числа.
Рис.20.2. Множество выходных сигналов.
Сопоставление рисунков 20.1 и 20.2 позволяет сделать заключение, что нейронная сеть абсолютно правильно осуществляет классификацию изображений цифр. Столбики 0,3,6 соответствуют различным вариантам изображения цифры «4», столбики 2,4,7,8 – «7», столбики 2,5 – «5».
Карты выходных сигналов НС приведены на рис.20.3. На горизонтальной оси карты указаны номера выходов нейронной сети от 0 до 11, а по вертикали – значения соответствующих выходов. Каждый из трех графиков соответствует одной из трех цифр. Если НС относит два изображения к одному классу, то на карте линии этих изображений сливаются для всех номеров выходов. Поскольку все значения близки по абсолютной величине к 1, то можно заключить, что 300 циклов самообучения было достаточно.
Рис.20.3. Карты выходных сигналов до и после обучения.
Карта выходных сигналов до обучения иллюстрирует несовпадение реакции НС на различные изображения одного и того же символа. После обучения эти графики сливаются в один.
Успешность самообучения зависит от начальных значений матриц весовых коэффициентов. В описываемом примере при некоторых генерациях число распознанных классов уменьшалось до двух.
Дата добавления: 2016-02-16; просмотров: 814;