Простейшие алгоритмы обучения персептронов
Пусть вектор X имеет информацию об элементах изображения (светлые элементы – 1, темные - 0), то есть входной вектор состоит из двойных компонентов.
1)Пусть вместо 1
при заданной комбинации на входе, на выходе 0.
2)Если на выходе 0 вместо 1, это свидетельствует о том, что какие-то коэффициенты при единичных входах слишком велики и их надо уменьшить.
Проблемы: какие коэффициенты и насколько увеличить или уменьшить, если считать число 0 и 1 на входе равномерным, половина коэффициентов вообще не изменится при обучении.Из этих самых общих сообщений был сформирован одни из первых алгоритмов обучения персептрона:
1)подать входной вектор и вычислить OUT;
2a) если OUT правильный, то на шаг 1 со следующим вектором;
2б) если OUT неправильный и OUT = 0, то добавить значения входов xi к wi;
если OUT неправильный и OUT = 1, то вычесть значение входов из весов wi;
2в)перейти на шаг 1;
За конечное число шагов алгоритм позволяет обучить персептрон распознанию символов. Желательно этот алгоритм обобщить на случай непрерывных входных сигналов и дать возможность менять скорость обучения. Для этого входные векторы нормируют (приводят к одинаковой длине не меняя направления), выделяется ошибка δ = OUTжел. – OUTфакт. и вводят коэффициент скорости обучения η = 0,01 до 1. Тогда на очередном шаге значение коэффициентов корректируется следующим образом:
wi(n+1) = wi(n) + Δi(n) = wi(n) + ηδxi
Изменение пропорционально ошибке и есть возможность менять скорость обучения (алгоритм дельта-правило).