A la découverte de l'intelligence artificielle
Topic outline
-
Option «À la découverte de l’Intelligence Artificielle»
Description
Cette option propose une initiation ludique et visuelle à l’intelligence artificielle – plus précisément à l’apprentissage statistique – via le pilotage de robots. L’optique, sur la base de travaux pratiques, est de développer une intuition sur les algorithmes d’apprentissage (supervisés, non supervisés, par renforcement), pour parvenir progressivement aux formulations mathématiques. La mise en œuvre sera l’occasion de manipuler réseaux de neurones, vision artificielle et traitement du langage. Les rudiments de programmation Python nécessaires seront introduits au fil de l’eau.
Cette option ne nécessite pas de prérequis particulier hors mathématiques de terminale. En particulier il n’est pas requis d’avoir suivi la spécialité mathématiques ou la spécialité NSI en Terminale.
Responsable d’UE
Enseignant principal : Simon Collet (simon.collet@learningrobots.ai)
Enseignants : Simon Collet, Thomas Deneux, George Marchment
Responsable du cours : Thomas Deneux (thomas.deneux@cnrs.fr)
Coresponsable : Nicolas M. Thiéry (Nicolas.Thiery@universite-paris-saclay.fr)Organisation pratique
12 séances de 2 heures en salle de travaux pratiques (sur 12 semaines consécutives), créneau usuel des options les jeudi 13h30-15h30
MCC Modalités de contrôle des Connaissances
- CCTP: Deux TPs notés (mi-parcours et fin de session): 65%
- EEF Examen Écrit Final: 35%
Installation du logiciel
Lien de téléchargement : https://learningrobots.ai/les-ressources/#download_software
Installer la version 1.9.0-beta sur les PC Windows.
Numéros de licence à utiliser :- Salle 209 : XXX XXX XXX (si quota dépassé : XXX XXX XXX)
- Salle 214 : XXX XXX XXX (si quota dépassé : XXX XXX XXX)
-
Introduction à l'Intelligence Artificielle
Le support de présentation est disponible en fichier joint à cette page. -
Cette séance est partagée en deux parties :
- Une course de robots autonomes pour illustrer les principes de l'apprentissage supervisé.
- La programmation du robot pour vous familiariser avec le langage de programmation python.
Installation du logiciel
- Si le logiciel AlphAI est déjà installé sur votre ordinateur, veillez à bien le mettre à jour vers la version 1.9.0-beta6.
- Si le logiciel AlphAI n'est pas installé, vous pouvez le télécharger et l'installer à partir du lien suivant : version 1.9.0-beta6.
1 - Course de robots autonomes
Suivez les instructions au tableau afin de réaliser les étapes suivantes :
- Télécharger et installer le logiciel (voir ci-dessus).
- Entrez une clé d'activation.
- Pour la salle 209, utilisez la clé 042-689-149 ou 208-191-010.
- Pour la salle 214, utilisez la clé 416-382-020 ou 158-530-401.
- Allumez et connectez votre robot.
- Chargez les paramètres "Course de robots".
- Entraînez votre robot. N'oubliez pas de vérifier s'il a bien appris ou non, et compléter son entraînement dans les zones difficiles. Effacez ou corrigez les erreurs dans voter base de données.
- Course de robots en mode autonome !
2 - Programmation du robot en python
Pour cela, nous allons utiliser un jupyter-notebook, type de document dans lequel on peut écrire à la fois du texte au format Markdown et du code python (cliquez dessus puis sauvez le avec CTRL+S, vérifiez bien que vous avez enregistré au format .ipynb et non .txt).
Pour commencer, vous pouvez télécharger le document programmation_jupyter_FR ci-dessous et le placer dans votre dossier personnel. Pendant la séance, vous pourrez compléter ce document avec vos réponses et enregistrer ces modifications.
Pour lancer le jupyter-notebook :
- Clic-droit sur l'icône AlphAI, et sélectionner ouvrir l'emplacement du fichier.
- Double-clic sur le fichier start_jupyter-notebook.bat.
- Trouver et ouvrir le document programmation_jupyter_FR.ipynb.
Il faudra également lancer le logiciel AlphAI depuis le raccourci présent sur le bureau ou dans le menu Démarrer.
-
Le notebook à télécharger et ouvrir avec Jupyter pour la deuxième partie de la séance (programmation en python).
-
Instructions pour installer le logiciel, entrer une clé d'activation, connecter un robot, et démarrer l'activité course de robots.
-
Explications pour lancer Jupyter et ouvrir le notebook.
-
Corrigé de l'activité programmation avec Jupyter. Dossier compressé : à extraire puis ouvrir avec Jupyter.
-
1 - En priorité : terminez la partie 2 de la séance précédente ! Attention : il faudra mettre à jour AlphAI vers la version 1.9.0-beta7 ou plus (correction du bug de la caméra).
2 - Perfectionnement en python.
Dans cette partie, nous n'utiliserons pas AlphAI ni les robots.
L'objectif de cette séance est de perfectionner votre niveau en python dans le but de programmer votre premier algorithme d'apprentissage lors des deux prochaines séances : l'algorithme des K plus proches voisins. Les points importants à bien maîtriser sont la manipulation des listes, et des images avec la bibliothèque numpy.
Dans ce but, vous allez créer un document jupyter-notebook et suivre les instructions du tutoriel python officiel.
Vous pouvez également consulter la documentation officielle de la bibliothèque numpy (en anglais).
- Les débutants peuvent commencer le tutoriel à la partie 3 - Introduction informelle à Python.
- Ceux qui connaissent déjà python peuvent commencer à la partie 4 - D'autres outils de contrôle de flux.
- Dans l'idéal, il faudrait aller jusqu'à la fin de la partie 5 - Structures de données.
- À télécharger : un document avec des exercices pour tester vos connaissances et vous auto-évaluer, et une image qui est utilisée dans le dernier exercice.
-
Une correction des exercices du TP 3 au format notebook.
Pour sauvegarder une copie, ouvrir le fichier dans le navigateur, puis faire un clic-droit et sélectionner 'enregistrer sous'.
-
Une correction du TP3 au format HTML. Consultable dans un navigateur mais pas modifiable.
-
S'il est nécessaire de réinstaller le logiciel AlphAI, veuillez vous référer aux instructions en haut de cette page, section Installation du logiciel. Dans tous les cas, assurez-vous d'accepter la mise à jour si elle vous est proposée.
Aujourd'hui, séance d'introduction à l'algorithme des k plus proches voisins. Vous pouvez travailler par groupes de 2 avec un robot par groupe, ou seul en utilisant le simulateur.
Toutes les instructions concernant le TP se trouvent dans le document algorithme_KNN à télécharger. Veillez à bien prendre des notes afin de pouvoir poursuivre ce travail la semaine prochaine.
Consignes pour l'utilisation des robots :
- Ne pas les faire tomber ! Toujours les attraper par la partie grise.
- Pour changer les piles : vérifiez que le robot est bien sur OFF. Attention à la polarité des piles !
-
Corrigé complet des TP 4 et 5.
-
-
Lien pour télécharger AlphAI : choisissez bien la version beta.
Récupérez l'énoncé du TP (document Word), insérez directement vos réponses à l'intérieur de ce document (notamment avec des copier-coller de captures d'écran).
À la fin de la séance, envoyez-le avec les autres documents réponse à simon.collet@learningrobots.ai.
-
Opened: Thursday, 7 November 2024, 1:30 PMDue: Thursday, 7 November 2024, 6:00 PM
Ce devoir est un moyen alternatif pour déposer votre travail dans le cas où vous n'avez pas accès à votre boîte mail.
Attention : indiquez bien vos nom et prénom dans le titre du document réponse et à l'intérieur de celui-ci.
-
Énoncé du TP à compléter avec vos réponses.
À la fin de la séance, ce document complété et les autres documents réponses devront être envoyés à simon.collet@learningrobots.ai.
-
-
Lien pour télécharger AlphAI (choisir la version la plus récente).
Document du TP et correction ci-dessous.
-
La séance a été annulée pour des raisons de météo (neige).
Elle devait commencer par la présentation de diapositives pour expliciter ce que nous avons appris lors de la séance précédente sur les réseaux de neurones. Nous vous demandons de lire et bien comprendre cette présentation PowerPoint jointe ci-dessous. Ce seront des connaissances sur lesquelles vous pourrez être évalués malgré l'annulation de la séance.
L'objectif du TP ensuite était de découvrir la bibliothèque python sklearn / scikit-learn et de l'utiliser afin d'implémenter vos propres modèles KNN et réseaux de neurones. Nous vous donnons ci-dessous la correction de ce TP, au format Python Notebook si vous voulez l'exécuter, et au format pdf pour pouvoir le lire sans l'exécuter. Notez toutefois qu'il n'y aura pas d'évaluation de connaissance sur scikit-learn.
Les instructions pour lancer le Python Notebook sont les suivantes :
- Vérifiez que AlphAI est bien installé, sinon téléchargez et installez la dernière version beta.
- Téléchargez le dossier compressé TP8 ci-dessous, puis le déplacer dans votre dossier "cours IA" et le décompresser.
- Lancez le raccourci sur le bureau "AlphAI - Jupyter Notebook".
- Ouvrir le document
TP8_corrigé.ipynb
(dans le dossier décompressé).
-
TP8 File ZIP
-
TP8 corrigé File PDF
-
L'objectif de cette séance est de découvrir les principes de l'apprentissage par renforcement et l'algorithme du Q-learning.
- Vérifiez que le logiciel AlphAI est bien installé, sinon téléchargez et installez la dernière version depuis cette page.
- Le sujet du TP est à télécharger ci-dessous.
-
Le sujet de la partie 2 (programmation).
-
Le corrigé de la partie 1 (découverte) faite au tableau.
-
Cette séance va comporter :
- Une première présentation récapitulant les notions et algorithmes appris pendant le cours (modèle de machine learning, graphe d'état, algorithme KNN, réseau de neurones artificiels, apprentissage par renforcement avec le Q-learning)
- Une second présentation donnant des éléments supplémentaires - sur lesquels vous ne serez pas évalués (autres algorithmes d'apprentissage supervisé / non-supervisé / par renforcement ; et focus sur les modèles de langage)
- Un TP - dont tout le corrigé est déjà donné - pour utiliser ChatGPT via son API Python de manière à parler en français à votre robot AlphAI !!!
- Nous parcourrons enfin ensemble les annales des partiels de ce cours les années précédes
Pour le TP, téléchargez le fichier zip et décompressez-le. Puis exécutez le raccourci sur le bureau "AlphAI - Jupyter Notebook" et ouvrez-y et exécutez pas à pas le fichier .ipynb. -
Vous pouvez découvrir en quoi consistera l'examen en étudiant ces annales et leurs corrigés. Il y a des questions de cours, de compréhension de graphique, d'analyse de document, et de réaliser vous-mêmes certains calculs qu'exécutent les IA (nous vous recommandons en particulier de faire la partie 6 de l'examen 2022-2023 et/ou l'exercice 5 de l'examen 2023-2024).
-
Récupérez l'énoncé du TP (document Word), insérez directement vos réponses à l'intérieur de ce document (notamment avec des copier-coller de captures d'écran), et remettez-le en fin de séance sur cette interface.
-
Opened: Thursday, 12 December 2024, 1:30 PMDue: Thursday, 12 December 2024, 6:00 PM
Déposez votre travail (document Word) sur cette plateforme à la fin de la séance.
-