MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем
 

Математика\Neural Network Toolbox Перейти на страницу содержания раздела

Список функций Neural NetworkToolbox: Функции тренировки

  В оглавление \ К следующему разделу \ К предыдущему разделу

TRAINS
Метод последовательных приращений

Синтаксис:

[net,tr,Ac,El] = trains(net,Pd,Tl,Ai,Q,TS,VV,TV)
info = trains(code)

Описание:

TRAINS не вызывается непосредственно. Для вызова функции необходимо вызвать TRAIN для сети, при определении которой свойство NET.trainFcn установлено как 'trains' или вызвать ADAPT для сети, при определении которой свойство NET.adaptFcn установлено как ‘trains’.

TRAINS тренирует сеть с помощью правила обучения весов и смещений, основанного на методе последовательных приращений.

TRAINS(NET,Pd,Tl,Ai,Q,TS,VV,TV),

Входные параметры:

  • NET – нейронная сеть;
  • Pd - векторы входных задержек;
  • Tl - векторы эталонов слоя;
  • Ai - начальные условия входных задержек;
  • Q - размер пакета;
  • TS - временные шаги;
  • VV - игнорируется;
  • TV - игнорируется;

Выходные параметры:

  • NET – тренированная сеть;
  • TR - запись, включающая параметры тренировки;
  • TR.epoch – количество эпох тренировки;
  • TR.perf – характеристика тренировки;
  • Ac - суммарные выходы слоя;
  • El - ошибки слоя.

Если NET.adaptFcn – TRAINS, то адаптация реализуется в соответствии с параметром адаптации, равным по умолчанию:

  • net.adaptParam.passes – (1) – Количество проходов.

Если NET.trainFcn – TRAINS, то по умолчанию используется аналогичный параметр:

  • net.trainParam.passes – (1) – Количество проходов.

Размерности переменных:

  • Pd - NoxNixTS массив ячеек, каждый элемент которого P{i,j,ts} - матрица ZijxQ,
  • Tl - NlxTS массив ячеек, каждый элемент которого P{i,ts} - матрица VixQ или [],
  • Ai - NlxLD массив ячеек, каждый элемент которого Ai{i,k} - матрица SixQ,
  • Ac - Nlx(LD+TS) массив ячеек, каждый элемент которого Ac{i,k} матрица SixQ,
  • El - NlxTS массив ячеек, каждый элемент которого El{i,k} матрица SixQ или [],

где

  • Ni = net.numInputs
  • Nl = net.numLayers
  • LD = net.numLayerDelays
  • Ri = net.inputs{i}.size
  • Si = net.layers{i}.size
  • Vi = net.targets{i}.size
  • Zij = Ri * length(net.inputWeights{i,j}.delays)

TRAINS не использует контрольных и тестовых векторов, поэтому параметры VV и ТV игнорируются.

TRAINS(CODE) возвращает полезную информацию для каждой из строк CODE:

  • 'pnames' - Имена параметров тренировки;
  • 'pdefaults' – Параметры тренировки по умолчанию.

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

Стандартную сеть, которая использует TRAINS можно создать с помощью функций NEWP или NEWLIN.

Для того, чтобы создать пользовательскую сеть, которую необходимо тренировать с помощью TRAINS, нужно:

1) Установить NET.trainFcn как 'trains'. Тем самым значения NET.trainParam будут значениями по умолчанию для функции TRAINS.

2) Задать обучающие функции NET.inputWeights{i,j}.learnFcn.

3) Задать обучающие функции NET.layerWeights{i,j}.learnFcn.

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

Для того, чтобы обучить сеть, нужно:

1) Установить необходимые значения параметров обучения весов и смещений.

2) Вызвать функцию ADAPT.

Алгоритм.

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

  В оглавление \ К следующему разделу \ К предыдущему разделу

 

Поиск по сайту:

Система Orphus

Яндекс.Метрика