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