La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.
network
Créer un réseau de neurones peu profond personnalisé
Syntaxe
net = network
net = network(numInputs,numLayers,biasConnect,inputConnect,layerConnect,outputConnect)
Pour obtenir de l’aide
Saisissez help network/network
.
Conseil
Pour découvrir comment créer un réseau de Deep Learning, veuillez consulter Specify Layers of Convolutional Neural Network.
Description
network
crée de nouveaux réseaux personnalisés. Il permet de créer des réseaux qui sont ensuite personnalisés par des fonctions comme feedforwardnet
et narxnet
.
net = network
sans argument renvoie un nouveau réseau de neurones sans entrée, ni couche ni sortie.
net = network(numInputs,numLayers,biasConnect,inputConnect,layerConnect,outputConnect)
prend ces arguments optionnels (indiqués avec leurs valeurs par défaut) :
numInputs | Nombre d’entrées, 0 |
numLayers | Nombre de couches, 0 |
biasConnect | Vecteur booléen |
inputConnect | Matrice booléenne |
layerConnect | Matrice booléenne |
outputConnect | Vecteur booléen 1 x |
et renvoie
net | Nouveau réseau avec les valeurs de propriétés données |
Propriétés
Propriétés d'architecture
net.numInputs | 0 ou un entier positif | Nombre d’entrées. |
net.numLayers | 0 ou un entier positif | Nombre de couches. |
net.biasConnect | Vecteur booléen | Si |
net.inputConnect | Vecteur booléen | Si |
net.layerConnect | Vecteur booléen | Si |
net.outputConnect | Vecteur booléen 1 x | Si |
net.numOutputs | 0 ou un entier positif (lecture seule) | Nombre de sorties du réseau selon |
net.numInputDelays | 0 ou un entier positif (lecture seule) | Retard d’entrée maximal selon tous les |
net.numLayerDelays | 0 ou un nombre positif (lecture seule) | Retard de couche maximal selon tous les |
Propriétés de structure de sous-objet
net.inputs | Cell array |
|
net.layers | Cell array |
|
net.biases | Cell array | Si |
net.inputWeights | Cell array | Si |
net.layerWeights | Cell array | Si |
net.outputs | Cell array 1 x | Si |
Propriétés des fonctions
net.adaptFcn | Nom d’une fonction d’adaptation d’un réseau ou |
net.initFcn | Nom d’une fonction d’initialisation d’un réseau ou |
net.performFcn | Nom d’une fonction de performance d’un réseau ou |
net.trainFcn | Nom d’une fonction d’apprentissage d’un réseau ou |
Propriétés des paramètres
net.adaptParam | Paramètres d’adaptation d’un réseau |
net.initParam | Paramètres d’initialisation d’un réseau |
net.performParam | Paramètres de performance d’un réseau |
net.trainParam | Paramètres d’apprentissage d’un réseau |
Propriétés des valeurs de poids et de biais
net.IW | Cell array |
net.LW | Cell array |
net.b | Cell array |
Autres propriétés
net.userdata | Structure que vous pouvez utiliser pour stocker des valeurs utiles |
Exemples
Créer un réseau avec une entrée et deux couches
Cet exemple montre comment créer un réseau sans entrée ni couche, puis comment définir son nombre d’entrées et de couches respectivement à 1 et 2.
net = network net.numInputs = 1 net.numLayers = 2
Vous pouvez également créer le même réseau avec une ligne de code.
net = network(1,2)
Créer un réseau feedforward et afficher les propriétés
Cet exemple montre comment créer un réseau feedforward à une entrée et deux couches. Seule la première couche a un biais. Un poids d’entrée connecte la couche 1 et l’entrée 1. Un poids de couche connecte la couche 2 et la couche 1. La couche 2 est une sortie du réseau et a une cible.
net = network(1,2,[1;0],[1; 0],[0 0; 1 0],[0 1])
Vous pouvez afficher les sous-objets du réseau avec le code suivant.
net.inputs{1} net.layers{1}, net.layers{2} net.biases{1} net.inputWeights{1,1}, net.layerWeights{2,1} net.outputs{2}
Vous pouvez modifier les propriétés de n’importe lequel des sous-objets du réseau. Ce code change les fonctions de transfert des deux couches :
net.layers{1}.transferFcn = 'tansig'; net.layers{2}.transferFcn = 'logsig';
Vous pouvez afficher les poids pour la connexion entre la première entrée et la première couche comme suit. Les poids pour une connexion entre une entrée et une couche sont stockés dans net.IW
. Si les valeurs ne sont pas encore définies, ce résultat est vide.
net.IW{1,1}
Vous pouvez afficher les poids pour la connexion entre la première couche et la deuxième couche comme suit. Les poids pour une connexion d'une couche à une autre sont stockés dans net.LW
. De nouveau, si les valeurs ne sont pas encore définies, ce résultat est vide.
net.LW{2,1}
Vous pouvez afficher les valeurs de biais pour la première couche comme suit.
net.b{1}
Pour changer le nombre d’éléments en entrée de 1 à 2, définissez la plage de chaque élément :
net.inputs{1}.range = [0 1; -1 1];
Pour simuler le réseau pour un vecteur en entrée à deux éléments, le code ressemblera à ceci :
p = [0.5; -0.1]; y = sim(net,p)
Historique des versions
Introduit avant R2006a