---
title: 3_ Syllabus séquence Transformer
tags: support
robots: noindex, nofollow
author: Julien Noyer
---
# Syllabus : Séquence Transformer
*Formation Industrie 4.0 / Ingénieur 2000 / Référent Anthony Baillard*

*© [Julien Noyer](https://www.linkedin.com/in/julien-n-21219b28/) for [Ingénieurs2000](https://www.ingenieurs2000.com) - All rights reserved for educational purposes only*
---
<br>
## Objectifs
L'objectif de cette séquence est de comprendre l'utilisation de bibliothèques spécialisées en Intelligence artificielle afin de développer des programmes permettant de réaliser de prédictions. Le langage utilisé lors de cette séquence est le Javascript pour aborder les notions de programmation serveur et consolider les connaissance edans ce langage.
- **Répertoire GitLab** https://gitlab.com/ingenieurs-2000/3_sequence_transformer
- **Lien vers la version finale** https://brain.dwsapp.io
<br>
## Sujets traités
- Programmation Javascript
- Entrainer un réseau de neurones
- Tester un réseau de neurones
<br>
## Supports de cours
- [Javascript : Les bases de la programmation](https://hackmd.io/@teach-supports/HycpVHDNd)
- [Brain.js : réseau de neurones en Javascript](https://hackmd.io/@teach-supports/B1syirP4O)
<br>
---
<br><br><br>
# Notation de la séquence

<br>
En plus du formulaire général sur les notions en Data aborder pendant la séquence "**Transformer**", vous aurez à réaliser un **exercice noté sur 20** dans lequel vous devrez mettre en pratique les techniques abordées lors des sessions de cours avec Julien Noyer.
<br>
## Enoncé de l'exercice
Lors des séquences vous aurez travaillé à la fois sur une page Web et sur un serveur NodeJS, vous allez devoir les éditer pour créer une nouvelle page nommée `seattle.ejs` qui reprend la totalité des fonctionnalités développer pour entrainer un réseau de neurones a prédire un type d'Iris.
L'objectif de l'exercice est d'entrainer un réseau de neurones à faire des prédictions météorologiques pour le ville de Seattle. Vous devez télécharger le fichier à l'adresse ci-dessous et adapter le code pour entrainer le réseau de neurone :
- https://gitlab.com/ingenieurs-2000/3_sequence_transformer/-/blob/master/data/seattle-weather.zip
<br>
Les données ont été combinées pour qu'elles correspondre au modèle nécessaire pour l'entrainement d'un réseau de neurones avec BrainJS. Les objets générés ont les propriétés suivante :
```json=
{
"input": [0, 6.7, -2.2, 1.4, 0.1],
"output": [1, 0, 0, 0, 0],
"weather": "drizzle"
}
```
La dernière valeur du tableau input correspond au mois de l'année divié par 10, cette solution de conversion a été choisie pour simplifier la gestion de l'entrainement.
Avec c'est données, vous devez réaliser les deux demandes suivante
- **Entrainer** : utiliser les données charger pour une prédiction
- **Tester** : réaliser un formulaire pour prédire le "weather"
<br>
## Restitution
Pour restituer votre travail vous devez réaliser un fichier **ZIP** de votre dossier de travail afin que votre correcteur puisse tester le code dans son environnement local.
<br>
Pour créer une archive ZIP sur Mac, il vous suffit de faire un click-droit sur votre dossier de travail et de sélectionner l'option "Compresser...". Pour créer une archive ZIP sur Windows, il vous suffit de faire un click-droit sur votre dossier de travail et de sélectionner l'option "Envoyer vers > Ficher compressé".
- Créer un fichier **ZIP sur Mac** : https://apple.co/30W1cul
- Créer un fichier **ZIP sur Windows** : https://bit.ly/3sgc3vf
<br>
Une fois votre archive créée, il est essentiel que vous respectiez la nomenclature suivante pour nommé votre archive :
- **NOM_PRENOM_JS_TRANSFORMER**
<br>
Vous devez ensuite effectuer votre rendu via le LMS Ingénieur2000 en y déposant votre fichier **ZIP** dans le dossier correspondant à la séquence.
---
<br><br><br>
# Ressources
*Liste de liens utiles pour la mise en place de la séquence*

- Brain.js https://brain.js.org/#/
- ML5.js https://ml5js.org
- Tweet Sentiment Extraction https://www.kaggle.com/c/tweet-sentiment-extraction/
- Neural networks in JavaScript https://scrimba.com/playlist/pVZJQfg
- Setting up a Raspberry Pi headless https://www.raspberrypi.org/documentation/configuration/wireless/headless.md
<br>
---
*© [Julien Noyer](https://www.linkedin.com/in/julien-n-21219b28/) for [Ingénieurs2000](https://www.ingenieurs2000.com) - All rights reserved for educational purposes only*
---