Si on aidait le capitaine Némo à classifier les monstres marins ?

A presentation at Touraine Tech in January 2023 in Tours, France by Stéphane Philippart

Slide 1

Slide 1

Si on aidait le capitaine Némo à classifier les monstres marins ? Eléa Petton & Stéphane Philippart @EleaPetton & @wildagsx

Slide 2

Slide 2

🐻‍❄️ Mais l’Intelligence Artificielle c’est quoi au final ?

Slide 3

Slide 3

🐻‍❄️

Slide 4

Slide 4

🐻‍❄️

Slide 5

Slide 5

🦙 Qu’est-ce que l’IA ? Toi humain tu sais différencier les animaux marins. Comment faire pour l’apprendre ? Attends, je vais te donner un algorithme qui va te permettre d’apprendre.

Slide 6

Slide 6

🦙 Qu’est-ce que l’IA ? Je me demande quelle est la différence entre tous ces termes ? IA

Slide 7

Slide 7

🦙 Qu’est-ce que l’IA ? IA Machine Learning Je me demande quelle est la différence entre tous ces termes ?

Slide 8

Slide 8

🦙 Qu’est-ce que l’IA ? IA Machine Learning Je me demande quelle est la différence entre tous ces termes ? Réseaux de neurones

Slide 9

Slide 9

🦙 Qu’est-ce que l’IA ? IA Machine Learning Je me demande quelle est la différence entre tous ces termes ? Réseaux de neurones Deep Learning

Slide 10

Slide 10

🦙 Le Machine Learning plus en détail Machine Learning Deep Learning Supervisé Classification Régression

Slide 11

Slide 11

🦙 Le Machine Learning plus en détail Machine Learning Deep Learning Non supervisé Clustering Réduction de dimension

Slide 12

Slide 12

🦙 Le Machine Learning plus en détail Machine Learning Deep Learning Renforcement

Slide 13

Slide 13

🦙 Le Machine Learning plus en détail Machine Learning Deep Learning Supervisé Classification Non supervisé Renforcement

Slide 14

Slide 14

🐻‍❄️ Différentes familles en IA NLP

Slide 15

Slide 15

🐻‍❄️ Le NLP, à quoi ça sert ? Traduction

Slide 16

Slide 16

🐻‍❄️ Le NLP, à quoi ça sert ? Traduction Classification de texte

Slide 17

Slide 17

🐻‍❄️ Le NLP, à quoi ça sert ? Traduction Classification de texte Résumés

Slide 18

Slide 18

🐻‍❄️ Le NLP, à quoi ça sert ? Traduction Classification de texte Résumés Génération de texte

Slide 19

Slide 19

🐻‍❄️ Le NLP, à quoi ça sert ? Traduction Classification de texte Résumés Génération de texte Réponses à des questions

Slide 20

Slide 20

🦙 Différentes familles en IA NLP Computer Vision

Slide 21

Slide 21

🦙 La Computer Vision, c’est quoi ? Classification d’images

Slide 22

Slide 22

🦙 La Computer Vision, c’est quoi ? Classification d’images Détection d’objets

Slide 23

Slide 23

🦙 La Computer Vision, c’est quoi ? Classification d’images Détection d’objets Segmentation d’images

Slide 24

Slide 24

🦙 La Computer Vision, c’est quoi ?

Slide 25

Slide 25

🐻‍❄️ Différentes familles en IA NLP Computer Vision Audio

Slide 26

Slide 26

🐻‍❄️ Pourquoi le son en IA ? Classification des données acoustiques

Slide 27

Slide 27

🐻‍❄️ Pourquoi le son en IA ? Classification des données acoustiques Classification des sons environnementaux

Slide 28

Slide 28

🐻‍❄️ Pourquoi le son en IA ? Classification des données acoustiques Classification des sons environnementaux Classification du langage naturel

Slide 29

Slide 29

🐻‍❄️ Pourquoi le son en IA ? Classification des données acoustiques Classification des sons environnementaux Classification du langage naturel Classification de la musique

Slide 30

Slide 30

🐻‍❄️ Comment créer une application intelligente ? Obtenir de la donnée

Slide 31

Slide 31

🐻‍❄️ Comment créer une application intelligente ? Obtenir de la donnée Traiter la donnée

Slide 32

Slide 32

🐻‍❄️ Comment créer une application intelligente ? Obtenir de la donnée Traiter la donnée Créer ou optimiser un modèle existant

Slide 33

Slide 33

🐻‍❄️ Comment créer une application intelligente ? Obtenir de la donnée Traiter la donnée Créer ou optimiser un modèle existant Entraîner son modèle

Slide 34

Slide 34

🐻‍❄️ Comment créer une application intelligente ? Obtenir de la donnée Traiter la donnée Créer ou optimiser un modèle existant Entraîner son modèle Utiliser son modèle

Slide 35

Slide 35

🦙 Importance du pré-traitement des données Qualité des données Informations utiles

Slide 36

Slide 36

🦙

Slide 37

Slide 37

🦙 Exemples de pré-traitement pour les données Gestion des valeurs nulles / manquantes Normalisation Gestion des variables qualitatives Encodage à chaud

Slide 38

Slide 38

🦙 Et pour les données audios ? N paramètres audio Librosa name length audios .wav paramètres audio Librosa … … fichier .csv … name

Slide 39

Slide 39

🦙 me cleaning the data me building the model

Slide 40

Slide 40

🐻‍❄️ Technos et Outils Le langage le plus utilisé : Python

Slide 41

Slide 41

🐻‍❄️ Technos et Outils Le langage le plus utilisé : Python Beaucoup d’IDE (PyCharm, VSCode …) Le cas à part de JupyterLab

Slide 42

Slide 42

🐻‍❄️ Technos et Outils Le langage le plus utilisé : Python Beaucoup d’IDE (PyCharm, VSCode …) Le cas à part de JupyterLab Les frameworks sont nombreux Peut dépendre du type de modèle ou donnée manipulée

Slide 43

Slide 43

🐻‍❄️ Technos et Outils Le langage le plus utilisé : Python Beaucoup d’IDE (PyCharm, VSCode …) Le cas à part de JupyterLab Les frameworks sont nombreux Peut dépendre du type de modèle ou donnée manipulée Compatibilité GPU (surtout pour la partie traitement de la donnée)

Slide 44

Slide 44

🐻‍❄️ Technos et Outils Le langage le plus utilisé : Python Beaucoup d’IDE (PyCharm, VSCode …) Le cas à part de JupyterLab Les frameworks sont nombreux Peut dépendre du type de modèle ou donnée manipulée Compatibilité GPU (surtout pour la partie traitement de la donnée) Construction de modèles, Apprentissage, Front, Back, …

Slide 45

Slide 45

🐻‍❄️ Technos et Outils Le langage le plus utilisé : Python Beaucoup d’IDE (PyCharm, VSCode …) Le cas à part de JupyterLab Les frameworks sont nombreux Peut dépendre du type de modèle ou donnée manipulée Compatibilité GPU (surtout pour la partie traitement de la donnée) Construction de modèles, Apprentissage, Front, Back, … Quelques frameworks connus : Pytorch, TensorFlow, Streamlit, …

Slide 46

Slide 46

🐻‍❄️ Démo time ! Artturi Jalli

Slide 47

Slide 47

🦙 Identifier un mammifère par rapport à son cri Notebook Analyse de l’audio Pré-traitement des données Construction du modèle Entraînement et évaluation du modèle Test et enregistrement modèle Bart van meele

Slide 48

Slide 48

🐻‍❄️ Identifier un mammifère par rapport à son cri Notebook Analyse de l’audio Pré-traitement des données Construction du modèle Entraînement et évaluation du modèle Test et enregistrement modèle Applications Back-End : exposition de l’API Front-End : analyse d’un son chargé ou enregistré Bart van meele

Slide 49

Slide 49

🐻‍❄️ Schéma d’architechture globale

Slide 50

Slide 50

🐻‍❄️

Slide 51

Slide 51

🐻‍❄️ Qu’avons nous appris aujourd’hui ? Notion d’ia Datascience, Machine Learning, Deep Learning

Slide 52

Slide 52

🐻‍❄️ Qu’avons nous appris aujourd’hui ? Notion d’ia Datascience, Machine Learning, Deep Learning Place du son en IA Environnement, musique, NLP

Slide 53

Slide 53

🐻‍❄️ Qu’avons nous appris aujourd’hui ? Notion d’ia Datascience, Machine Learning, Deep Learning Place du son en IA Environnement, musique, NLP prétraitement des données Répartition, transformation, labélisation

Slide 54

Slide 54

🦙 Qu’avons nous appris aujourd’hui ? Notion d’ia AI Notebook Datascience, Machine Learning, Deep Learning Développement de mon code étape par étape Place du son en IA Environnement, musique, NLP prétraitement des données Répartition, transformation, labélisation

Slide 55

Slide 55

🦙 Qu’avons nous appris aujourd’hui ? Notion d’ia AI Notebook Datascience, Machine Learning, Deep Learning Développement de mon code étape par étape Place du son en IA Entraînement d’une ia Environnement, musique, NLP Réseau de neurones, exportation prétraitement des données Répartition, transformation, labélisation

Slide 56

Slide 56

🦙 Qu’avons nous appris aujourd’hui ? Notion d’ia AI Notebook Datascience, Machine Learning, Deep Learning Développement de mon code étape par étape Place du son en IA Entraînement d’une ia Environnement, musique, NLP Réseau de neurones, exportation prétraitement des données App pour ia Répartition, transformation, labélisation Object Storage, Streamlit, Docker, API

Slide 57

Slide 57

🦙 Les métiers de l’IA Machine Learning engineer Data Scientist Developer

Slide 58

Slide 58

🦙 Les métiers de l’IA Data Scientist

Slide 59

Slide 59

🦙 Le Data Scientist Data Analysis Data Visuatization Programmation Machine Learning Maths Statistics

Slide 60

Slide 60

🦙 Les métiers de l’IA Machine Learning engineer

Slide 61

Slide 61

🦙 Le Machine Learning Engineer Data Science Maths & Statistics Programmation Frameworks Environnement de prod Services Cloud

Slide 62

Slide 62

🐻‍❄️ Les métiers de l’IA Developer

Slide 63

Slide 63

🐻‍❄️ Le Développeur Python Docker DATA Concepts IA Développement Frameworks Outillage

Slide 64

Slide 64

🦙 Eléa Petton Machine Learning Engineer @OVHcloud @EleaPetton eleapttn Eléa PETTON

Slide 65

Slide 65

🐻‍❄️ Stéphane Philippart 🦄 DevRel@OVHcloud 🥑 💬 Co-Créateur de TADx 🔗 https://philippart-s.github.io/blog @wildagsx philippart-s philippartstephane

Slide 66

Slide 66

🐻‍❄️

Slide 67

Slide 67

MERCI ! https://ovh.to/8stVj1C

Slide 68

Slide 68

Pour tester Le notebook : L’app : https://github.com/eleapttn/nemo-notebook https://github.com/philippart-s/nemo-streamlit-front https://github.com/philippart-s/nemo-flask-back Quelques docs : https://docs.ovh.com/gb/en/publiccloud/ai/ https://blog.ovhcloud.com/tag/ai/ Quelques Exemples : https://github.com/ovh/ai-training-examples/

Slide 69

Slide 69

Références TensorFlow : https://www.tensorflow.org/guide?hl=fr JupyterLab : https://jupyter.org/ Pandas : https://pandas.pydata.org/ Sklearn : https://scikit-learn.org/stable/ Numpy : https://numpy.org/ Matplotlib : https://matplotlib.org/ Dataset des sons de mammifères marins : https://www.kaggle.com/datasets/shreyj1729/best-of-watkins-marine-mammal-sound-database Informations sur la dataset : https://cis.whoi.edu/science/B/whalesounds/index.cfm Classification de musique avec un CNN : https://blog.clairvoyantsoft.com/music-genre-classification-using-cnn-ef9461553726 Classification des genre musicaux : https://towardsdatascience.com/music-genre-classification-with-python-c714d032f0d8 Pré-traitement des données en Machine Learning : https://towardsdatascience.com/introduction-to-data-preprocessing-in-machine-learning-a9fa83a5dc9d

Slide 70

Slide 70