Main Content

La traduction de cette page n'est pas à jour. Cliquez ici pour voir la dernière version en anglais.

feedforwardnet

Générer un réseau de neurones feedforward

Description

exemple

net = feedforwardnet(hiddenSizes,trainFcn) renvoie un réseau de neurones feedforward avec une taille de couche cachée de hiddenSizes et une fonction d’apprentissage, spécifiée par trainFcn.

Les réseaux feedforward se composent d’une série de couches. La première couche a une connexion avec l’entrée du réseau. Chaque couche suivante a une connexion avec la couche précédente. La couche finale produit la sortie du réseau.

Vous pouvez utiliser des réseaux feedforward pour tout type de mapping d’entrée-sortie. Un réseau feedforward avec une couche cachée et suffisamment de neurones dans les couches cachées peut s’adapter à n’importe quel problème de mapping d’entrée-sortie.

Des versions spécialisées du réseau feedforward incluent des réseaux pour l'ajustement et la reconnaissance de formes. Pour plus d’informations, veuillez consulter les fonctions fitnet et patternnet.

Le réseau forward en cascade est une variante du réseau feedforward qui a des connexions supplémentaires entre l’entrée et chaque couche, et entre chaque couche et toutes les couches suivantes. Pour plus d’informations sur les réseaux forward en cascade, veuillez consulter cascadeforwardnet.

Exemples

réduire tout

Cet exemple montre comment utiliser un réseau de neurones feedforward pour résoudre un problème simple.

Chargez les données d’apprentissage.

[x,t] = simplefit_dataset;

La matrice x de 1 x 94 contient les valeurs en entrée et la matrice t de 1 x 94 contient les valeurs cibles associées en sortie.

Construisez un réseau feedforward avec une couche cachée de taille 10.

net = feedforwardnet(10);

Entraînez le réseau net avec les données d’apprentissage.

net = train(net,x,t);

{"String":"Figure Neural Network Training (05-Nov-2022 10:04:47) contains an object of type uigridlayout.","Tex":[],"LaTex":[]}

Affichez le réseau entraîné.

view(net)

Estimez les cibles avec le réseau entraîné.

y = net(x);

Évaluez les performances du réseau entraîné. La fonction de performance par défaut est l’erreur quadratique moyenne.

perf = perform(net,y,t)
perf = 1.4639e-04

Arguments d'entrée

réduire tout

La taille des couches cachées dans le réseau est spécifiée comme un vecteur ligne. La longueur du vecteur détermine le nombre de couches cachées dans le réseau.

Exemple : Par exemple, vous pouvez spécifier un réseau avec 3 couches cachées, où la taille de la première couche est 10, celle de la deuxième est 8 et celle de la troisième est 5, comme suit : [10,8,5]

La taille de l’entrée et la taille de la sortie sont définies à zéro. Le software ajuste ces tailles pendant l’apprentissage selon les données d’apprentissage.

Types de données : single | double

Nom de la fonction d’apprentissage, spécifié comme l’un des éléments suivants.

Fonction d’apprentissageAlgorithme
'trainlm'

Levenberg-Marquardt

'trainbr'

Régularisation bayésienne

'trainbfg'

BFGS quasi-Newton

'trainrp'

Rétropropagation résiliente

'trainscg'

Gradient conjugué à l’échelle

'traincgb'

Gradient conjugué avec redémarrages Powell-Beale

'traincgf'

Gradient conjugué Fletcher-Powell

'traincgp'

Gradient conjugué Polak-Ribière

'trainoss'

Sécante en une seule étape

'traingdx'

Descente de gradient avec taux d’apprentissage variable

'traingdm'

Descente de gradient avec momentum

'traingd'

Descente de gradient

Exemple : Par exemple, vous pouvez spécifier l’algorithme de descente de gradient avec taux d’apprentissage variable en tant qu'algorithme d’apprentissage comme suit : 'traingdx'

Pour plus d’informations sur les fonctions d’apprentissage, veuillez consulter Train and Apply Multilayer Shallow Neural Networks et Choose a Multilayer Neural Network Training Function.

Types de données : char

Arguments de sortie

réduire tout

Réseau de neurones feedforward renvoyé comme un objet network.

Historique des versions

Introduit dans R2010b