Обработайте безнадзорное обучение веса/смещения в пакетном режиме
net.trainFcn = 'trainbu'
[net,tr] = train(net,...)
trainbu обучает сеть с весом и правила изучения смещения с пакетными обновлениями. Веса и обновления смещений происходят в конце целой передачи через входные данные.
trainbu не называется непосредственно. Вместо этого вызовы функции train это для сетей, свойство NET.trainFcn которых установлено в 'trainbu', таким образом:
net.trainFcn = 'trainbu' устанавливает свойство сети trainFcn.
[net,tr] = train(net,...) обучает сеть с trainbu.
Обучение происходит согласно параметрам обучения trainbu, показанным здесь со следующими значениями по умолчанию:
net.trainParam.epochs | 1000 | Максимальное количество эпох, чтобы обучаться |
net.trainParam.show | 25 | Эпохи между отображениями ( |
net.trainParam.showCommandLine | false | Сгенерируйте командную строку вывод |
net.trainParam.showWindow | true | Покажите учебный графический интерфейс пользователя |
net.trainParam.time | inf | Максимальное время, чтобы обучаться в секундах |
Валидация и тестовые векторы не оказывают влияния на обучение этой функции, но действие как независимые меры сетевого обобщения.
Можно создать стандартную сеть, которая использует trainbu путем вызова selforgmap. Подготовить пользовательскую сеть, которая будет обучена с trainbu:
Установите NET.trainFcn на 'trainbu'. (Эта опция устанавливает NET.trainParam на параметры значения по умолчанию trainbu.)
Установите каждый NET.inputWeights{i,j}.learnFcn на функцию изучения.
Установите каждый NET.layerWeights{i,j}.learnFcn на функцию изучения.
Установите каждый NET.biases{i}.learnFcn на функцию изучения. (Вес и параметры изучения смещения автоматически установлены в значения по умолчанию для данного изучения функции.)
Обучать сеть:
Установите свойства NET.trainParam на требуемые значения.
Установите вес и параметры изучения смещения к требуемым значениям.
Вызовите train.
Смотрите selforgmap для учебных примеров.
Каждый вес и смещение обновляют согласно его изучению функции после каждой эпохи (одна передача через целый набор входных векторов).
Обучение останавливается, когда любое из этих условий соблюдают:
Максимальное количество epochs (повторения) достигнуто.
Производительность минимизирована к goal.
Максимальная сумма time превышена.
Производительность валидации увеличила больше, чем времена max_fail с прошлого раза, когда это уменьшилось (при использовании валидации).