---
marp: true
theme: uncover
color: #eee
colorSecondary: #333
backgroundColor: #111
paginate: true
footer: "ML101 | TP0: Introduction | Paul-Louis Nech | INTECH 2022-2023"
---

# <!-- fit --> TP1: Introduction
<!-- ### Définitions & Histoire du ML  
### méthodes et outils ; 
### critiques, biais et limites 
### applications et perspectives d'avenir -->

---

Objectifs : 
- Se familiariser avec les bases du ML
- Se faire une intuition de ses applications possibles
- Découvrir ses limites avec quelques gros fails
---

Format: Rendu écrit (fichier Markdown ou Doc avec une section par _Level_)
Sur l'intranet ou à formation@nech.pl

<br />

**DEADLINE : 15 Décembre 23:59:59**

<br />

> _Le cachet de mon mailserver faisant foi_.

---

## Lvl 0: La base

![bg right:35% w:300](https://www.meme-arsenal.com/memes/a6effdba5a540560c7b5ee616ee0f1f3.jpg)
<!-- Image credit: World of Warcraft Tutorial boar -->

###### Faites une phrase avec vos propres mots pour définir ce que veut dire:
- "Apprendre"
- "Deep Learning"
- "Précision et Rappel"
- "Overfit"

---

## Lvl 0.1: Bonus - dans la vraie vie

- Réfléchissez à un exemple de produit ou service qui est "trop précis" : quel est le problème que ça pose à l'utilisateur ?
- Même question pour un "trop haut rappel" : quel problème?

---

## Lvl 1: Les pionniers

Parmi les figures historiques évoquées au premier cours, 
choisissez en une. 

Lisez un peu sur cette personne, puis partagez ici quelque-chose qu'elle a dit ou fait que vous, personnellement, trouvez intéressant.

---

## Lvl 2: Jouer avec des LMs 🕹

<br />
<br />

> Consigne: Entrez dans le [AI Dungeon](https://play.aidungeon.io/), faites une partie, et notez:
- Une phrase de son output que vous trouvez excellente _(expliquez en quelques mots pourquoi celle là)_

- Une phrase de son output que vous trouvez risible _(expliquez pourquoi : qu'est-ce qu'il a si mal compris ?)_

---

<!-- _footer: '' -->
## Lvl 2.1: Bonus - Testez OpenAI Codex

- Créez votre compte sur OpenAI
- Testez OpenAI Codex : écrivez la signature et la docstring d'une fonction qui remplit un besoin simple (valider qu'un username correspond à X, valider qu'un nombre a telle propriété, etc), puis laissez le modèle générer son code.
- Partagez le code généré, et en quelques mots votre opinion : quelles forces ? quelles faiblesses ? quels avantages ou risques à s'en servir au boulot ?

---

### Lvl 3: Jouer avec des Image Models

- Ouvrez "ThisPersonDoesNotExist" et dites en quelques mots votre impression sur la qualité des images générées.
- Ouvrez "ThisXDoesNotExist", choisissez un autre modèle, et commentez sa qualité.

--- 

### Lvl3 Bonus: Votre propre génération d'image

Utilisez MidJourney, CrAIyon (Dall-E Mini), StableDiffusion ou DeepDreamGenerator pour créer une image basée sur un prompt textuel ou sur du style transfer.

Incluez votre résultat préféré dans ce rendu et commentez :
- Où-est-ce que le modèle excelle ?
- Où-est-ce que le modèle échoue ? 
- Avez vous essayé un autre sujet d'abord, que le modèle a échoué à réaliser ?