Функция изучения смещения совести
[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 | 1 |
Z |
|
N |
|
A |
|
T |
|
E |
|
gW |
|
gA |
|
D |
|
LP | Изучая параметры, ни один, |
LS | При изучении состояния, первоначально должен быть = |
и возвращается
dB |
|
LS | Новое состояние изучения |
Изучение происходит согласно learncon
изучение параметра, показанного здесь с его значением по умолчанию.
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'
.. (Каждый вес, изучающий свойство параметра, автоматически установлен в learncon
параметры по умолчанию.)
Обучать сеть (или позволять ему адаптироваться),
Установите net.trainParam
(или net.adaptParam
) свойства, как желаемый.
Вызовите train
(или adapt
).
learncon
вычисляет смещение изменяют db
для данного нейрона первым обновлением совести каждого нейрона, т.е. рабочего среднего значения ее выхода:
c = (1-lr)*c + lr*a
Совесть затем используется для расчета смещение в нейроне, который является самым большим для меньших значений совести.
b = exp(1-log(c)) - b
(learncon
восстанавливает C
от значений смещения каждый раз это называется.)