• Aucun résultat trouvé

Fiche 09bis : R´eseau de neurones

N/A
N/A
Protected

Academic year: 2022

Partager "Fiche 09bis : R´eseau de neurones"

Copied!
2
0
0

Texte intégral

(1)

Fiche 09bis : R´eseau de neurones

Master 1 I2L 2014 / 2015

Le but de ce TP est de r´ealiser et d’analyser un r´eseau de neurones.

1 Le r´ eseau

Le but set de r´ealiser un r´eseau de neurone de type perceptron multi-couche avec une seule couche cach´ee et totalement connect´e selon le sch´ema suivant :

Questions :

2.a) D´efinir une classeNeuralNetworkqui repr´esente un r´eseau d´ecrit ci-dessus. Les neurones ont une fonction d’activation sigmo¨ıde. Les poids et seuils des neurones peuvent ˆetre initialis´e al´eatoirement.

Le nombre de neurones dans les diff´erentes couches doivent ˆetre des param`etres du constructeur.

2.b) D´efinir une m´ethodepredict qui calcule le vecteur de sortie du r´eseau de neurone `a partir une liste d’entr´eesX.

2.c) D´efinir une fonction meanSquareError qui calcule la moyenne des carr´e des distance entre les vecteurs de sortie du r´eseau de neurone et les vecteurs attendus sur un jeu de donn´ees de type data frame.

2.d) D´efinir une fonction errorRate qui calcule le taux d’erreur d’un r´eseau de neurones sur un jeu de donn´ees de type data frame.

2 Apprentissage

Il s’agit de d´efinir l’algorithme d’apprentissage par r´etro-propagation de l’erreur.

Questions :

3.a) D´efinir une classe BackPropagation compos´ee des m´ethodes init et train. La m´ethode init initialise un r´eseau de neurone en fixant les seuils et les diff´erents poids al´eatoirement entre 0 et 1. La m´ethodetrainentraine un neurone artificiel sur un jeu de donn´ee de type data frame.

3.b) Tester votre m´ethode sur les jeux de donn´ees ex1.csv,data-lin.csvetdata-nonlin.csv.

1

(2)

3 Analyse

Le fichier digits.cvs contient un jeu de donn´ee de l’´ecriture manuelle des 10 chiffres (cf. http://

scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html#example-classification-plot-digits-classification-py).

Les chiffres sont ´ecrits sur des images de 64 pixels en niveaux de gris.

Questions :

4.a) Diviser le jeu de donn´ee en un ensemble d’apprentissage et un ensemble de test (70% / 30%).

4.b) Mesurer les performances de votre r´eseau de neurones sur les ensembles d’apprentissage et de test. Commenter vos r´esultats.

4.c) Comparer ces performances avec celle d’un neurone de type perceptron.

4.d) Quel est l’impact sur les performances d’apprentissage du nombre de neurones cach´es ?

4.d) Quel est l’impact sur les performances d’apprentissage du param`etre d´efinissant le taux d’ap- prentissage ?

2

Références

Documents relatifs

Remarque : `a chaque terminaison de processus, un signal Unix SIGCHLD est envoy´e au p`ere → S’il le capte, il peut lever le zombie avec waitpid (-1, NULL, WNOHANG);.. Mais que

fd descripteur ouvert en ´ecriture buf adresse base zone m´emoire count nombre d’octets ` a ´ecrire Renvoie -1 : erreur. > 0: nombre d’octets ´ecrits (6 count) 0 ssi count = 0

◮ Pour savoir si un descripteur est ´eligible, tester sa pr´esence dans la liste avec FD_ISSET. ◮ Si on boucle sur select, il faut chaque fois reconstruire

– protocole UDP pour SOCK_DGRAM – protocole TCP pour SOCK_STREAM Fermeture d’une socket : avec close.. Attachement ` a

Demande bloquante de connexion au serveur : connect Puis dialogue sur la socket avec le serveur : read et write.. Les primitives

On peut demander ` a bind un port libre par 0 : struct sockaddr_in adr;. adr.sin_port =

Principe : le client se connecte, envoie une requˆete ; le serveur envoie une r´eponse puis d´econnecte le client. 1.1 : possibilit´e de maintenir

int regexec (const regex_t *preg, const char *string, size_t nmatch, regmatch_t pmatch[], int eflags);. preg expression compil´ee par regcomp string chaˆıne `