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