Main Content

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

patternnet

Générer un réseau de reconnaissance de formes

Description

exemple

net = patternnet(hiddenSizes,trainFcn,performFcn) renvoie un réseau de neurones pour la reconnaissance de formes avec une taille de couche cachée de hiddenSizes, une fonction d’apprentissage spécifiée par trainFcn et une fonction de performance spécifiée par performFcn.

Les réseaux de reconnaissance de formes sont des réseaux feedforward qui peuvent être entraînés pour classer des entrées selon des classes cibles. Les données cibles des réseaux de reconnaissance de formes doivent se composer de vecteurs dont toutes les valeurs sont nulles, à l’exception d’un 1 dans l’élément i, où i est la classe à représenter.

Exemples

réduire tout

Cet exemple indique comment concevoir un réseau de reconnaissance de formes pour classer des iris.

Chargez les données d’apprentissage.

[x,t] = iris_dataset;

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

net = patternnet(10);

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

net = train(net,x,t);

{"String":"Figure Neural Network Training (05-Nov-2022 10:01:10) 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,t,y)
perf = 0.0302
classes = vec2ind(y);

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

Fonction de performance. La valeur par défaut est 'crossentropy'.

Cet argument définit la fonction utilisée pour mesurer la performance du réseau. La fonction de performance permet de calculer la performance du réseau pendant l’apprentissage.

Pour une liste de ce type de fonction, saisissez help nnperformancedans la fenêtre de commande MATLAB.

Arguments de sortie

réduire tout

Réseau de neurones pour la reconnaissance de formes, renvoyé comme un objet network.

Historique des versions

Introduit dans R2010b