Main Content

network

Crear una red neuronal superficial personalizada

Sintaxis

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

Para obtener ayuda

Escriba help network/network.

Sugerencia

Para aprender a crear una red de deep learning, consulte dlnetwork.

Descripción

network crea nuevas redes personalizadas. Se usa para crear redes que, después, serán personalizadas por funciones como feedforwardnet y narxnet.

net = network sin argumentos devuelve una red neuronal sin entradas, capas ni salidas.

net = network(numInputs,numLayers,biasConnect,inputConnect,layerConnect,outputConnect) toma estos argumentos opcionales (mostrados con valores predeterminados):

numInputs

Número de entradas, 0

numLayers

Número de capas, 0

biasConnect

Vector booleano de numLayers por 1, ceros

inputConnect

Matriz booleana de numLayers por numInputs, ceros

layerConnect

Matriz booleana de numLayers por numLayers, ceros

outputConnect

Vector booleano de 1 por numLayers, ceros

y devuelve

net

Nueva red con los valores de propiedad dados

Propiedades

Propiedades de arquitectura

net.numInputs

0 o un entero positivo

Número de entradas.

net.numLayers

0 o un entero positivo

Número de capas.

net.biasConnect

Vector booleano de numLayer por 1

Si net.biasConnect(i) es 1, la capa i tiene un sesgo, y net.biases{i} es una estructura que describe ese sesgo.

net.inputConnect

Vector booleano de numLayer por numInputs

Si net.inputConnect(i,j) es 1, la capa i tiene un peso proveniente de la entrada j, y net.inputWeights{i,j} es una estructura que define ese peso.

net.layerConnect

Vector booleano de numLayer por numLayers

Si net.layerConnect(i,j) es 1, la capa i tiene un peso proveniente de la capa j, y net.layerWeights{i,j} es una estructura que define ese peso.

net.outputConnect

Vector booleano de 1 por numLayers

Si net.outputConnect(i) es 1, la red tiene una salida derivada de la capa i, y net.outputs{i} es una estructura que describe esa salida.

net.numOutputs

0 o un entero positivo (solo lectura)

Número de salidas de red de acuerdo con net.outputConnect.

net.numInputDelays

0 o un entero positivo (solo lectura)

Retraso máximo de la entrada de acuerdo con todos los net.inputWeights{i,j}.delays.

net.numLayerDelays

0 o un número positivo (solo lectura)

Retraso máximo de la capa de acuerdo con todos los net.layerWeights{i,j}.delays.

Propiedades de estructura de subobjetos

net.inputs

Arreglo de celdas de numInputs por 1

net.inputs{i} es una estructura que define la entrada i.

net.layers

Arreglo de celdas de numLayers por 1

net.layers{i} es una estructura que define la capa i.

net.biases

Arreglo de celdas de numLayers por 1

Si net.biasConnect(i) es 1, net.biases{i} es una estructura que define el sesgo de la capa i.

net.inputWeights

Arreglo de celdas de numLayers por numInputs

Si net.inputConnect(i,j) es 1, net.inputWeights{i,j} es una estructura que define el peso a la capa i de la entrada j.

net.layerWeights

Arreglo de celdas de numLayers por numLayers

Si net.layerConnect(i,j) es 1, net.layerWeights{i,j} es una estructura que define el peso a la capa i de la capa j.

net.outputs

Arreglo de celdas de 1 por numLayers

Si net.outputConnect(i) es 1, net.outputs{i} es una estructura que define la salida de la red de la capa i.

Propiedades de función

net.adaptFcn

Nombre de una función de adaptación de la red o ''

net.initFcn

Nombre de una función de inicialización de la red o ''

net.performFcn

Nombre de una función de rendimiento de la red o ''

net.trainFcn

Nombre de una función de entrenamiento de la red o ''

Propiedades de parámetros

net.adaptParam

Parámetros de adaptación de red

net.initParam

Parámetros de inicialización de red

net.performParam

Parámetros de rendimiento de red

net.trainParam

Parámetro de entrenamiento de red

Propiedades de los valores de pesos y sesgos

net.IW

Arreglo de celdas de valores de pesos de entrada de numLayers por numInputs

net.LW

Arreglo de celdas de pesos de capa de numLayers por numLayers

net.b

Arreglo de celdas de valores de sesgo de numLayers por 1

Otras propiedades

net.userdata

Estructura que puede usar para almacenar valores útiles

Ejemplos

Crear una red con una entrada y dos capas

Este ejemplo muestra cómo crear una red sin entradas ni capas y cómo establecer sus números de entradas y capas en 1 y 2, respectivamente.

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

También puede crear la misma red con una línea de código.

net = network(1,2)

Crear redes prealimentadas y ver propiedades

Este ejemplo muestra cómo crear una red prealimentada de dos capas y una entrada. Solo la primera capa tiene un sesgo. Un peso de entrada se conecta a la capa 1 desde la entrada 1. Un peso de capa se conecta a la capa 2 desde la capa 1. La capa 2 es una salida de red y tiene un objetivo.

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

Puede ver los subobjetos de la red con el siguiente código.

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

Puede modificar las propiedades de cualquiera de los subobjetos de la red. Este código cambia las funciones de transferencia de ambas capas:

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

Puede ver los pesos de la conexión desde la primera entrada a la primera capa de la siguiente manera. Los pesos de una conexión desde una entrada a una capa se almacenan en net.IW. Si no se han establecido los valores todavía, los resultados estarán vacíos.

net.IW{1,1}

Puede ver los pesos de la conexión desde la primera capa a la segunda capa de la siguiente manera. Los pesos de una conexión desde una capa a una capa se almacenan en net.LW. De nuevo, si no se han establecido los valores todavía, los resultados estarán vacíos.

net.LW{2,1}

Puede ver los valores de sesgo de la primera capa de la siguiente manera.

net.b{1}

Para cambiar el número de elementos de la entrada 1 a 2, establezca el intervalo de cada elemento:

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

Tras entrenar la red, puede utilizar sim para simular la red. Por ejemplo, simule la red para un vector de entrada de dos elementos.

p = [0.5; -0.1];
y = sim(net,p)

Historial de versiones

Introducido antes de R2006a