exponenta event banner

linearlayer

Линейный слой

Синтаксис

linearlayer(inputDelays,widrowHoffLR)

Описание

Линейные слои представляют собой одиночные слои линейных нейронов. Они могут быть статическими, с задержками ввода 0 или динамическими, с задержками ввода больше 0. Они могут быть обучены простым проблемам линейных временных рядов, но часто используются адаптивно для продолжения обучения во время развертывания, чтобы они могли адаптироваться к изменениям во взаимосвязи между входами и выходами во время использования.

Если сеть необходима для решения нелинейных отношений временных рядов, то лучше сети, чтобы попытаться включить timedelaynet, narxnet, и narnet.

linearlayer(inputDelays,widrowHoffLR) принимает эти аргументы,

inputDelays

Вектор строки с увеличением 0 или положительными задержками (по умолчанию = 0)

widrowHoffLR

Скорость обучения Widrow-Hoff (по умолчанию = 0,01)

и возвращает линейный слой.

Если уровень обучения слишком мал, обучение будет происходить очень медленно. Однако большая опасность заключается в том, что он может быть слишком большим, и обучение станет нестабильным, что приведет к большим изменениям весовых векторов и увеличению ошибок вместо уменьшения. Если доступен набор данных, который характеризует взаимосвязь, которую должен изучать уровень, максимальная стабильная скорость обучения может быть вычислена с помощью maxlinlr.

Примеры

Создание и подготовка линейного слоя

Здесь линейный слой обучается простой проблеме временных рядов.

x = {0 -1 1 1 0 -1 1 0 0 1};
t = {0 -1 0 2 1 -1 0 1 0 1};
net = linearlayer(1:2,0.01);
[Xs,Xi,Ai,Ts] = preparets(net,x,t);
net = train(net,Xs,Ts,Xi,Ai);
view(net)
Y = net(Xs,Xi);
perf = perform(net,Ts,Y)
perf =

    0.2396

Представлен в R2010b