Programmation Python pour Intelligence Artificielle
Apprentissage Automatique
Année universitaire: 2024/2025
1
Qu’est-ce que l’intelligence artificielle ?
Définition:
L’intelligence artificielle (IA) est un domaine des sciences informatiques et
mathématiques qui regroupe un ensemble de méthodes et de théories visant à créer
des machines capables d’imiter certaines formes d’intelligence humaine.
L’objectif principal est de permettre à ces systèmes de résoudre des problèmes
complexes, à l’image de la pensée humaine.
Pourquoi parle-t-on d’intelligence ?
Parce que l’IA permet à des ordinateurs ou à des robots de prendre des décisions
intelligentes : par exemple, reconnaître une voix, comprendre un texte, ou conduire une
voiture. 2
L’intelligence artificielle touche de nombreux champs : probabilités,
neurosciences, robotique, théorie des jeux, médecine, transports, et bien
d'autres encore.
Le domaine de l’intelligence artificielle se compose de plusieurs sous-domaines
imbriqués.
3
L’apprentissage automatique (ou Machine Learning) est un sous-domaine de
l’intelligence artificielle consistant à extraire automatiquement des règles à partir
de données ou d’expériences pour résoudre un problème donné.
Les réseaux de neurones sont l’un des modèles les plus connus et les plus utilisés.
L’apprentissage profond (Deep Learning) est une branche du Machine Learning
basée sur des réseaux de neurones complexes (profonds).
4
Introduction au Machine Learning:
Définition générale:
Le Machine Learning (ML), ou apprentissage automatique, est une sous-
discipline de l'intelligence artificielle (IA) qui se concentre sur la conception et le
développement d’algorithmes capables d’apprendre à partir de données. Plutôt
que d’être explicitement programmés pour effectuer une tâche, les systèmes de
ML apprennent à partir de l’expérience (les données) pour faire des prédictions
ou prendre des décisions.
5
Objectif
L'objectif principal du ML est de modéliser automatiquement des
comportements ou des relations complexes dans les données, dans le but de :
-Prédire des résultats futurs (ex : prix d’un appartement),
-Classifier des objets ou événements (ex : reconnaître des visages ou des emails
spam),
-Trouver des structures cachées (ex : regroupement de clients en marketing),
-Automatiser des tâches complexes (ex : conduite autonome, traduction
automatique).
6
Mais comment apprendre ?
Pour donner à un ordinateur la capacité d’apprendre, on utilise des
méthodes d’apprentissage qui sont fortement inspirées de la façon dont
nous, les êtres humains, apprenons à faire des choses.
Parmi ces méthodes, on compte :
• L’apprentissage supervisé (Supervised Learning)
• L’apprentissage non supervisé (Unsupervised Learning)
• L’apprentissage par renforcement (Reinforcement Learning)
7
L’Apprentissage Supervisé
Pour maîtriser l’apprentissage supervisé, il faut absolument comprendre et
connaitre les 4 notions suivantes :
• Le Dataset
• Le Modèle et ses paramètres
• La Fonction Coût
• L’Algorithme d’apprentissage
8
Notion 1 : Le Dataset
On parle d’apprentissage supervisé lorsque l’on fournit à une machine
beaucoup d’exemples (𝒙, 𝒚) dans le but de lui faire apprendre la relation qui
relie 𝒙 à 𝒚.
En Machine Learning, on compile ces exemples (𝒙,𝒚) dans un tableau que
l’on appelle Dataset :
• La variable 𝒚 porte le nom de target (la cible). C’est la valeur que l’on
cherche à prédire.
• La variable 𝒙 porte le nom de feature (facteur). Un facteur influence la
valeur de 𝒚, et on a en général beaucoup de features (𝒙𝟏,𝒙𝟐,…) dans notre
Dataset que l’on regroupe dans une matrice 𝑿.
9
Exemple: Le Dataset
Ce Dataset regroupe des exemples d’appartements avec leur prix 𝒚 ainsi que
certaines de leurs caractéristiques (features).
10
Notion 2 : Le Modèle et ses paramètres
En Machine Learning, on développe un modèle à partir du Dataset. Il peut
s’agir d’un modèle linéaire, ou bien un modèle non-linéaire.
On définit 𝒂,𝒃,𝒄, etc. comme étant les paramètres d’un modèle. 11
Notion 3 : La Fonction Coût
Lorsqu’on teste notre modèle sur le Dataset, celui-ci nous donne des
erreurs. L’ensemble de ces erreurs, c’est Fonction Coût.
12
Notion 4 : L’Algorithme d’apprentissage
L’objectif central du Machine Learning, c’est de trouver les paramètres du
modèle qui minimisent la Fonction Coût. Pour cela, on utilise un algorithme
d’apprentissage.
L’exemple le plus courant étant l’algorithme de Gradient Descent.
13
Les applications du Machine Learning
Avec le Machnie Learning on peut développer des modèles pour résoudre 2
types de problèmes :
• Les problèmes de Régression
• Les problèmes de Classification
14
La Régression Linéaire
15
Apprenez votre premier modèle linéaire
Voici la recette à suivre pour réaliser votre premier modèle de Machine Learning.
1. Récolter vos données
Imaginez que plusieurs agences immobilières vous aient fourni des données sur des
appartements à vendre, notamment le prix de l’appartement (𝒚) et la surface habitable
(𝒙). En Machine Learning, on dit que vous disposez de 𝒎 exemples d’appartements.
On désigne :
𝒙(𝒊) la surface habitable de l’exemple 𝒊
𝒚(𝒊) le prix de l’exemple 𝒊
16
En visualisant votre Dataset, vous obtenez le nuage de points suivant :
17
2. Créer un modèle linéaire
A partir de ces données, on développe un modèle linéaire 𝒇(𝒙)=𝒂𝒙+𝒃
où 𝒂 et 𝒃 sont les paramètres du modèle.
Un bon modèle donne de petites erreurs entre ses prédictions 𝒇(𝒙) et les exemples (𝒚) du
Dataset.
Nous ne connaissons pas les valeurs des paramètres 𝒂 et 𝒃, ce sera le
rôle de la machine de les trouver 18
3. Définir La Fonction Coût
Pour la régression linéaire, on utilise la norme euclidienne pour mesurer les erreurs entre
𝒇(𝒙) et (𝒚).
Concrètement, la formule pour exprimer l’erreur 𝑖 entre le prix 𝒚(𝒊) et la prédiction faites en
utilisant la surface 𝒙(𝒊) : 𝑒𝑟𝑟𝑒𝑢𝑟(𝑖)= ( 𝑓(𝑥(𝑖)) − 𝑦(𝑖) )2
Chaque prédiction s’accompagne d’une erreur, on a donc 𝒎 erreurs.
On définit la Fonction Coût 𝑱(𝒂,𝒃) comme étant la moyenne de toutes les erreurs :
Note : En français, cette fonction a un nom : c’est l’erreur quadratique moyenne (Mean
Squared Error)
19
20
4. Trouver les paramètres qui minimisent la Fonction Coût
La prochaine étape est l’étape la plus excitante, il s’agit de laisser la machine
apprendre quels sont les paramètres qui minimisent la Fonction Coût, c’est-à-
dire les paramètres qui nous donnent le meilleur modèle.
Pour trouver le minimum, on utilise un algorithme d’optimisation qui s’appelle
Gradient Descent (la descente de gradient).
Cet algorithme vous permet de trouver le minimum de la Fonction Coût 𝑱(𝒂,
𝒃) (le point le plus bas de la courbe) en partant de coordonnées 𝒂 et 𝒃
aléatoires :
21
22