Функция обучения весу перцептрона и предвзятости
[dW,LS] = learnp(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)
info = learnp('code')
learnp является функцией обучения весу/смещению перцептрона.
[dW,LS] = learnp(W,P,Z,N,A,T,E,gW,gA,D,LP,LS) принимает несколько входов,
W |
|
P |
|
Z |
|
N |
|
A |
|
T |
|
E |
|
gW |
|
gA |
|
D |
|
LP | Параметры обучения, нет, |
LS | Состояние обучения, первоначально должно быть = |
и возвращает
dW |
|
LS | Новое состояние обучения |
info = learnp(' возвращает полезную информацию для каждого code')code символьный вектор:
'pnames' | Названия параметров обучения |
'pdefaults' | Параметры обучения по умолчанию |
'needg' | Возвращает 1, если эта функция используется |
Здесь определяется случайный ввод P и ошибка E для слоя с двухэлементным входом и тремя нейронами.
p = rand(2,1); e = rand(3,1);
Поскольку learnp только эти значения необходимы для вычисления изменения веса (см. «Алгоритм» ниже), используйте их для этого.
dW = learnp([],p,[],[],[],[],e,[],[],[],[],[])
learnp вычисляет изменение веса dW для данного нейрона из входа нейрона P и ошибка E согласно правилу перцептронного обучения:
dw = 0, if e = 0
= p', if e = 1
= -p', if e = -1
Это можно резюмировать следующим образом:
dw = e*p'
Розенблат, Ф., Принципы нейродинамики, Вашингтон, округ Колумбия, «Спартан Пресс», 1961 год