Обработайте обучение в пакетном режиме с весом и правилами изучения смещения
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 с прошлого раза, когда это уменьшилось (при использовании валидации).