Обратная связь метода сопряженных градиентов с перезапусками Пауэлла-Биля
net.trainFcn = 'traincgb'
[net,tr] = train(net,...)
traincgb
сетевая учебная функция, которая обновляет вес и значения смещения согласно обратной связи метода сопряженных градиентов с перезапусками Пауэлла-Биля.
net.trainFcn = 'traincgb'
устанавливает сеть trainFcn
свойство.
[net,tr] = train(net,...)
обучает сеть с traincgb
.
Обучение происходит согласно traincgb
учебные параметры, показанные здесь с их значениями по умолчанию:
net.trainParam.epochs | 1000
| Максимальное количество эпох, чтобы обучаться |
net.trainParam.show | 25
| Эпохи между отображениями ( |
net.trainParam.showCommandLine | false | Сгенерируйте командную строку выход |
net.trainParam.showWindow | true | Покажите учебный графический интерфейс пользователя |
net.trainParam.goal | 0
| Цель эффективности |
net.trainParam.time | inf | Максимальное время, чтобы обучаться в секундах |
net.trainParam.min_grad | 1e-10 | Минимальный градиент эффективности |
net.trainParam.max_fail | 6
| Максимальные отказы валидации |
net.trainParam.searchFcn | 'srchcha' | Имя линии ищет стандартную программу, чтобы использовать |
Параметры связаны с методами поиска линии (не все используемые для всех методов):
net.trainParam.scal_tol | 20
| Разделитесь на |
net.trainParam.alpha | 0.001
| Масштабный коэффициент, который определяет достаточное сокращение |
net.trainParam.beta | 0.1
| Масштабный коэффициент, который определяет достаточно большой размер шага |
net.trainParam.delta | 0.01
| Начальный размер шага на шаге местоположения интервала |
net.trainParam.gama | 0.1
| Параметр, чтобы избежать маленьких сокращений эффективности, обычно устанавливайте на |
net.trainParam.low_lim | 0.1
| Нижний предел на изменении в размере шага |
net.trainParam.up_lim | 0.5 | Верхний предел изменения в размере шага |
net.trainParam.maxstep | 100
| Максимальная длина шага |
net.trainParam.minstep | 1.0e-6 | Минимальная длина шага |
net.trainParam.bmax | 26
| Максимальный размер шага |
Можно создать стандартную сеть, которая использует traincgb
с feedforwardnet
или cascadeforwardnet
.
Подготовить пользовательскую сеть, которая будет обучена с traincgb
,
Установите net.trainFcn
к 'traincgb'
. Это устанавливает net.trainParam
к traincgb
параметры по умолчанию.
Установите net.trainParam
свойства к требуемым значениям.
В любом случае, вызывая train
с получившейся сетью обучает сеть с traincgb
.
traincgb
может обучить любую сеть пока ее вес, сетевой вход, и передаточные функции имеют производные функции.
Обратная связь используется, чтобы вычислить производные эффективности perf
относительно веса и переменных X
смещения. Каждая переменная настроена согласно следующему:
X = X + a*dX;
где dX
поисковое направление. Параметр a
выбран, чтобы минимизировать эффективность вдоль поискового направления. Поиск линии функционирует searchFcn
используется, чтобы определить местоположение минимальной точки. Первое поисковое направление является отрицанием градиента эффективности. В последующих итерациях поисковое направление вычисляется из нового градиента и предыдущего поискового направления согласно формуле
dX = -gX + dX_old*Z;
где gX
градиент. Параметр Z
может быть вычислен несколькими различными способами. Изменение Пауэлла-Биля метода сопряженных градиентов отличают две функции. Во-первых, алгоритм использует тест, чтобы определить, когда сбросить поисковое направление к отрицанию градиента. Во-вторых, поисковое направление вычисляется из отрицательного градиента, предыдущего поискового направления и последнего поискового направления перед предыдущим сбросом. Смотрите Пауэлла, Математическое программирование, Издание 12, 1977, стр 241 - 254, для более детального обсуждения алгоритма.
Обучение останавливается, когда любое из этих условий происходит:
Максимальное количество epochs
(повторения) достигнуты.
Максимальная сумма time
превышен.
Эффективность минимизирована к goal
.
Градиент эффективности падает ниже min_grad
.
Эффективность валидации увеличила больше, чем max_fail
времена с прошлого раза это уменьшилось (при использовании валидации).
Пауэлл, M.J.D., “Процедуры перезапуска для метода сопряженных градиентов”, Математическое программирование, Издание 12, 1977, стр 241–254
trainbfg
| traincgf
| traincgp
| traingda
| traingdm
| traingdx
| trainlm
| trainoss
| trainscg