Main Content

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

fitnet

Réseau de neurones pour l'ajustement de fonction

Description

exemple

net = fitnet(hiddenSizes) renvoie un réseau de neurones pour l'ajustement de fonction avec une taille de couche cachée de hiddenSizes.

exemple

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

Exemples

réduire tout

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 de neurones d'ajustement de fonction avec une couche cachée de taille 10.

net = fitnet(10);

Affichez le réseau.

view(net)

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

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

net = train(net,x,t);

Affichez le réseau entraîné.

view(net)

Vous pouvez voir que les tailles de l’entrée et de la sortie sont égales à 1.

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

L’algorithme d’apprentissage par défaut pour un réseau d'ajustement de fonction est Levenberg-Marquardt ('trainlm'). Utilisez l’algorithme d’apprentissage de régularisation bayésienne et comparez les résultats de performance.

net = fitnet(10,'trainbr');
net = train(net,x,t);

y = net(x);
perf = perform(net,y,t)
perf = 3.3416e-10

L’algorithme d’apprentissage de régularisation bayésienne améliore les performances du réseau en ce qui concerne l’estimation des valeurs cibles.

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 d'ajustement de fonction, renvoyé comme un objet network.

Conseils

  • L'ajustement de fonction est le processus d’apprentissage d’un réseau de neurones sur un jeu d’entrées pour produire un jeu de sorties cibles correspondant. Après avoir construit le réseau avec les couches cachées souhaitées et l’algorithme d’apprentissage, vous devez l’entraîner avec un jeu de données d’apprentissage. Une fois que le réseau de neurones est adapté aux données, il forme une généralisation de la relation entrée-sortie. Vous pouvez ensuite utiliser le réseau entraîné pour générer des sorties pour des entrées sur lesquelles il n’a pas été entraîné.

Historique des versions

Introduit dans R2010b