trainbu

Пакетное неконтролируемое обучение весу/смещению

Синтаксис

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.epochs1000

Максимальное количество эпох для обучения

net.trainParam.show25

Эпохи между отображениями (NaN при отсутствии отображений)

net.trainParam.showCommandLinefalse

Сгенерируйте выход в командной строке

net.trainParam.showWindowtrue

Показать обучающий графический интерфейс пользователя

net.trainParam.timeinf

Максимальное время обучения в секундах

Валидация и тестовые векторы не имеют влияния на обучение для этой функции, но действуют как независимые меры обобщения сети.

Использование сети

Можно создать стандартную сеть, которая использует trainbu по вызову selforgmap. Чтобы подготовить пользовательскую сеть для обучения с trainbu:

  1. Задайте NET.trainFcn на 'trainbu'. (Этот набор опций NET.trainParam на trainbu параметры по умолчанию.)

  2. Установите каждую NET.inputWeights{i,j}.learnFcn к функции обучения.

  3. Установите каждую NET.layerWeights{i,j}.learnFcn к функции обучения.

  4. Установите каждую NET.biases{i}.learnFcn к функции обучения. (Параметры обучения с учетом веса и смещения автоматически устанавливаются на значения по умолчанию для заданной функции обучения.)

Для обучения сети:

  1. Задайте NET.trainParam свойства к желаемым значениям.

  2. Установите параметры обучения с учетом веса и смещения на желаемые значения.

  3. Функции train.

См. selforgmap для примеров обучения.

Алгоритмы

Каждый вес и смещение обновляется в соответствии с его функцией обучения после каждой эпохи (один проходит через весь набор входа векторов).

Обучение останавливается, когда достигается любое из этих условий:

  • Максимальное количество epochs (повторения) достигается.

  • Эффективность минимизирована до goal.

  • Максимальное количество time превышено.

  • Эффективность валидации увеличилась более чем max_fail раз с момента последнего уменьшения (при использовании валидации).

См. также

|

Введенный в R2010b