learnk

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

Синтаксис

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

Описание

learnk функция изучения веса Kohonen.

[dW,LS] = learnk(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

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

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

LP.lr - 0.01

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

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

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

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

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

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

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

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

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

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

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

  1. Установите net.trainParam (или net.adaptParam) свойства, как желаемый.

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

Алгоритмы

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

dw = lr*(p'-w), если a ~= 0; = 0, в противном случае

Ссылки

Kohonen, T., самоорганизующийся и Ассокиэтив-Мемори, Нью-Йорк, Springer-Verlag, 1984

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

| | |

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