learnis

Функция изучения веса возрастной стадии

Синтаксис

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

Описание

learnis функция изучения веса возрастной стадии.

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

W

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

P

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

Z

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

N

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

A

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

T

S- Q целевые векторы слоя

E

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

gW

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

gA

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

D

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

LP

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

LS

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

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

dW

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

LS

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

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

LP.lr - 0.01

Скорость обучения

info = learnis('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;

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

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

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

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

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

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

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

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

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

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

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

Алгоритмы

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

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

Ссылки

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

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

| | |

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