Contenu principal

newrb

Design d’un réseau radial de base

Description

net = newrb(P,T,goal,spread,MN,DF) prend deux des arguments suivants :

  • P : matrice R x Q de Q vecteurs en entrée

  • T : matrice S x Q de Q vecteurs de classes cibles

  • goal : objectif en terme d'erreur quadratique moyenne

  • spread : étendue des fonctions de base radiales

  • MN : nombre maximal de neurones

  • DF : nombre de neurones à ajouter entre les affichages

Les réseaux radiaux de base peuvent être utilisés pour approximer des fonctions. newrb ajoute des neurones à la couche cachée d'un réseau radial de base jusqu'à ce qu'il atteigne l'erreur quadratique moyenne visée.

Plus la valeur spread est élevée, plus l'approximation de la fonction est lisse. Un spread trop important signifie qu'un grand nombre de neurones est nécessaire pour correspondre à une fonction à évolution rapide. Un spread trop faible signifie que de nombreux neurones sont nécessaires pour correspondre à une fonction lisse. Le réseau risque alors de ne pas bien se généraliser. Appelez newrb avec différentes valeurs de spread afin d‘identifier la valeur optimale pour un problème donné.

exemple

Exemples

réduire tout

Cet exemple indique comment concevoir un réseau radial de base.

Concevez un réseau radial de base avec les entrées P et les cibles T.

P = [1 2 3];
T = [2.0 4.1 5.9];
net = newrb(P,T);

Simulez le réseau pour une nouvelle entrée.

P = 1.5;
Y = sim(net,P)

Arguments d'entrée

réduire tout

Vecteurs d'entrées, définis par une matrice R x Q.

Vecteurs de classes cibles, définis par une matrice S x Q.

Objectif en terme d'erreur quadratique moyenne définie par un scalaire.

Etendue des fonctions de base radiales définies par un scalaire.

Nombre maximal de neurones défini par un scalaire.

Nombre de neurones à ajouter entre les affichages, défini par un scalaire.

Arguments de sortie

réduire tout

Nouveau réseau radial de base, renvoyé sous la forme d'un objet réseau.

Algorithmes

newrb crée un réseau à deux couches. La première couche a des neurones radbas et calcule ses entrées pondérées avec dist et son entrée nette avec netprod. La deuxième couche a des neurones purelin et calcule son entrée pondérée avec dotprod et ses entrées nettes avec netsum. Les deux couches ont des biais.

Au départ, la couche radbas n’a pas de neurones. Les étapes suivantes sont répétées jusqu'à ce que l'erreur quadratique moyenne du réseau soit inférieure à goal.

  1. Le réseau est simulé.

  2. Le vecteur d'entrée présentant l'erreur la plus importante est identifié.

  3. Un neurone radbas est ajouté avec des poids correspondant à ce vecteur.

  4. Les poids de la couche purelin sont redéfinis afin de minimiser l'erreur.

Historique des versions

Introduit avant R2006a

Voir aussi

| | |