learnos

Функция изучения веса Outstar

Синтаксис

[dW,LS] = learnos(W,P,Z,N,A,T,E,gW,gA,D,LP,LS)
info = learnos('code')

Описание

learnos является outstar функцией изучения веса.

[dW,LS] = learnos(W,P,Z,N,A,T,E,gW,gA,D,LP,LS) берет несколько входных параметров,

W

S- матрица (или S-by-1 смещают вектор),

P

R-by-Q входные векторы (или ones(1,Q))

Z

S-by-Q взвешенные входные векторы

N

S-by-Q сетевые входные векторы

A

S-by-Q выходные векторы

T

S-by-Q слой предназначается для векторов

E

S-by-Q вектора ошибок слоя

gW

S- градиент относительно производительности

gA

S-by-Q выходной градиент относительно производительности

D

S-by-S расстояния нейрона

LP

Изучая параметры, ни один, LP = []

LS

При изучении состояния, первоначально должен быть = []

и возвращается

dW

S- (или смещение) изменяют матрицу

LS

Новое состояние изучения

Изучение происходит согласно изучению learnos параметра, показанного здесь с его значением по умолчанию.

LP.lr - 0.01

Темп обучения

info = learnos('code') возвращает полезную информацию для каждого вектора символов code:

'pnames'

Имена изучения параметров

'pdefaults'

Параметры изучения значения по умолчанию

'needg'

Возвращается 1, если эта функция использует gW или gA

Примеры

Здесь вы задаете случайный вход P, вывод A и матрицу веса W для слоя с двухэлементным входом и тремя нейронами. Также задайте темп обучения LR.

p = rand(2,1);
a = rand(3,1);
w = rand(3,2);
lp.lr = 0.5;

Поскольку learnos только нужны эти значения, чтобы вычислить изменение веса (см. “Алгоритм” ниже), используйте их, чтобы сделать так.

dW = learnos(w,p,[],[],a,[],[],[],[],[],lp,[])

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

Подготовить веса и смещение слоя i пользовательской сети, чтобы учиться с learnos,

  1. Установите net.trainFcn на 'trainr'. (net.trainParam автоматически становится параметрами trainr по умолчанию.)

  2. Установите net.adaptFcn на 'trains'. (net.adaptParam автоматически становится параметрами trains по умолчанию.)

  3. Установите каждый net.inputWeights{i,j}.learnFcn на 'learnos'.

  4. Установите каждый net.layerWeights{i,j}.learnFcn на 'learnos'. (Каждый вес, изучающий свойство параметра, автоматически установлен в параметры learnos по умолчанию.)

Обучать сеть (или позволять ему адаптироваться),

  1. Установите net.trainParam (или net.adaptParam) свойства к требуемым значениям.

  2. Вызовите train (adapt).

Алгоритмы

learnos вычисляет изменение веса dW для данного нейрона от входа P нейрона, вывода A и темпа обучения LR согласно outstar изучение правила:

dw = lr*(a-w)*p'

Ссылки

Grossberg, S., исследования Мышления и мозга, Drodrecht, Голландия, нажатия Reidel, 1982

Смотрите также

| | |

Представлено до R2006a