Ce que nous allons construire
Un langage, des modèles qui apprennent et des programmes qui coopèrent : découvrez le cours en les essayant.
Comment un programme devient-il un jeu ? Comment un réseau apprend-il à partir d’exemples ? Comment plusieurs copies retrouvent-elles le même état après une coupure ? Nous allons construire les briques qui permettent de répondre à ces questions.
La présentation propose des démonstrations manipulables des réalisations du cours et de ses prolongements. Vous pouvez modifier un programme, jouer, dessiner pour un réseau entraîné, arrêter un travailleur pendant un rendu ou faire partir vingt demandes pour une même place.
Aller directement à une démonstration
Un petit langage
Modifiez un programme. Observez son type et son résultat ; essayez aussi un programme que le typeur refuse.
AP2–AP3 et projet Types →Un Sokoban sur CHIP-8
Jouez, puis suivez le passage du programme typé à la ROM exécutée par la petite machine.
Compilation et machines →Une image dans un réseau
Rejouez les étapes d’un véritable entraînement. Le réseau calcule la couleur de chaque pixel, même à une nouvelle résolution.
Projet image par coordonnées →Des chiffres à reconstruire
Abîmez un chiffre manuscrit, dessinez le vôtre, puis mélangez deux codes appris par l’autoencodeur.
Projet autoencodeur →L’attention d’un Transformer
Lancez un duel avant/après apprentissage, suivez les liens d’attention et jouez avec la température des prédictions.
Projet petit Transformer →Une image construite à plusieurs
Répartissez le calcul entre des travailleurs, observez les morceaux arriver, puis provoquez une panne sans perdre les autres résultats.
Projet ferme de rendu →Une salle, vingt demandes
Regardez les demandes converger vers une même place. Un seul jeton doit être accepté ; un vieux message ne doit pas effacer une nouvelle réservation.
Projet réservations concurrentes →Deux éditeurs qui se retrouvent
Écrivez des deux côtés, coupez les échanges, puis regardez les opérations circuler et les textes converger.
Projet éditeur OT, après AP6–AP8 →Des élèves, des choix, des groupes
Suivez les propositions et les admissions provisoires. Comparez les affectations et cherchez les élèves et groupes qui préféreraient changer.
Projet affectation de groupes →Préparer la projection
Ouvrez les slides une première fois avec une connexion et essayez « Exécuter » sur le petit langage. Le moteur Elixir se charge au premier essai. Le jeu dispose aussi d’une ROM déjà compilée pour démarrer immédiatement.
Les boutons en haut permettent de choisir une slide, d’afficher les notes et de passer en plein écran. Les flèches changent de slide hors des champs et des démonstrations. « Tout voir » affiche le parcours complet.
La présentation et les démonstrations sont distinctes de la keynote qui ouvrira AP1. Les détails des adaptations et les commandes de vérification sont dans le guide enseignant du dépôt.
Pour le premier cours : une introduction de 30 à 40 minutes
D’où vient Elixir, qui l’utilise et que construirons-nous avec ? La keynote donne ces repères, puis nous ouvrons Livebook et exécutons quelques cellules. Installez-le avant le cours grâce à la page de préparation. Les cinq carnets d’AP1 prennent ensuite le relais : ils contiennent le cours et les exercices, et le premier s’ouvre ci-dessous.
Nos outils au fil du semestre
Dès AP1, Livebook réunit texte, code Elixir et résultats dans un fichier. Installez Livebook avant le cours : son environnement suffit pour les premiers ateliers.
Avant AP6, installez aussi Erlang et Elixir sur votre machine et configurez votre éditeur. Le projet de vérification permet de vérifier les outils avant la séance.
