Настройка весового вектора
Мы требуем, чтобы вектор весов в расширенном пространстве был ортогонален решающей гиперплоскости, и плоскость проходила через начало координат. Обучающую выборку (задачник) для нейрона можно рассматривать как множество пар
, где - входной вектор, - класс (выход, принимающий одно из двух значений, например, 0 или 1), которому принадлежит . Такой тип обучения называется обучением с учителем, т.к. мы сообщаем сети, каким должен быть выходной сигнал для каждого вектора входных сигналов.Пусть для некоторого
выполняется , но выход сетигде
при , и при , т.е. (уголна рис.2 между векторами
и больше ). Чтобы исправить ситуацию, нужно повернуть вектор весов , приближая его направление к направлению вектора . В то же время изменение не должно быть слишком резким, чтобы не испортить уже выполненное обучение. Мы достигнем обеих целей, если добавим к вектору часть вектора , чтобы получить новый векторПредположим теперь, что
, а (угол на рис.2 между векторами и меньше ). Теперь нужно увеличить угол между и , что получается путем вычитания частииз
:увеличить изображение
Рис. 2. Настройка вектора весов
Результирующая запись имеет вид:
Параметр
называется скоростью обучения.Алгоритм обучения нейрона (персептрона) будет иметь вид:
repeat for
begin y = h[(W,V)];
end until