Вы находитесь на странице: 1из 33

Введение в искусственные

нейронные сети.
Алгоритмы обучения

д.т.н., проф. Гожий О.П.


Многослойные нейронные сети

х1 Y1

Входной слой
Выходной слой
х2

Y2

хn

Cкрытый слой
Процесс обучения нейронной сети
Обучение нейронной сети

• Под обучением ИНС понимается процесс


настройки весовых коэффициентов wij её
базовых процессорных элементов, результатом
чего является выполнение сетью конкретных
задач – распознавания, оптимизации,
аппроксимации, управления.
• Достижение подобных целей формализуется
критерием качества Q, минимальное значение
minw Q = Q* которого соответствует наилучшему
решению поставленной задачи.

6
Типы алгоритмов обучения
Тип определяется функциональным
назначение сети, её архитектурой и
избранной стратегией обучения.
Различают три основных стратегии
обучения:
• «с учителем»,
• «без учителя», т. е. с самообучением,
• смешанную.

7
• Обучение «с учителем» – обучение ИНС, при
котором нейросеть настраивается по заданной
обучающей выборке в соответствии с принятым
правилом или алгоритмом.
• При обучении «без учителя» заранее не
требуется знать правильный результат обучения
и в процессе настройки весовых коэффициентов
образуется внутренняя структура
активизированных базовых элементов,
соответствующая предъявленному вектору
входа сети.
• При смешанной стратегии обучения часть
весовых коэффициентов wij настраивается по
заданной обучающей выборке, а друга – в
соответствии с правилами обучения «без
учителя».

8
• Одно- и многослойные сети обучаются по
первой стратегии ( «с учителем») для решения
задач классификации, аппроксимации и
управления.
• Самообучение используется в сетях Хопфилда,
самоорганизующихся картах (сетях) Кохонена,
сетях ART (adaptive resonance theory, адаптивная
теория резонанса);
• Смешанная стратегия обучения применяется в
RBF-сетях (с радиально-базисными функциями
активации).

9
• Общим для всех модификаций алгоритмов
является их рекуррентный характер, а сами
алгоритмы обучения представляют собой
линейные или чаще нелинейные
дифференциальные (или разностные) уравнения
первого порядка, составленные по
определенному правилу.
• Эти правила имеют эвристический характер, не
всегда вытекающие из принципов
функционирования бионейронов и нервной сети
живого организма.
• Наибольшее распространение получили
следующие правила обучения ИНС:
• правило Хебба;
• δ-правило;
• обучение с «конкуренцией» или методом сравнения;
• ART-правило (обучение «без учителя»);
• «больцманово» обучение.
10
Правило Хебба

• Правило Хебба – первая предложенная


концепция обучения нейросети «без учителя».
• В соответствии с ней весовые коэффициенты wij
синаптических связей увеличиваются, если
активированы (возбуждены) оба базовых
элемента – источник возбуждения и приемник
сигнала возбуждения.
• Тем самым регулярно используемые входы и
синаптические связи активируются за счет
увеличения «своих» весовых коэффициентов в
большей степени, чем остальные нейронные
сети.

11
• Модель обучения Хебба дает объяснение
способности нейросети к привыканию и обучению
этой способности через повторение.
• Правило или алгоритм Хебба записывается
следующим образом:

wij (k  1)  wij (k )    q j q i
где wij(k) – значение весового коэффициента,
изменяющегося от нейрона i к нейрону j до
настройки;
wij(k+1) – то же, но после настройки;
qi, qj – выходы нейронов i, j соответственно;
γ>0 – коэффициент «усиления» алгоритма;
k=0, 1, 2, … .

12
• Важной особенностью правила Хебба
является то, что изменения синаптических весов
wij(k) зависят только от активности базовых
элементов, связанных между собой данным
синапсом.
• Правило Хебба может быть применено для
обучения простых сетей типа маделяйн,
рекуррентных сетей Хопфилда.
• Оно положило начало процессу
«конструирования» множества подобных правил
обучения нейросетей «без учителя» и, в
частности, на этом пути был получен удачный
алгоритм обучения «с конкуренцией»

13
Обучение «конкуренцией»
• Обучение «конкуренцией» в отличие от правила Хебба, по
которому может возбуждаться одновременно множество
базовых элементов выходного слоя, предусматривает
«соревнование» этих элементов за право активации.
• Такая стратегия получила название «победитель
получает все». После активации в процессе настройки
изменяются лишь «победившие» элементы.
• Известно, что такая же стратегия обучения присуща
биологическим нейронным сетям в отличие от обучения
по δ-правилу.
• Обучение «с конкуренцией» используется в ART-сетях,
сетях Кохонена для решения задач классификации
зрительных, звуковых образов, сжатия данных,
кластеризации и котегоризации внутри класса.

14
Алгоритм обратного
распространения ошибки
• Является самым распространённым алгоритмом
обучения ИНС.
• Это итеративный градиентный алгоритм
обучения, который используется с целью
минимизации среднеквадратического отклонения
текущего выхода от желаемого выхода в
многослойных нейронных сетях.
• Алгоритм действует циклически (итеративно), и
его циклы принято называть эпохами.

19
Пошаговое описание алгоритма
обратного распространения
• Шаг 1. Весам сети присваиваются небольшие
начальные значения.
• Шаг 2. Выбирается очередная обучающая пара (X,
Y) из обучающего множества; вектор X подаётся на
вход сети.
• Шаг 3. Вычисляется выход сети.
• Шаг 4. Вычисляется разность между требуемым
(целевым, Y) и реальным (вычисленным) выходом
сети.

21
• Шаг 6. Шаги со 2-го по 5-й повторяются для
каждой пары обучающего множества до тех пор,
пока ошибка на всем множестве не достигнет
приемлемой величины.
• Шаги 2 и 3 подобны тем, которые выполняются в
уже обученной сети.
• Вычисления в сети выполняются послойно. На
шаге 3 каждый из выходов сети вычитается из
соответствующего компонента целевого вектора
с целью получения ошибки.
• Эта ошибка используется на шаге 5 для
коррекции весов сети.

22
Пример алгоритма обучения
многослойной нейронной сети методом
обратного распространения ошибки
Для иллюстрации этого процесса используем нейронную сеть и имеющую
два входа и один выход и два скрытых слоя:

Сигнал е – это взвешенная сумма входных сигналов


Пример алгоритма обучения
многослойной нейронной сети методом
обратного распространения ошибки

Вычисляется
значения
выходного
вектора
Y=[y1,y2,y3]
для первого
скрытого
слоя

Символы W(xm)n представляют вес


связи между сетевым входом xm и
нейрона n во входном слое.
Символы yn представляют выходной
сигнал нейрона n.
Пример алгоритма обучения многослойной
нейронной сети методом обратного
распространения ошибки

Вычисляется значения
выходного вектора
Y=[y4,y5] для второго
скрытого слоя
Рассчитывается выходное значение y для все сети
На следующем шаге алгоритма, выходной сигнала сети y сравнивается с
желаемым выходным сигналом z, который хранится в тренировочных
данных.
Разница между этими двумя сигналами называется ошибкой d
выходного слоя сети.
Весовые коэффициенты Wmn, используемые для обратного
распространения ошибки, равны тем же коэффициентам, что
использовались во время вычисления выходного сигнала. Только
изменяется направление потока данных (сигналы передаются от
выхода ко входу).
Этот процесс повторяется для всех
слоёв сети. Если ошибка пришла от
нескольких нейронов — она
суммируются:

Когда вычислена величина ошибки


сигнала для каждого нейрона – можно
скорректировать весовые
коэффициенты.
При вычисление изменений для весовых коэффициентов
необходимо вычислить производную df(e)/de от функции
активации нейрона (чьи весовые коэффициенты
корректируются).
Для активационной функции типа сигмоида
       1
  S(x) = -----------
        1 + exp(-x)
производная выражается через саму функцию:

S'(x) = S(x)*(1 - S(x))


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

Коэффициент ƞ влияет на скорость обучения сети. 


Есть несколько методов для выбора этого параметра. 
Первый способ — начать учебный процесс с большим значением
параметра ƞ. Во время коррекции весовых коэффициентов, параметр
постепенно уменьшают. 
Второй — более сложный метод обучения, начинается с малым
значением параметра ƞ. В процессе обучения параметр
увеличивается, а затем вновь уменьшается на завершающей стадии
обучения.
Начало учебного процесса с низким значением параметра ƞ позволяет
определить знак весовых коэффициентов.
Искусственные нейронные сети
Алгоритм обучения многослойной нейронной сети
методом обратного распространения ошибки
Недостатки алгоритма обратного
распространения ошибки
1) невысокая скорость сходимости (большое число
итераций),
2) возможность сходимости не к глобальному, а к
локальному решению,
3) возможен остановка сети, при котором большинство
нейронов функционирует при очень больших значениях
аргумента функции активации, то есть на ее пологом
участке.
Для устранения этих недостатков были предложены
многочисленные модификации алгоритма обратного
распространения, которые связаны с использованием
различных функций ошибки, различных процедур
определения направления и величины шага и т. п.

23

Вам также может понравиться