• Aucun résultat trouvé

IFT 780 : Devoir 1 Travail par équipe de 2 ou de 3

N/A
N/A
Protected

Academic year: 2022

Partager "IFT 780 : Devoir 1 Travail par équipe de 2 ou de 3"

Copied!
1
0
0

Texte intégral

(1)

IFT 780 : Devoir 1

Travail par équipe de 2 ou de 3

Dans ce devoir, vous devez implanter des réseaux de neurones pleinement connectés. Vous travaillerez tout d’abord avec un réseau linéaire (sans couche cachée) puis un réseau à deux couches cachées.

Pour ce faire, vous devez vous créer un environnement virtuel python suivant les recommandations disponibles sur la page web du cours. Vous devez ensuite exécuter en ligne de commande les lignes suivantes :

$ cd datasets/

$ ./get_datasets.sh

afin de télécharger la base de données CIFAR10. Par la suite, les fichiers ipynb vous indiqueront les tâches à effectuer. Vous trouverez le code à rédiger dans les fichiers python (.py) aux endroits indiqués par des TODO. Vous trouverez également des questions à répondre dans certains fichiers ipynb. Les réponses aux questions doivent être dans les fichier ipynb et en format markdown (voir https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet pour plus de détails sur le standard markdown).

Les objectifs de ce devoir sont

1) Comprendre le fonctionnement d’un réseau de neurones simple (entraînement et prédiction) 2) Comprendre l’utilisation de données de validation pour ajuster des hyperparamètres.

3) Vectoriser du code afin de manipuler des « mini-batchs » de données sans boucle for.

4) Implanter un classificateur multi-classes de type SVM 5) Implanter un classificateur multi-classes utilisant un Softmax

6) Implanter un réseau de neurones multi-classes à N couches cachées À faire :

1. [3 points] Implanter et tester un classifier linéaire de type SVM avec la fonction de perte « Hinge Loss » (voir notebook tp1_hinge.ipynb)

2. [3 points] Implanter et tester un réseau logistique linéaire ayant un Softmax et une entropie croisée en sortie (voir notebook tp1_softmax.ipynb).

3. [0 points] Voyez comment créer un simple réseau de neurones multicouches, comment effectuer une propagation avant, une propagation arrière, effectuer une descente de gradient et l’utilisation d’une « cache ». Bien qu’aucun point n’est attribué à ce notebook, il est primordial d’en comprendre le contenu avant de vous attaquer au 4e notebook. (voir notebook tp1_simple_neural_net.ipynb).

4. [4 points] Le but de ce notebook est d’enchâsser dans des classes les différents éléments vus au point 3.

NOTE : le code de la propagation avant et de la rétropropagation de la couche dense et du calcul de la perte doit être vectorisé. Donc… attention aux boucles for! (voir notebook tp1_neural_net.ipynb).

Références

Documents relatifs

Dès que tous les étudiants d’un groupe ont effectué l’examen, le coordinateur sollicite l’accueil pour appeler un autre groupe.. Enfin les examinateurs sont autorisés

Prendre connaissance avec les différentes fonctions de l'oscilloscope digital, d'un multimètre et d'un générateur en s'inspirant des points 4.1 à 4.3, 4.5 et 4.7 des notes sur

• Choisir tension et valeur des résistances fixes de manière à avoir la meilleure précision tout en respectant les valeurs de courants maximum dans la décade de résistance

Les valeurs de ces paramètres correspondent à la valeur officielle définie par l'IGN pour la France dans les documents Nouveaux systèmes géodésiques utilisables en France

Les réponses aux questions doivent être dans les fichiers ipynb et en format markdown (voir https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet pour plus de

En principe, cela devrait améliorer légèrement les performances des modèles. Pour la remise, en plus du code, vous devez remettre un fichier TP3.pdf dans lequel vous précisez

5.211 [S] Effectuer une succession d’opérations sur des exemples numériques (calcul mental, posé, instrumenté). 5.212 [–] Ecrire une expression correspondant à une

(Si vous n’êtes pas là ou vous souhaitez, vous pouvez vous déplacer par le menu « action du pilote » puis « Changer d’emplacement »). • Dans un premier temps, il faut aller