Функция обучения предвзятости совести
[dB,LS] = learncon(B,P,Z,N,A,T,E,gW,gA,D,LP,LS)
info = learncon('code')
learncon - функция обучения смещению совести, используемая для увеличения сетевого входа в нейроны, которые имеют самый низкий средний выход, пока каждый нейрон не реагирует приблизительно на равный процент времени.
[dB,LS] = learncon(B,P,Z,N,A,T,E,gW,gA,D,LP,LS) принимает несколько входов,
B |
|
P |
|
Z |
|
N |
|
A |
|
T |
|
E |
|
gW |
|
gA |
|
D |
|
LP | Параметры обучения, нет, |
LS | Состояние обучения, первоначально должно быть = |
и возвращает
dB |
|
LS | Новое состояние обучения |
Обучение происходит в соответствии с learnconПараметр learning, показанный здесь со значением по умолчанию.
LP.lr - 0.001 | Уровень обучения |
info = learncon(' возвращает полезную информацию для каждого поддерживаемого code')code символьный вектор:
'pnames' | Названия параметров обучения |
'pdefaults' | Параметры обучения по умолчанию |
'needg' | Возвращает 1, если эта функция используется |
Совместимость Deep Learning Toolbox™ 2.0: LP.lr описанный выше равен 1 минус постоянная времени смещения, используемая trainc в программном обеспечении Deep Learning Toolbox 2.0.
Здесь определяется случайный вывод A и вектор смещения W для слоя с тремя нейронами. Также определяется уровень обучения. LR.
a = rand(3,1); b = rand(3,1); lp.lr = 0.5;
Поскольку learncon только эти значения необходимы для вычисления изменения смещения (см. «Алгоритм» ниже), используйте их для этого.
dW = learncon(b,[],[],[],a,[],[],[],[],[],lp,[])
Подготовка смещения слоя i пользовательской сети для изучения с помощью learncon,
Набор net.trainFcn кому 'trainr'. (net.trainParam автоматически становится trainrПараметры по умолчанию.)
Набор net.adaptFcn кому 'trains'. (net.adaptParam автоматически становится trainsПараметры по умолчанию.)
Набор net.inputWeights{i}.learnFcn кому 'learncon'
Установить каждый net.layerWeights{i,j}.learnFcn кому 'learncon'. (Для каждого свойства параметра weight learning автоматически устанавливается значение learnconПараметры по умолчанию.)
Обучение сети (или возможность ее адаптации),
Набор net.trainParam (или net.adaptParam) требуемые свойства.
Звонить train (или adapt).
learncon вычисляет изменение смещения db для данного нейрона путем предварительного обновления совести каждого нейрона, то есть среднего значения его выхода:
c = (1-lr)*c + lr*a
Затем совесть используется для вычисления смещения для нейрона, которое является наибольшим для меньших значений совести.
b = exp(1-log(c)) - b
(learncon приходит в себя C от значений смещения при каждом вызове.)