diff --git a/slides/00-intro.md b/slides/00-intro.md index 252498e..71b69c1 100644 --- a/slides/00-intro.md +++ b/slides/00-intro.md @@ -6,9 +6,15 @@ colorSecondary: #333 backgroundColor: #111 paginate: true transition: wipe -footer: "ML101 | Paul-Louis Nech | INTECH 2022-2023" +footer: "ML101 par Paul-Louis Nech | Présenté à l'INTECH Info | © 2022-2023" --- + + # Hello World ROBOTS ARE UPRISING. WHAT SIDE ARE YOU ON? @@ -54,7 +60,7 @@ $$ {\displaystyle g(x):=f^{L}(W^{L}f^{L-1}(W^{L-1}\cdots f^{1}(W^{1}x)\cdots ))} ![bg right](https://uproxx.com/wp-content/uploads/2015/05/angry-bender.jpg?w=650) -###### - [the Fallacy of generalization from Fictional evidence](https://www.lesswrong.com/posts/rHBdcHGLJ7KvLJQPk/the-logical-fallacy-of-generalization-from-fictional) +- [the Fallacy of generalization from Fictional evidence](https://www.lesswrong.com/posts/rHBdcHGLJ7KvLJQPk/the-logical-fallacy-of-generalization-from-fictional) --- @@ -62,13 +68,13 @@ $$ {\displaystyle g(x):=f^{L}(W^{L}f^{L-1}(W^{L-1}\cdots f^{1}(W^{1}x)\cdots ))} ![bg right grayscale](https://uproxx.com/wp-content/uploads/2015/05/angry-bender.jpg?w=650) -###### - [AGI Ruin: A List of Lethalities](https://www.lesswrong.com/posts/uMQ3cqWDPHhjtiesc/agi-ruin-a-list-of-lethalities) +- [AGI Ruin: A List of Lethalities](https://www.lesswrong.com/posts/uMQ3cqWDPHhjtiesc/agi-ruin-a-list-of-lethalities) --- ## On va parler des derniers succès -#### - [Meta AI Research: CICERO](https://ai.facebook.com/blog/cicero-ai-negotiates-persuades-and-cooperates-with-people/) +- [Meta AI Research: CICERO](https://ai.facebook.com/blog/cicero-ai-negotiates-persuades-and-cooperates-with-people/) --- -![bg 100%](./img/01-diffusion.png) +![bg 93%](./img/01-diffusion.png) +




-##### - [The Illustrated Stable Diffusion by Jay Alamar](https://jalammar.github.io/illustrated-stable-diffusion/) +- [The Illustrated Stable Diffusion by Jay Alamar](https://jalammar.github.io/illustrated-stable-diffusion/) --- ### Comment les modèles... peuvent raconter des histoires -##### - [AI Dungeon 2](https://aidungeon.cc/) +- [AI Dungeon 2](https://aidungeon.cc/) ![bg left 100%](./img/01-dungeon.jpg) --- ### Comment les modèles... peuvent halluciner -##### - [DeepDream](https://en.wikipedia.org/wiki/DeepDream) +- [DeepDream](https://en.wikipedia.org/wiki/DeepDream) - [Pareidolia](https://en.wikipedia.org/wiki/Pareidolia) ![bg left 100%](../tp/img/intech_dream.png) +--- +### Comment ils nous battent à plate couture... +![bg right fit](./img/00-alphago-movie.png) + +- [AlphaGo](https://www.nature.com/articles/nature16961) + + + +--- +### ...puis se battent eux-mêmes + +
+
+
+
+
+
+
+
+ +- [AlphaZero](https://arxiv.org/abs/1712.01815) + + + +![bg 40%](./img/00-alphazero-learn.png) + + + ---- ### Comment ils nous comprennent @@ -125,7 +170,7 @@ $$ {\displaystyle g(x):=f^{L}(W^{L}f^{L-1}(W^{L-1}\cdots f^{1}(W^{1}x)\cdots ))} -##### - [OpenAI Jukebox: a neural net that generates music, including rudimentary singing](https://openai.com/blog/jukebox/) +- [OpenAI Jukebox: a neural net that generates music, including rudimentary singing](https://openai.com/blog/jukebox/) ![bg left 100%](./img/01-jukebox.png) @@ -153,7 +198,7 @@ _color: black ### Paul-Louis Nech -- ###### ✉ formation@nech.pl +- ###### ✉ etudiants@nech.pl - ###### 🔗 LinkedIn.com/in/PLNech - ###### 💡 GitHub.com/PLNech @@ -169,9 +214,9 @@ _color: black ## Parcours -- #### EPITA 2016 | MTI -- #### Software Engineer @Algolia -- #### Senior ML Engineer @Algolia +- **EPITA** 2016 | Spé **MTI** +- Software Engineer @**Algolia** +- Senior _ML_ Engineer @**Algolia** ![bg right](./img/01-me2.jpg) --- @@ -212,71 +257,132 @@ _footer: "" ![bg fit](./img/00-questionnaire-feel.png) + --- +# Le positif - -Positifs? +--- +#### Le positif -> DAll-E: "_c'est trop bien **à condition de bien formuler** ce que l'on veut_" +> Dall-E: "_c'est trop bien **à condition de bien formuler** ce que l'on veut_" -> Copilot: "arrive parfois à deviner entièrement un paragraphe de code parfois sans même faire d'efforts supplémentaire." +--- +#### Le positif -> AI-Dungeon: "la complexité parfois mal interprétée" -> la rapidité de suggestions de traduction et la multitude de propositions +> GitHub Copilot: "_arrive parfois à deviner entièrement un paragraphe de code parfois **sans même faire d'efforts** supplémentaire_" -> Google lens +--- +### Le positif + +> la **rapidité** de suggestions de traduction et la **multitude** de propositions --- - +## Le négatif -Négatifs ? + +--- +#### Le négatif + +> AI-Dungeon: "la complexité parfois mal interprétée" + + +--- +#### Le négatif > des librairies python à n'en plus finir +--- +#### Le négatif + > Niveau morale c'est pas forcément ouf car ils utilisent du code open source +--- +#### Le négatif + > Ça reprenait vraiment bcp bcp bcp trop les exemples fournis. Les phrases était majoritairement reformulée mais pas nouvelles ! +--- +#### Le négatif + > Copilot: parfois des suggestions totalement inappropriées + +--- +#### Le négatif > La quantité de donnée à télécharger pour que ce ça deviennent fiable. + +--- +#### Le négatif + > l'écriture intutive de mon téléphone... + +--- +#### Le négatif + > le programme perdait vite le cours de la discussion + +--- +#### Le négatif + > les deepfakes où ils ont utilisé des personnes sans leur consentement dans des vidéos + +--- +#### Le négatif + > Mon ancienne entreprise voulait tellement "optimiser" le moteur de leurs jeux, qu'ils en ont cassé plus d'un (FDJ). --- - # Espoirs +--- +### Espoirs + > la médecine +--- +### Espoirs > Permettre une communication fluide entre personnes de langages différentes, handicapés ou non - --- # Dangers --- +### Dangers > les IA en machine learning qui ont été utilisé par de nombreuse personnes sur internet et qui ont été rendu inutile à cause des trolls --> GPT4-chan, ou ChatGPT sur Stack Overflow +--- +### Dangers + +- [GPT4-chan](https://huggingface.co/ykilcher/gpt-4chan) and the [Ai Gating debate](https://medium.com/geekculture/gpt-4-chan-and-the-ai-gating-debate-41c3eb54ec32) +- ou [ChatGPT sur Stack Overflow](https://huggingface.co/ykilcher/gpt-4chan) + > _Temporary policy: ChatGPT is banned_ + + +![bg right fit](https://thegradient.pub/content/images/size/w1600/2022/06/main-3.png) + +--- +### Dangers > par optimiser on peut entendre ajouter des fonctionnalités qui induisent une difficultés d'utilisation du produit à long terme... +--- +### Dangers > La non régression ne marche pas toujours +--- +### Dangers > Les robots tueurs +![bg right fit](https://i.ytimg.com/vi/Ofmg-4D5PoA/hqdefault.jpg) --- @@ -284,6 +390,7 @@ Négatifs ?
### Les robots tueurs +
- [Stop Killer Robots Campaign](https://www.stopkillerrobots.org/) @@ -298,6 +405,32 @@ With growing digital dehumanisation, the Stop Killer Robots coalition works to e - `A.I. AND RACE` - `#KEEPCTRL` + + + + +


@@ -306,19 +439,35 @@ With growing digital dehumanisation, the Stop Killer Robots coalition works to e --- +### Dangers +> _Que le machine learning soit utiliser pour contrôler les humains_ + + + +--- +### Dangers +> _TikTok / instagram_ :'( -> Que le machine learning soit utiliser pour contrôler les humains, non pas dans le sens d'un film de science-fiction mais dans le sens ou les personnes aux commandes pourrait fortement influencer les décisions de certaines personnes. Ex: les dernière élections présidentielles au Etats-Unis -> Que les machines contrôlent le monde ? +--- +### Dangers +> _Les pubs qui **s'adaptent** en fonction des recherches Intenrnet des personnes._ -> la manipulation des fois non prévu des algorithmes comme la radicalisation de certaines personnes +--- +### Dangers +> _la manipulation des fois non prévu des algorithmes comme la radicalisation de certaines personnes_ -> TikTok/ instagram :'( -> Les pubs qui s'adaptent en fonction des recherches Intenrnet des personnes. +--- +### Dangers +> _Que les machines contrôlent le monde ?_ +--- +### Dangers > CYBERPUNK 2077 +![bg right](https://preview.redd.it/fftof4hmu2b71.jpg?width=640&crop=smart&auto=webp&s=238d105bb0ce2441d6e20ad1a203a65cfc153ca2) + --- ## C'est quoi ce cours ? @@ -509,12 +658,23 @@ Comment je sais ce que je sais pas ? --- + -![bg 50%](https://probmods.org/assets/img/Curve_fitting.png) - Occam's razor! There's always a more complex rule that matches all observations perfectly. ---> +![bg 50%](https://probmods.org/assets/img/Curve_fitting.png) + --- # Failures of ML @@ -564,13 +724,13 @@ REPLICATION CRISIS! Probleme commun dans toute la science, incentives, game theo --- -Generative models +# Generative models https://thisxdoesnotexist.com/ --- -# FaceApp +## FaceApp ![](https://cdn-images-1.medium.com/max/1024/1*XBEpvGfjv_xo7ebBYNVDNA.png) @@ -578,7 +738,7 @@ https://thisxdoesnotexist.com/ --- -# GANs +## GANs

@@ -595,7 +755,7 @@ https://thisxdoesnotexist.com/ --- -GALACTICA? +## GALACTICA https://galactica.org/explore/ [Try it live ;)](https://huggingface.co/spaces/morenolq/galactica-base) @@ -717,6 +877,109 @@ TAY -> Interface matters! + +--- + +# OpenAI Codex + +# GitHub Copilot + +...et autres modèles génératifs de code + +--- + +![bg](https://venturebeat.com/wp-content/uploads/2021/06/Blog-Hero.png?w=1601&strip=all) + + + + +--- + +> _"I'm afraid this will create a mis-re-licensing hell"_ +> ~[Bruno Hebling Viera](https://twitter.com/HeblingVieira/status/1410972761241968641) + + +--- + +- Efficacité == Intelligence ? + +![bg right fit](https://www.encora.com/hs-fs/hubfs/Picturegit2.png?width=1280&name=Picturegit2.png) + +--- + +## Recitation? + +- [GitHub Copilot: Parrot or Crow?](https://github.blog/2021-06-30-github-copilot-research-recitation/) + + + +--- + +> However, there’s still one big difference between +> **GitHub Copilot reciting code** +> and **me reciting a poem**: +> +> I _know_ when I’m quoting + +
+ +~ _Albert Ziegler, GitHub Copilot: Parrot or Crow?_ + + + +--- + +![bg fit](https://i0.wp.com/user-images.githubusercontent.com/4434330/165667874-2f04b14c-909e-4bf5-9639-ff346da960f1.gif?ssl=1) + +--- + +> "I don't want to say anything but that's not the right license Mr Copilot." + +- [Tweet](https://twitter.com/i/status/1410886329924194309) + +--- + + + + +![bg fit](./img/00-copilot-verbatim.gif) + + + +--- + +- Question de température ? Pas assez hot pour oser ses propres idées ? + +--- + +> I hacked the Copilot code temperature generation to 1.0 (to allow for **wilder** output), +> yet the original code **still persisted**, +> with the alternate approaches being **less helpful**. +- [Max Woolf](https://twitter.com/minimaxir/status/1411005120695865347/photo/1) + +![bg fit right:40%](https://pbs.twimg.com/media/E5TlafWVcAAJNRZ?format=jpg&name=4096x4096) + + +--- + + + +![bg fit](./img/00-codex.png) + + --- ### Gaming the game: IAs flemmardes @@ -729,6 +992,8 @@ TAY --- ### Short-term goals vs long-term goals + + @@ -770,7 +1035,7 @@ _color: white ### Conclusions sur le _Paperclip maximizer_ - Essayez vous-même avec un [Clicker game](](https://www.decisionproblem.com/paperclips/index2.html)) 😛 -- Voir Nick Bostrom's [_Ethical Issues in Advanced Artificial Intelligence_](https://nickbostrom.com/ethics/ai) +- Voir Nick Bostrom's [_Ethical Issues in Advanced Artificial Intelligence_](https://nickbostrom.com/ethics/ai) 💡 ![bg crop brightness:0.2](./img/00-paperclips.png) @@ -915,6 +1180,17 @@ Le Feature Engineering, tout un art

+--- + +Exemple: a Neural Network + +
+
+ +$$ {\displaystyle g(x):=f^{L}(W^{L}f^{L-1}(W^{L-1}\cdots f^{1}(W^{1}x)\cdots ))} $$ + +![invert w:15em](https://www.moonbooks.org/media/images/thumbnails_1000_1000/neural-network-01.PNG?lastmod=1600539785.861) + --- ## Features: which one? @@ -989,6 +1265,8 @@ Supervisé ou non? + + --- + +- API-based [examples](https://gpt3demo.com/apps/algolia) +- [Safety Research](https://openai.com/blog/our-approach-to-alignment-research/) + - [Yudkowsky on OpenAI](https://www.lesswrong.com/posts/oEC92fNXPj6wxz8dd/how-to-think-about-and-deal-with-openai) + - [Common misconceptions thread](https://www.lesswrong.com/posts/3S4nyoNEEuvNsbXt8/common-misconceptions-about-openai) + +
+ + +![bg right fit](./img/00-openai.png) + +--- + +## HuggingFace +> "The Underdogs" + +- [Models](https://huggingface.co/models) +- [Datasets](https://huggingface.co/datasets) +- [APIs](https://huggingface.co/pricing) + +![bg right fit](./img/00-huggingface.png) + +--- + +## Cloud Vendors + + + +- [AWS](https://aws.amazon.com/machine-learning/) +- [GCP](https://cloud.google.com/solutions/ai) +- [Azure](https://azure.microsoft.com/en-us/solutions/ai/#benefits) + +![bg right fit](https://www.whizlabs.com/blog/wp-content/uploads/2020/07/aws-machine-learning-tools.png) + +--- + +## Hardware shops + + + +- [NVIDIA](https://www.nvidia.com/en-us/deep-learning-ai/solutions/machine-learning/) +- [AMD, you still here?](https://www.amd.com/en/technologies/deep-machine-learning) + - [Acquisition strategy](https://www.xilinx.com/applications/video-imaging/video-ai-analytics.html) +- [Google?](https://cloud.google.com/tpu/) + --- ## On résume @@ -1350,3 +1744,49 @@ On se retrouve l'année prochaine pour voir tout ça ensemble :) ![bg right 90%](https://miro.medium.com/max/640/0*JWCLdKhz-0e_77tB.webp) + +--- + +### Outro + +- AI Box experiments! + +--- + + +### Outro +- `tp-00` + +https://nech.pl/ml101-00-tp + +--- + + +### Outro +- Let's play with [StableDiffusion](https://colab.research.google.com/github/huggingface/notebooks/blob/main/diffusers/diffusers_intro.ipynb#scrollTo=e5MYkuhcRGAS) +- [using Diffusers](https://github.com/huggingface/diffusers) +- [Go further on your own!](https://github.com/Stability-AI/stablediffusion#image-inpainting-with-stable-diffusion) + +--- + + +### Outro +- Let's play with [Neural Networks](https://colab.research.google.com/github/google/eng-edu/blob/main/ml/cc/exercises/intro_to_neural_nets.ipynb?hl=en#scrollTo=9n9_cTveKmse) + +--- + +### Outro +- Let's play with [Neural Networks: LVL2 🛠](https://www.sitepoint.com/keras-digit-recognition-tutorial/) + +--- + + +### Outro +- Let's play with [LSTM lyric generation](https://git.plnech.fr/pln/BabelZoo/tree/master/LeBoulbiNet) +- Or [Rebuild your own 🛠](https://colab.research.google.com/github/tensorflow/examples/blob/master/courses/udacity_intro_to_tensorflow_for_deep_learning/l10c03_nlp_constructing_text_generation_model.ipynb#scrollTo=2LmLTREBf5ng) + + +![vertical bg right](https://git.plnech.fr/pln/BabelZoo/raw/master/LeBoulbiNet/boulbi.jpg) +![vertical bg right fit](https://git.plnech.fr/pln/BabelZoo/raw/master/LeBoulbiNet/first.png) +![vertical bg right fit](https://git.plnech.fr/pln/BabelZoo/raw/master/KoozDawa/first.png) +![vertical bg right fit](./img/00-turfu.png) \ No newline at end of file diff --git a/slides/01-choisir.md b/slides/01-choisir.md index cfd6da8..bb88b07 100644 --- a/slides/01-choisir.md +++ b/slides/01-choisir.md @@ -13,26 +13,144 @@ paginate: true --- ## Perceptron + + + + +--- + +> _perceptron may eventually be able to learn, make decisions, and translate languages._ + +**Frank Rosenblatt**, 1958 + +--- + + + +...until Marvin Minsky's book +## _Perceptrons_ (1969) + +![bg right:38% fit](https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fweltbild.scene7.com%2Fasset%2Fvgw%2Fperceptrons-195682049.jpg&f=1&nofb=1&ipt=802cd208ee9f59170d9fb973f0c820f23265e3d6c23b60529d332b7536fec005&ipo=images) + +--- + + + +- Pour aller plus loin: [_WP History of AI | Perceptrons and the attack on connectionism_](https://en.wikipedia.org/wiki/History_of_artificial_intelligence#Perceptrons_and_the_attack_on_connectionism) + +--- + +![bg fit](https://upload.wikimedia.org/wikipedia/en/5/52/Mark_I_perceptron.jpeg) + + + +--- + +# Formalisme: un Perceptron + + +$$ f(\mathbf{x}) = \begin{cases}1 & \text{if }\ \mathbf{w} \cdot \mathbf{x} + b > 0,\\0 & \text{otherwise}\end{cases} $$ + +--- + +# Intuition: apprentissage d'un Perceptron + + + +![bg right 95%](https://upload.wikimedia.org/wikipedia/commons/thumb/8/8a/Perceptron_example.svg/1280px-Perceptron_example.svg.png) + + +$$ f(\mathbf{x}) = \begin{cases}1 & \text{if }\ \mathbf{w} \cdot \mathbf{x} + b > 0,\\0 & \text{otherwise}\end{cases} $$ + +--- + + +![bg 90%](https://cdn-images-1.medium.com/max/1600/1*ZafDv3VUm60Eh10OeJu1vw.png) + +--- + +![bg left fit](https://cdn-images-1.medium.com/max/1600/1*ZafDv3VUm60Eh10OeJu1vw.png) + + + +- Aller plus loin: [CodeX - Ansh David: _intro to Perceptrons and different type of activation functions_ +](https://medium.com/codex/single-layer-perceptron-and-activation-function-b6b74b4aae66) + +--- +## Multi Layer Perceptron + + +![bg right:55% fit](https://rasbt.github.io/mlxtend/user_guide/classifier/NeuralNetMLP_files/neuralnet_mlp_1.png) + + +--- + +## MLP == Neural Network! + --- -## Neural Network +## Recurrent Neural Networks + + + + + +![bg fit right](https://www.skynettoday.com/assets/img/overviews/2020-09-27-a-brief-history-of-neural-nets-and-deep-learning/34568.gif) + +- See [The Unreasonable Effectiveness of RNNs](http://karpathy.github.io/2015/05/21/rnn-effectiveness/) --- ## LSTMS + + + +- See [Understanding LSTM networks](https://colah.github.io/posts/2015-08-Understanding-LSTMs/) by **Christopher Olah** + --- -## Deep Learning: +# Deep Learning --- ### Layers, Layers, Layers! ---- -### Convolutions, Capsules and other tricks + --- ### Attention! It's all you need +- https://arxiv.org/pdf/1706.03762.pdf --- ### TRANSFORMERS + +![bg right fit](https://external-content.duckduckgo.com/iu/?u=http%3A%2F%2Fwww.wikialpha.org%2Fmediawiki%2Fimages%2Fthumb%2F1%2F17%2FSteppernightstick-united.jpg%2F480px-Steppernightstick-united.jpg&f=1&nofb=1&ipt=f023244f8ef45b4cba81ffdd819cada10f55dea2c207d715f0f10498b001582f&ipo=images) + --- ### Language Models + +- [BERT: Bidirectional +Encoder Representations from Transformers](https://arxiv.org/pdf/1810.04805v2.pdf) + --- ### Genetic Algorithms --- @@ -42,11 +160,26 @@ paginate: true # Pratique : Choisir un Modèle --- -### Selon la data + +# Supervisé ou non ? + +--- + +![bg 93%](https://miro.medium.com/max/1400/0*p3zNp9D8YFmX32am.webp) + + +--- + +### Selon l'objectif +- [Overview of Supervised ML Algorithms](https://towardsdatascience.com/overview-of-supervised-machine-learning-algorithms-a5107d036296) --- -### Selon les ressources + +![bg](https://miro.medium.com/max/1400/1*31IsgRs2QZ7H4kl8tNqjdQ.webp) --- -### Selon l'usage + +### Selon le tooling à disposition + + diff --git a/slides/03-tester.md b/slides/03-tester.md index 5cccd46..d8af1bc 100644 --- a/slides/03-tester.md +++ b/slides/03-tester.md @@ -15,7 +15,7 @@ paginate: true --- ## De manière continue --- -### Quand la data chanfge +### Quand la data change --- ### Quand le modèle évolue --- diff --git a/slides/04-utiliser.md b/slides/04-utiliser.md index cde226a..87f1bd0 100644 --- a/slides/04-utiliser.md +++ b/slides/04-utiliser.md @@ -69,3 +69,4 @@ PyLint Black PyDantic MyPy + diff --git a/slides/img/00-alphago-movie.png b/slides/img/00-alphago-movie.png new file mode 100644 index 0000000..1303534 Binary files /dev/null and b/slides/img/00-alphago-movie.png differ diff --git a/slides/img/00-alphazero-learn.png b/slides/img/00-alphazero-learn.png new file mode 100644 index 0000000..569f34b Binary files /dev/null and b/slides/img/00-alphazero-learn.png differ diff --git a/slides/img/00-alphazero.png b/slides/img/00-alphazero.png new file mode 100644 index 0000000..e38ee7c Binary files /dev/null and b/slides/img/00-alphazero.png differ diff --git a/slides/img/00-codex.png b/slides/img/00-codex.png new file mode 100644 index 0000000..f5dcb8c Binary files /dev/null and b/slides/img/00-codex.png differ diff --git a/slides/img/00-copilot-verbatim.gif b/slides/img/00-copilot-verbatim.gif new file mode 100644 index 0000000..fd96d89 Binary files /dev/null and b/slides/img/00-copilot-verbatim.gif differ diff --git a/slides/img/00-deepmind.png b/slides/img/00-deepmind.png new file mode 100644 index 0000000..5357d9c Binary files /dev/null and b/slides/img/00-deepmind.png differ diff --git a/slides/img/00-huggingface.png b/slides/img/00-huggingface.png new file mode 100644 index 0000000..8a359ed Binary files /dev/null and b/slides/img/00-huggingface.png differ diff --git a/slides/img/00-openai.png b/slides/img/00-openai.png new file mode 100644 index 0000000..c884c7c Binary files /dev/null and b/slides/img/00-openai.png differ diff --git a/slides/img/00-turfu.png b/slides/img/00-turfu.png new file mode 100644 index 0000000..c954d6d Binary files /dev/null and b/slides/img/00-turfu.png differ diff --git a/tp/00-intro-tp.md b/tp/00-tp-intro.md similarity index 91% rename from tp/00-intro-tp.md rename to tp/00-tp-intro.md index bf0ebbd..4b16246 100644 --- a/tp/00-intro-tp.md +++ b/tp/00-tp-intro.md @@ -8,6 +8,12 @@ paginate: true footer: "ML101 | TP0: Introduction | Paul-Louis Nech | INTECH 2022-2023" --- + + # TP1: Introduction TP1: Choisir un modèle + + +--- + +Objectifs : +- Acquérir une intuition des différences entre grandes familles de modèles de Machine Learnig +- Savoir choisir choisir un modèle adapté à son problème +--- + +Format: Rendu écrit (fichier Markdown ou Doc avec une section par _Level_) +Sur l'intranet ou à formation@nech.pl + +
+ +**DEADLINE : 23 Janvier 23:59:59** + +
+ +> _Le cachet de mon mailserver faisant foi_. + +--- + +## Lvl 0: La base + +![bg right:35% w:300](https://www.meme-arsenal.com/memes/a6effdba5a540560c7b5ee616ee0f1f3.jpg) + + +###### Faites une phrase avec vos propres mots pour définir ce que veut dire: +- "Apprentissage Supervisé" +- "Apprentissage Non Supervisé" +- "Layer" +- "" + +--- + +## Lvl 1: Intro to Neural Nets by Google +- [Google Colab: Exercises - Intro to Neural Nets](https://colab.research.google.com/github/google/eng-edu/blob/main/ml/cc/exercises/intro_to_neural_nets.ipynb?hl=en#scrollTo=g8HC-TDgB1D1) + +:rocket: simple linear regression model VS Neural network :rocket: + +--- + +## Lvl 1.1 : baseline + +**Terminez les sections jusqu'à "_Build a linear regression model as a baseline_"** + +
+ +- Partagez les métriques `loss` et `mean_squared_error` obtenues avec votre baseline de régression linéaire + +Exemple: +``` + Evaluate the linear regression model against the test set: +300/300 [==============================] - 1s 2ms/step - loss: 0.4018 - mean_squared_error: 0.4018 + +[0.40178823471069336, 0.40178823471069336] +``` + +--- + +## Lvl 1.2 : beat the baseline :metal: + +**Terminez les sections jusqu'à "_Call the functions to build and train a deep neural net_"** +
+ +- Partagez les premières métriques `loss` et `mean_squared_error` obtenues avec votre modèle de réseau de neurones + +Exemple: +``` +Evaluate the new model against the test set: +3/3 [==============================] - 0s 7ms/step - loss: 0.3705 - mean_squared_error: 0.3705 + +[0.3705473244190216, 0.3705473244190216] +``` + +--- + + +## Lvl 2 : now beat yourself :smiling_imp: + + +**Terminez les sections jusqu'à "_Task 2: Optimize the deep neural network's topography_"** +
+ +- Partagez la définition finale de votre réseau de neurones + + +- Partagez votre :muscle: **meilleur résultat** :muscle: de métriques `loss` et `mean_squared_error` obtenues avec votre modèle de réseau de neurones + +- Répondez en quelques mots : qu'est-ce qui affectait la performance de votre réseau de neurones ? Quel impact sur sa vitesse d'apprentissage ? + +--- + +## Lvl 3 : now beat the real world + +Comment faire mieux sur le _test_ set, et pas seulement bien apprendre le _training set_ ? + +**Terminez la dernière section "_Task 3: Regularize the deep neural network_"** +
+ +--- + +## Lvl 3.1 : high score, real world + +- Partagez votre :brain: **meilleur résultat en situation réelle** :brain: de métriques `loss` et `mean_squared_error` obtenues avec votre modèle de réseau de neurones régularisé + +--- + +## Bonus: Mais alors mon modèle d'avant il vaut quoi ? + +- Répondez en quelques mots : en quoi la régularisation est utile ? Qu'en concluez vous sur votre évaluation initiale du modèle (les "meilleures métriques du Lvl 2?) diff --git a/tp/02-tp-entrainer.md b/tp/02-tp-entrainer.md new file mode 100644 index 0000000..c8d2bf8 --- /dev/null +++ b/tp/02-tp-entrainer.md @@ -0,0 +1,58 @@ +--- +marp: true +theme: uncover +color: #eee +colorSecondary: #333 +backgroundColor: #111 +paginate: true +footer: "ML101 | TP1: Choisir un modèle | Paul-Louis Nech | INTECH 2022-2023" +--- + + + +# TP1: Choisir un modèle + + +--- + +Objectifs : +- Théorie : outils fondamentaux +- Pratique : entrainer un modèle +--- + +Format: Rendu écrit (fichier Markdown ou Doc avec une section par _Level_) +Sur l'intranet ou à formation@nech.pl + +
+ +**DEADLINE : 24 Janvier 23:59:59** + +
+ +> _Le cachet de mon mailserver faisant foi_. + +--- + +## Lvl 0: La base + +![bg right:35% w:300](https://www.meme-arsenal.com/memes/a6effdba5a540560c7b5ee616ee0f1f3.jpg) + + +###### Faites une phrase avec vos propres mots pour définir ce que veut dire: +FOO BAR BAZ + +--- + +## Lvl 1: Multi-class classification with MNIST +- [Google Colab: Exercises - Multi-Class Classification with MNIST](https://colab.research.google.com/github/google/eng-edu/blob/main/ml/cc/exercises/multi-class_classification_with_MNIST.ipynb?hl=en#scrollTo=XuKlphuImFSN) + +:rocket: simple linear regression model VS Neural network :rocket: diff --git a/tp/04-tp-utiliser.md b/tp/04-tp-utiliser.md new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tp/04-tp-utiliser.md diff --git a/tp/use/diffusion.py b/tp/use/diffusion.py new file mode 100644 index 0000000..1951dfd --- /dev/null +++ b/tp/use/diffusion.py @@ -0,0 +1,8 @@ +from diffusers import DDPMPipeline + +def main(): + image_pipe = DDPMPipeline.from_pretrained("google/ddpm-celebahq-256") + image_pipe.to("cuda") + pass +if __name__ == '__main__': + main() \ No newline at end of file