network

Создайте пользовательскую мелкую нейронную сеть

Синтаксис

net = network
net = network(numInputs,numLayers,biasConnect,inputConnect,layerConnect,outputConnect)

Получить справку

Введите help network/network.

Совет

Чтобы изучить, как создать нейронную сеть для глубокого обучения, смотрите, Задают Слои Сверточной нейронной сети.

Описание

network создает новые пользовательские сети. Это используется, чтобы создать сети, которые затем настраиваются функциями, такими как feedforwardnet и narxnet.

net = network без аргументов возвращает новую нейронную сеть без входных параметров, слоев или выходных параметров.

net = network(numInputs,numLayers,biasConnect,inputConnect,layerConnect,outputConnect) берет эти дополнительные аргументы (показанный со значениями по умолчанию):

numInputs

Количество входных параметров, 0

numLayers

Количество слоев, 0

biasConnect

numLayers- 1 булев вектор, нули

inputConnect

numLayers- numInputs Булева матрица, нули

layerConnect

numLayers- numLayers Булева матрица, нули

outputConnect

1 numLayers Булев вектор, нули

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

net

Новая сеть с данными значениями свойств

Свойства

Свойства архитектуры

net.numInputs

0 или положительное целое число

Количество входных параметров.

net.numLayers

0 или положительное целое число

Количество слоев.

net.biasConnect

numLayer- 1 булев вектор

Если net.biasConnect(i) 1, затем слой i имеет смещение и net.biases{i} структура, описывающая то смещение.

net.inputConnect

numLayer- numInputs Булев вектор

Если net.inputConnect(i,j) 1, затем слой i имеет вес, прибывающий из входа j, и net.inputWeights{i,j} структура, описывающая тот вес.

net.layerConnect

numLayer- numLayers Булев вектор

Если net.layerConnect(i,j) 1, затем слой i имеет вес, прибывающий из слоя j, и net.layerWeights{i,j} структура, описывающая тот вес.

net.outputConnect

1 numLayers Булев вектор

Если net.outputConnect(i) 1, затем сеть имеет выход от слоя i, и net.outputs{i} структура, описывающая тот выход.

net.numOutputs

0 или положительное целое число (только для чтения)

Количество сетевых выходных параметров согласно net.outputConnect.

net.numInputDelays

0 или положительное целое число (только для чтения)

Максимальная входная задержка согласно всему net.inputWeights{i,j}.delays.

net.numLayerDelays

0 или положительное число (только для чтения)

Максимальная задержка слоя согласно всему net.layerWeights{i,j}.delays.

Свойства подструктуры объекта

net.inputs

numInputs- 1 массив ячеек

net.inputs{i} вход i определения структуры.

net.layers

numLayers- 1 массив ячеек

net.layers{i} слой i определения структуры.

net.biases

numLayers- 1 массив ячеек

Если net.biasConnect(i) 1, затем net.biases{i} структура, задающая смещение для слоя i.

net.inputWeights

numLayers- numInputs cellArray

Если net.inputConnect(i,j) 1, затем net.inputWeights{i,j} структура, задающая вес к слою i от входа j.

net.layerWeights

numLayers- numLayers cellArray

Если net.layerConnect(i,j) 1, затем net.layerWeights{i,j} структура, задающая вес к слою i от слоя j.

net.outputs

1 numLayers cellArray

Если net.outputConnect(i) 1, затем net.outputs{i} структура, задающая сетевой выход от слоя i.

Функциональные свойства

net.adaptFcn

Имя сетевой функции адаптации или ''

net.initFcn

Имя сетевой функции инициализации или ''

net.performFcn

Имя функции производительности сети или ''

net.trainFcn

Имя сетевой учебной функции или ''

Свойства параметра

net.adaptParam

Сетевые параметры адаптации

net.initParam

Сетевые параметры инициализации

net.performParam

Параметры производительности сети

net.trainParam

Сетевые параметры обучения

Вес и свойства значения смещения

net.IW

numLayers- numInputs массив ячеек входных значений веса

net.LW

numLayers- numLayers массив ячеек значений веса слоя

net.b

numLayers- 1 массив ячеек значений смещения

Другие свойства

net.userdata

Структура можно использовать, чтобы сохранить полезные значения

Примеры

Создайте сеть с одним входом и двумя слоями

В этом примере показано, как создать сеть без любых входных параметров и слоев, и затем определить ее номера входных параметров и слоев к 1 и 2 соответственно.

net = network
net.numInputs = 1
net.numLayers = 2

В качестве альтернативы можно создать ту же сеть с одной строкой кода.

net = network(1,2)

Создайте сеть прямого распространения и просмотрите свойства

В этом примере показано, как создать с одним входом, 2D слой, сеть прямого распространения. Только первый слой имеет смещение. Входной вес соединяется со слоем 1 от входа 1. Вес слоя соединяется со слоем 2 от слоя 1. Слой 2 является сетевым выходом и имеет цель.

net = network(1,2,[1;0],[1; 0],[0 0; 1 0],[0 1])

Можно просмотреть сетевые подобъекты со следующим кодом.

net.inputs{1}
net.layers{1}, net.layers{2}
net.biases{1}
net.inputWeights{1,1}, net.layerWeights{2,1}
net.outputs{2}

Можно изменить свойства любого из сетевых подобъектов. Этот код изменяет передаточные функции обоих слоев:

net.layers{1}.transferFcn = 'tansig';
net.layers{2}.transferFcn = 'logsig';

Можно просмотреть веса для связи от первого входа до первого слоя можно следующим образом. Веса для связи от входа до слоя хранятся в net.IW. Если значения еще не установлены, они заканчиваются, пусто.

net.IW{1,1}

Можно просмотреть веса для связи от первого слоя до второго слоя можно следующим образом. Веса для связи от слоя до слоя хранятся в net.LW. Снова, если значения еще не установлены, результат пуст.

net.LW{2,1}

Можно просмотреть значения смещения для первого слоя можно следующим образом.

net.b{1}

Чтобы изменить число элементов во входе 1 - 2, установите область значений каждого элемента:

net.inputs{1}.range = [0 1; -1 1];

Чтобы симулировать сеть для двухэлементного входного вектора, код может выглядеть так:

p = [0.5; -0.1];
y = sim(net,p)
Представлено до R2006a