
Introduction à l’intelligence artificielle
Je suis étudiant et développeur full-stack. Je partage ici mes notes et recherches pour comprendre les bases de l’IA. L’objectif : expliquer simplement, mais sans avoir peur d’entrer dans un peu de technique.
1. Un peu d’histoire
Définition
L’intelligence artificielle (IA) est une discipline de l’informatique qui cherche à créer des machines capables de raisonner, apprendre et résoudre des problèmes.
Elle est étudiée depuis les années 1950 avec des pionniers comme Alan Turing, John McCarthy (qui a inventé le terme “Artificial Intelligence”), et Marvin Minsky.
IA forte vs IA faible
- IA forte : une intelligence générale, capable de raisonner et comprendre comme un humain. C’est encore aujourd’hui un objectif de recherche théorique.
- IA faible : des systèmes spécialisés capables de résoudre une tâche précise. C’est ce qu’on utilise dans la pratique (exemple : jouer aux échecs, reconnaître des visages).
Exemples historiques
- 1950 : Alan Turing propose le test de Turing comme critère d’intelligence.
- 1997 : Deep Blue (IBM) bat le champion du monde d’échecs Garry Kasparov → IA faible spécialisée.
- Années 2010 : explosion du deep learning grâce à l’augmentation de la puissance de calcul et des données.
Utilisations
- Résolution de problèmes spécialisés (jeux, logique).
- Automatisation de tâches.
Limites
- L’IA forte reste un mythe scientifique.
- Les approches symboliques des débuts échouaient face à la complexité et l’imprécision du monde réel.
2. IA prédictive
Définition
Une IA prédictive analyse des données passées pour estimer un résultat futur.
Fonctionnement
On entraîne un modèle à partir de données historiques. Le modèle apprend une relation entre des features (variables d’entrée) et une target (variable de sortie).
Une fois entraîné, le modèle peut estimer la sortie d’une nouvelle entrée.
Exemples concrets
- Banques : détection de fraude en temps réel à partir du comportement des transactions.
- E-commerce : prédire le “churn” (probabilité qu’un client parte).
- Industrie : maintenance prédictive d’une machine avant qu’elle tombe en panne.
💡 Exemple en Python : régression logistique avec Scikit-Learn
from sklearn.linear_model import LogisticRegression from sklearn.datasets import load_iris X, y = load_iris(return_X_y=True) model = LogisticRegression(max_iter=200) model.fit(X, y) print("Prédiction:", model.predict([X[0]]))
Ici, on entraîne une régression logistique sur le dataset Iris. Le modèle peut prédire la classe d’une fleur à partir de ses mesures.
Rôle dans l’IA
C’est l’un des premiers usages pratiques du machine learning. Il sert de base à de nombreux systèmes de décision dans les entreprises.
Limites
- Dépend des données passées → inefficace en cas de rupture (ex : pandémie, crise économique).
- Peut refléter les biais présents dans les données historiques.
3. IA générative
Définition
Une IA générative crée de nouveaux contenus (texte, image, son, code) à partir de données existantes.
Fonctionnement
Le modèle apprend la distribution des données (probabilités des séquences ou des pixels) et peut ensuite générer de nouvelles instances plausibles.
Exemple : un modèle de langage apprend la probabilité qu’un mot suive une séquence donnée, puis génère du texte mot par mot.
Exemples concrets
- ChatGPT : génération de texte (questions/réponses, rédaction, code).
- Stable Diffusion : génération d’images réalistes à partir de prompts textuels.
- GitHub Copilot : génération de code pour assister les développeurs.
💡 Exemple en Python : génération de texte avec Hugging Face
from transformers import pipeline generator = pipeline("text-generation", model="gpt2") print(generator("L'intelligence artificielle est", max_length=30, num_return_sequences=1))
Ici, on utilise GPT-2 pour générer une suite de texte à partir d’un début de phrase.
Rôle dans l’IA
Les modèles génératifs sont une rupture par rapport à l’IA prédictive : ils ne se contentent pas d’anticiper, ils créent.
C’est le fondement des LLM (Large Language Models) et des modèles de diffusion pour l’image.
Limites
- Peut produire des informations fausses (hallucinations).
- Hérite et amplifie les biais des données d’entraînement.
- Coût élevé en calcul et en énergie.
4. Machine Learning (ML)
Définition
Le Machine Learning (apprentissage automatique) est une sous-discipline de l’IA qui consiste à développer des algorithmes capables d’apprendre à partir des données au lieu d’être explicitement programmés.
Fonctionnement
- On collecte un dataset (ensemble de données).
- On choisit un algorithme (régression, arbre de décision, SVM, etc.).
- L’algorithme ajuste automatiquement ses paramètres en minimisant une fonction de coût.
- Le modèle entraîné peut ensuite prédire ou classer de nouvelles données.
Exemples concrets
- Netflix : recommandations personnalisées.
- Gmail : filtre de spam.
- Voitures autonomes : détection des piétons et panneaux.
Rôle dans l’IA
C’est la brique de base qui alimente la majorité des systèmes modernes. Presque tout ce qu’on appelle “IA” aujourd’hui est en fait du machine learning.
Limites
- Dépend fortement de la qualité et de la quantité des données.
- Peut sur-apprendre (overfitting) et perdre sa capacité de généralisation.
5. Artificial Neural Networks (ANN)
Définition
Un Artificial Neural Network (réseau de neurones artificiels) est un modèle inspiré du cerveau humain.
Il est constitué de couches de neurones artificiels, chaque neurone appliquant une transformation mathématique simple à ses entrées.
Fonctionnement
Chaque neurone effectue le calcul :
$$
y = f\left(\sum (w_i \cdot x_i) + b\right)
$$
où :
- $x_i$ = entrées,
- $w_i$ = poids associés,
- $b$ = biais,
- $f$ = fonction d’activation (sigmoïde, ReLU, tanh).
Les couches successives transforment les données de manière de plus en plus abstraite.
Exemples concrets
- Reconnaissance faciale : un CNN (Convolutional Neural Network, type particulier d’ANN) extrait des motifs visuels.
- Traduction automatique : des réseaux de neurones récurrents (RNN) ou Transformers traitent des séquences de mots.
Rôle dans l’IA
Les ANN ont révolutionné l’IA moderne grâce au deep learning : plus il y a de couches, plus le réseau peut apprendre des représentations complexes.
Limites
- Considérés comme une “boîte noire” difficile à interpréter.
- Très gourmands en données et en puissance de calcul.
- Risquent de reproduire les biais des données d’entraînement.
6. Les données
Définition
Les données sont le carburant de l’IA. Sans données, aucun modèle ne peut apprendre.
On distingue plusieurs types :
- Supervisées (labeled data) : chaque donnée est annotée avec la bonne réponse.
- Exemple : images de chiens et chats avec leur label.
- Non supervisées (unlabeled data) : données brutes, sans labels.
- Exemple : historiques de navigation web sans annotation.
- Semi-supervisées : un petit jeu de données annotées, le reste sans labels.
- Exemple : 1 000 images annotées sur 1 million d’images.
Fonctionnement
- Supervisé → apprentissage dirigé par les labels.
- Non supervisé → le modèle cherche des patterns cachés (clustering, réduction de dimension).
- Semi-supervisé → combiner le meilleur des deux mondes.
Exemples concrets
- Supervisé : reconnaissance d’écriture (MNIST).
- Non supervisé : segmentation de clients en marketing.
- Semi-supervisé : algorithmes modernes comme semi-supervised GANs.
Rôle dans l’IA
Les données déterminent ce que le modèle peut apprendre. Un mauvais dataset entraîne forcément un mauvais modèle (garbage in, garbage out).
Limites
- Annotation coûteuse et longue.
- Données souvent biaisées → risques éthiques.
- Problème de confidentialité et de protection des données personnelles.
7. Identifier des patterns
Classification
Définition
La classification est une tâche supervisée où l’algorithme apprend à attribuer une étiquette (classe) à une donnée en fonction de ses caractéristiques.
Fonctionnement
- Le modèle est entraîné sur un dataset annoté (features → labels).
- Pendant l’entraînement, il ajuste ses paramètres pour réduire l’erreur de prédiction.
- Une fois entraîné, il peut prédire la classe d’une donnée jamais vue.
Exemples concrets
- Email : spam ou non spam.
- Santé : prédire si une image médicale montre une tumeur bénigne ou maligne.
- Finance : approuver ou refuser une demande de crédit.
Rôle dans l’IA
C’est l’une des tâches les plus classiques et les plus utilisées du machine learning.
Limites
- Dépend fortement de la qualité des labels.
- Sensible aux déséquilibres de classes (ex : 99% “non spam”, 1% “spam”).
Clustering
Définition
Le clustering (ou regroupement) est une tâche non supervisée où l’algorithme regroupe les données en clusters (groupes) de points similaires.
Fonctionnement
- Les données ne sont pas annotées.
- L’algorithme calcule une mesure de similarité (souvent la distance euclidienne).
- Les points proches sont regroupés ensemble.
Exemples concrets
- Marketing : segmenter les clients selon leur comportement d’achat.
- Biologie : regrouper des espèces selon leurs caractéristiques génétiques.
- Recommandations : trouver des utilisateurs avec des goûts similaires.
Rôle dans l’IA
Utile pour explorer les données, détecter des motifs cachés et structurer des datasets.
Limites
- Le nombre de clusters ($k$) doit parfois être choisi à l’avance (k-means).
- Les résultats dépendent fortement de la mesure de similarité choisie.
Reinforcement Learning (RL)
Définition
Le Reinforcement Learning (apprentissage par renforcement) est un paradigme où un agent apprend en interagissant avec un environnement.
L’agent prend des actions et reçoit des récompenses en retour.
L’objectif est de maximiser les récompenses cumulées au fil du temps.
Concepts clés
- Agent : le système qui agit.
- Environnement : le monde avec lequel il interagit.
- État (state) : situation actuelle de l’agent.
- Action : choix de l’agent.
- Récompense (reward) : feedback positif ou négatif.
- Policy (politique) : stratégie de l’agent pour choisir ses actions.
Fonctionnement
- L’agent observe un état.
- Il choisit une action selon sa politique.
- L’environnement répond avec une récompense et un nouvel état.
- L’agent ajuste sa politique pour s’améliorer.
Exemples concrets
- Jeux : AlphaGo (DeepMind) qui a battu le champion du monde de Go.
- Robotique : apprentissage de la marche ou de la manipulation d’objets.
- Systèmes de recommandation : ajuster les suggestions selon le comportement utilisateur.
💡 Exemple en Python : Q-learning simplifié
import numpy as np Q = np.zeros((4, 2)) # 4 états, 2 actions possibles alpha, gamma, epsilon = 0.1, 0.9, 0.1 for episode in range(100): state = np.random.randint(0, 4) for step in range(10): # Choix action (exploration ou exploitation) if np.random.rand() < epsilon: action = np.random.randint(0, 2) else: action = np.argmax(Q[state]) reward = np.random.choice([-1, 1]) next_state = np.random.randint(0, 4) # Mise à jour de la Q-table Q[state, action] += alpha * (reward + gamma * np.max(Q[next_state]) - Q[state, action]) state = next_state print(Q)
Ici, l’agent explore différents états et ajuste sa table de valeurs (Q-table) pour améliorer ses décisions.
Rôle dans l’IA
Le RL est la clé des systèmes capables d’apprendre de manière autonome à partir de l’expérience.
Limites
- Besoin d’énormément d’interactions pour apprendre (coût élevé).
- Peut être instable dans des environnements complexes.
- Généralisation difficile : un agent performant dans un jeu peut échouer dans un autre.
8. Algorithmes classiques de Machine Learning
k-Nearest Neighbors (kNN)
Définition
kNN (k plus proches voisins) est un algorithme supervisé simple qui classe une nouvelle donnée en fonction des k données les plus proches dans l’espace des features.
Fonctionnement
- On choisit un nombre $k$ (par ex. 3).
- Pour une nouvelle donnée, on calcule sa distance par rapport à toutes les données du dataset (souvent distance euclidienne).
- On regarde les $k$ plus proches voisins.
- La donnée est classée selon la majorité des voisins (vote majoritaire).
Exemples concrets
- Reconnaissance de chiffres manuscrits (MNIST).
- Recommandations basées sur des utilisateurs similaires.
💡 Exemple en Python : kNN avec Scikit-Learn
from sklearn.neighbors import KNeighborsClassifier from sklearn.datasets import load_iris X, y = load_iris(return_X_y=True) model = KNeighborsClassifier(n_neighbors=3) model.fit(X, y) print("Prédiction:", model.predict([X[0]]))
Ici, le modèle prédit la classe d’une fleur en fonction de ses 3 voisines les plus proches.
Rôle dans l’IA
kNN est souvent utilisé comme algorithme de base (baseline) en machine learning.
Limites
- Très coûteux en calcul pour de grands datasets.
- Sensible au choix de $k$ et à l’échelle des features.
k-Means
Définition
k-Means est un algorithme non supervisé de clustering qui partitionne les données en $k$ groupes (clusters).
Fonctionnement
- On choisit $k$ (nombre de clusters).
- L’algorithme place aléatoirement $k$ centroïdes.
- Chaque point est assigné au centroïde le plus proche.
- Les centroïdes sont recalculés comme la moyenne des points assignés.
- On répète jusqu’à convergence.
Exemples concrets
- Marketing : segmentation de clients selon leur comportement.
- Traitement d’images : compression par regroupement des couleurs dominantes.
Rôle dans l’IA
Très utilisé pour l’analyse exploratoire de données.
Limites
- Nécessite de connaître $k$ à l’avance.
- Sensible aux valeurs initiales et aux outliers.
Régression
Régression linéaire
Définition
La régression linéaire prédit une valeur continue en ajustant une droite (ou un hyperplan) aux données.
Fonctionnement
On cherche une fonction :
$$
y = w \cdot x + b
$$
où $w$ est le poids (pente) et $b$ le biais (ordonnée à l’origine).
Exemples concrets
- Prédire le prix d’une maison en fonction de sa surface.
- Estimer la consommation énergétique selon la température.
Régression logistique
Définition
La régression logistique est utilisée pour des problèmes de classification binaire.
Elle utilise la fonction sigmoïde pour transformer une sortie continue en probabilité.
Fonctionnement
$$
P(y=1|x) = \frac{1}{1 + e^{-(w \cdot x + b)}}
$$
Exemples concrets
- Prédire si un client va résilier un abonnement (oui/non).
- Détection de spam dans les emails.
💡 Exemple en Python : régression logistique avec Scikit-Learn
from sklearn.linear_model import LogisticRegression from sklearn.datasets import load_iris X, y = load_iris(return_X_y=True) model = LogisticRegression(max_iter=200) model.fit(X, y) print("Prédiction:", model.predict([X[0]]))
Ici, on entraîne un modèle de régression logistique sur le dataset Iris.
Rôle dans l’IA
- La régression linéaire est une des méthodes les plus simples et les plus interprétables.
- La régression logistique est encore utilisée dans de nombreux systèmes industriels pour sa robustesse.
Limites
- Ne capture pas les relations non linéaires complexes.
- Moins performante que les modèles modernes pour des données massives.
Naïve Bayes
Définition
Naïve Bayes est un algorithme probabiliste basé sur le théorème de Bayes.
On l’appelle “naïf” car il suppose que toutes les features sont indépendantes, ce qui est rarement vrai dans la réalité.
Fonctionnement
Le théorème de Bayes :
$$
P(A|B) = \frac{P(B|A) \cdot P(A)}{P(B)}
$$
Dans le cas d’un classifieur, on calcule la probabilité qu’une donnée appartienne à une classe donnée, puis on choisit la classe la plus probable.
Exemples concrets
- Filtrage de spam.
- Analyse de sentiments dans les reviews de produits.
Rôle dans l’IA
Très efficace sur des petits datasets et pour des tâches de texte.
Limites
- Hypothèse d’indépendance souvent irréaliste.
- Moins performant que des modèles plus complexes (SVM, réseaux de neurones).
9. Concepts clés en Machine Learning
Biais et variance
Définition
Le biais et la variance sont deux sources d’erreur dans un modèle de machine learning. L’équilibre entre les deux est appelé dilemme biais-variance.
Fonctionnement
- Biais élevé : le modèle est trop simple → il ne capture pas la complexité des données (underfitting).
- Variance élevée : le modèle est trop complexe → il s’adapte trop aux données d’entraînement et généralise mal (overfitting).
Exemples concrets
- Biais élevé : utiliser une régression linéaire pour modéliser une relation clairement non linéaire.
- Variance élevée : un arbre de décision profond qui mémorise le dataset au lieu de généraliser.
Rôle dans l’IA
Aider à choisir le bon niveau de complexité du modèle.
Limites
Trouver le bon équilibre nécessite des techniques comme la validation croisée et la régularisation.
Poids et connexions
Définition
Dans un réseau de neurones artificiels, les poids sont les coefficients qui déterminent l’importance d’une entrée donnée.
Les connexions représentent les liens entre les neurones.
Fonctionnement
Un neurone calcule une somme pondérée de ses entrées :
$$
z = \sum (w_i \cdot x_i) + b
$$
où $w_i$ sont les poids et $b$ est le biais.
Puis il applique une fonction d’activation pour produire une sortie.
Exemple concret
- En reconnaissance d’images, certains neurones apprennent à activer fortement pour des formes simples (lignes, courbes), puis des formes plus complexes (yeux, visages).
Rôle dans l’IA
Les poids sont les paramètres ajustés pendant l’entraînement. Ce sont eux qui stockent la “connaissance” du modèle.
Limites
- Difficulté à interpréter ce que chaque poids représente dans les réseaux profonds.
- Grand nombre de paramètres → risque de sur-apprentissage.
Fonctions d’activation et biais
Définition
Les fonctions d’activation introduisent de la non-linéarité dans les réseaux de neurones, ce qui leur permet de modéliser des relations complexes.
Le biais est un terme ajouté pour décaler la fonction d’activation et améliorer la flexibilité du modèle.
Fonctionnement
Quelques fonctions d’activation courantes :
- Sigmoïde : $f(x) = \frac{1}{1+e^{-x}}$, utilisée pour des probabilités.
- tanh : $f(x) = \tanh(x)$, centrée sur zéro.
- ReLU (Rectified Linear Unit) : $f(x) = \max(0, x)$, très utilisée dans le deep learning.
Exemples concrets
- Sigmoïde : classification binaire.
- ReLU : couches cachées des CNN et Transformers modernes.
Rôle dans l’IA
Sans activation non linéaire, un réseau de neurones serait équivalent à une simple régression linéaire.
Limites
- Sigmoïde : problème de gradients qui disparaissent (vanishing gradient).
- ReLU : neurones “morts” quand l’entrée est négative.
Overfitting vs Underfitting
Définition
- Overfitting (sur-apprentissage) : le modèle apprend trop bien les données d’entraînement, y compris le bruit, et généralise mal.
- Underfitting (sous-apprentissage) : le modèle est trop simple et ne capture pas la structure des données.
Fonctionnement
- Overfitting → courbe d’erreur très basse sur les données d’entraînement mais élevée sur les données de test.
- Underfitting → erreurs élevées à la fois sur entraînement et test.
Exemples concrets
- Overfitting : un réseau de neurones entraîné trop longtemps sur un petit dataset.
- Underfitting : une régression linéaire essayant de prédire une courbe complexe.
Rôle dans l’IA
Ce concept est central pour évaluer la capacité de généralisation d’un modèle.
Solutions
- Contre l’overfitting : régularisation (L1/L2), dropout, plus de données.
- Contre l’underfitting : augmenter la complexité du modèle, entraîner plus longtemps.
Limites
Trouver le bon compromis demande expérimentation et validation.
10. Réseaux de neurones : concepts fondamentaux
Binary Classification avec ANN
Définition
La binary classification (classification binaire) consiste à prédire entre deux classes possibles (ex. oui/non, vrai/faux, chat/chien).
Un Artificial Neural Network (ANN) peut être utilisé pour ce type de tâche.
Fonctionnement
- Les données d’entrée passent par une ou plusieurs couches de neurones.
- Chaque neurone calcule une somme pondérée de ses entrées et applique une fonction d’activation.
- La couche de sortie utilise souvent une sigmoïde pour donner une probabilité entre 0 et 1.
- Selon un seuil (souvent 0.5), on attribue une classe.
Exemple concret
- Prédire si un email est spam ou non.
- Déterminer si une image médicale correspond à “malade” ou “sain”.
Rôle dans l’IA
C’est le cas d’usage le plus simple pour introduire les réseaux de neurones, souvent utilisé comme premier exercice pratique.
Limites
- Ne gère que deux classes.
- Pour des tâches plus complexes, on passe à la classification multi-classes.
Backpropagation
Définition
La backpropagation (rétropropagation) est l’algorithme qui permet aux réseaux de neurones d’apprendre en ajustant leurs poids à partir des erreurs de prédiction.
Fonctionnement détaillé
- Propagation avant (forward pass) : le réseau calcule une prédiction.
- Calcul de l’erreur : la différence entre la prédiction et la valeur réelle est mesurée par une fonction de coût.
- Propagation arrière (backward pass) : l’erreur est propagée en sens inverse dans le réseau grâce à la règle de la chaîne en calcul différentiel.
- Mise à jour des poids : chaque poids est ajusté pour réduire l’erreur, via un algorithme d’optimisation comme la descente de gradient.
Exemple concret
- Si un ANN prédit qu’un “8” est un “3” sur MNIST, la backpropagation calcule comment chaque neurone a contribué à l’erreur et ajuste les poids.
Rôle dans l’IA
Sans backpropagation, pas de deep learning moderne : CNN, RNN et Transformers reposent tous dessus.
Limites
- Peut souffrir du problème des gradients qui disparaissent (vanishing gradient).
- Demande beaucoup de puissance de calcul pour les réseaux profonds.
Gradient Descent
Définition
La descente de gradient est l’algorithme d’optimisation le plus utilisé pour entraîner les modèles.
Il ajuste les paramètres du modèle pour minimiser la fonction de coût.
Fonctionnement
- On calcule la dérivée de la fonction de coût par rapport aux paramètres.
- On ajuste les paramètres dans la direction opposée au gradient (car c’est la direction de la descente).
Formule :
$$
w = w - \alpha \cdot \frac{\partial L}{\partial w}
$$
où :
- $w$ = poids,
- $\alpha$ = learning rate (taux d’apprentissage),
- $\partial L/\partial w$ = dérivée de la fonction de coût par rapport au poids.
Exemple concret
- Dans une régression linéaire, la descente de gradient ajuste la pente de la droite pour minimiser l’erreur entre les prédictions et les vraies valeurs.
💡 Exemple en Python : descente de gradient simple
import numpy as np X = np.array([1, 2, 3, 4]) y = np.array([2, 4, 6, 8]) # vraie relation y = 2x w = 0.0 alpha = 0.01 for epoch in range(1000): y_pred = w * X error = y_pred - y grad = np.dot(error, X) / len(X) w -= alpha * grad print("Poids appris:", w)
Ici, le modèle apprend progressivement que $w \approx 2$, correspondant à la vraie relation.
Rôle dans l’IA
C’est l’outil qui permet à presque tous les modèles de machine learning de converger.
Limites
- Peut être très lent.
- Sensible au choix du learning rate.
- Peut se bloquer dans des minima locaux ou sur des plateaux.
Cost Functions
Définition
La fonction de coût (loss function) mesure l’écart entre la prédiction d’un modèle et la valeur réelle.
C’est l’objectif à minimiser pendant l’entraînement.
Exemples courants
- Erreur quadratique moyenne (MSE) : utilisée pour la régression.
$$ MSE = \frac{1}{n} \sum (y_{pred} - y_{true})^2 $$ - Entropie croisée (Cross-Entropy Loss) : utilisée pour la classification.
$$ L = - \sum y \cdot \log(y_{pred}) $$
Exemple concret
- Régression : prédire le prix d’une maison. La fonction de coût est la différence entre le prix réel et le prix prédit.
- Classification : prédire si un email est spam. La cross-entropy mesure à quel point les probabilités prédites sont proches des vraies étiquettes.
Rôle dans l’IA
La fonction de coût guide l’entraînement : sans elle, il n’y a pas de mesure de progrès.
Limites
- Choisir une mauvaise fonction de coût peut entraîner un mauvais apprentissage.
- Certaines fonctions sont sensibles aux valeurs extrêmes (outliers).
11. Construire un système d’IA : les étapes
Créer un système d’intelligence artificielle, ce n’est pas juste “entraîner un modèle”.
C’est un pipeline complet avec plusieurs étapes cruciales.
1. Collecte et préparation des données
Définition
Les données sont le carburant de l’IA. La première étape consiste à collecter, nettoyer et organiser les données.
Exemples concrets
- Un hôpital collecte des images médicales pour entraîner un modèle de détection de tumeurs.
- Une entreprise e-commerce utilise ses historiques de commandes pour entraîner un système de recommandations.
Limites
- Données bruitées ou incomplètes → le modèle apprend mal.
- Données biaisées → risque d’un modèle injuste.
2. Choix de l’algorithme
Définition
On sélectionne un algorithme adapté à la tâche (classification, régression, clustering, etc.).
Exemples concrets
- Classification binaire (spam ou non spam) → régression logistique, SVM, ou réseau de neurones simple.
- Clustering de clients → k-Means.
- Reconnaissance d’images → CNN (Convolutional Neural Networks).
Limites
- Un mauvais choix d’algorithme peut rendre l’entraînement inefficace.
- Parfois, tester plusieurs approches est nécessaire.
3. Entraînement du modèle
Définition
C’est la phase où l’algorithme apprend à partir des données. Les poids et paramètres sont ajustés pour minimiser la fonction de coût.
Exemples concrets
- Entraîner un ANN sur MNIST pour reconnaître les chiffres manuscrits.
- Former un modèle de régression pour prédire les ventes selon la saisonnalité.
Limites
- Peut prendre beaucoup de temps et de ressources (GPU, RAM).
- Risque de sur-apprentissage si le dataset est petit.
4. Évaluation du modèle
Définition
Évaluer le modèle avec des métriques adaptées permet de mesurer sa performance et sa capacité de généralisation.
Métriques courantes
- Précision (Accuracy) : proportion de prédictions correctes.
- Rappel (Recall) : capacité à identifier les cas positifs.
- F1-score : compromis entre précision et rappel.
- AUC-ROC : performance globale du modèle de classification.
Exemple concret
- Pour un modèle médical, un bon rappel (ne pas rater un cas positif) est souvent plus important que la précision.
Limites
- Une seule métrique peut être trompeuse.
- Choisir la bonne métrique dépend du contexte.
5. Déploiement et surveillance
Définition
Le modèle entraîné est intégré dans une application réelle (API, produit logiciel, robot, etc.) et doit être surveillé.
Exemples concrets
- Déployer un modèle de recommandation dans une app mobile.
- Intégrer un modèle de détection de fraude dans un système bancaire.
Surveillance
- Vérifier si les performances se dégradent avec le temps (concept drift).
- Réentraîner régulièrement le modèle avec de nouvelles données.
Limites
- Les modèles peuvent perdre en efficacité si les données réelles évoluent.
- Nécessité d’une infrastructure (serveurs, pipelines MLOps).
12. Self-Supervised Learning
Le self-supervised learning (apprentissage auto-supervisé) est une approche récente qui se situe entre l’apprentissage supervisé et non supervisé.
Elle permet d’utiliser de grandes quantités de données non annotées tout en générant automatiquement des pseudo-labels pour l’entraînement.
Définition
Au lieu de dépendre d’annotations humaines coûteuses, le modèle apprend à partir de tâches auxiliaires qu’il peut résoudre sans supervision humaine.
Ces tâches génèrent des signaux d’entraînement à partir des données elles-mêmes.
Fonctionnement
-
Création de pseudo-labels
Le modèle cache ou transforme une partie des données, puis doit prédire la partie manquante.
Exemple : masquer un mot dans une phrase et demander au modèle de le prédire. -
Entraînement sur la tâche auxiliaire
Le modèle apprend des représentations utiles en essayant de résoudre cette tâche artificielle. -
Transfert d’apprentissage
Une fois entraîné, le modèle peut être adapté à des tâches réelles (classification, traduction, détection d’objets, etc.).
Exemples concrets
-
NLP (traitement du langage naturel) :
- BERT (Google, 2018) a été entraîné à prédire des mots manquants dans des phrases.
- Cela a permis d’apprendre des représentations linguistiques très efficaces.
-
Vision par ordinateur :
- SimCLR (Google) apprend en comparant différentes vues d’une même image.
- L’idée est que deux versions augmentées de la même image doivent avoir des représentations proches.
-
Audio :
- Wav2Vec (Facebook AI) apprend à partir d’audio brut en masquant des parties du signal et en les reconstruisant.
Rôle dans l’IA
Le self-supervised learning est devenu le paradigme dominant pour entraîner des modèles sur des données massives.
C’est grâce à lui que l’on peut entraîner des foundation models (comme GPT, CLIP, BERT) sans nécessiter des milliards d’annotations humaines.
Limites
- Les tâches auxiliaires doivent être bien conçues : un mauvais choix → représentations peu utiles.
- Très coûteux en calcul : les foundation models demandent des milliers de GPU pendant des semaines.
- Encore difficile à appliquer efficacement dans certains domaines (ex. santé avec peu de données).
13. Foundation Models
Les foundation models sont une nouvelle catégorie de modèles d’IA introduite notamment par Stanford en 2021.
Ce sont des modèles de très grande taille, entraînés sur des données massives et diverses, qui servent de base pour de nombreuses tâches en aval (downstream tasks).
Définition
Un foundation model est un modèle généraliste pré-entraîné sur un large corpus de données (texte, image, audio, etc.), qui peut ensuite être adapté (fine-tuning) à des tâches spécifiques.
Exemple : GPT-3 (texte), CLIP (texte + image), BERT (NLP).
Fonctionnement
-
Pré-entraînement massif
- Le modèle est exposé à des milliards de données (texte web, images, code, etc.).
- Il apprend des représentations générales (ex : relations entre mots, concepts visuels).
-
Adaptation (fine-tuning)
- Une fois pré-entraîné, le modèle est spécialisé sur une tâche particulière avec beaucoup moins de données.
- Exemple : GPT-3 → adapté pour le code (Codex) ou la conversation (ChatGPT).
-
Prompting et zero-shot learning
- Ces modèles peuvent résoudre de nouvelles tâches simplement en recevant des instructions (prompts), sans réentraînement.
Exemples concrets
- NLP : GPT (OpenAI), BERT (Google), LLaMA (Meta).
- Vision : CLIP (OpenAI), DINO (Meta).
- Multimodal : Flamingo (DeepMind), Gemini (Google DeepMind).
Rôle dans l’IA
Les foundation models changent la manière de penser l’IA :
- Avant : un modèle spécifique par tâche (ex : un classifieur spam, un détecteur d’images).
- Maintenant : un seul modèle massif peut servir de base pour des dizaines de tâches différentes.
C’est ce qui a permis l’émergence des LLM (Large Language Models) et de l’IA générative moderne.
Limites
- Coût énorme : entraînement nécessitant des supercalculateurs (clusters GPU/TPU).
- Biais amplifiés : entraînés sur du web → reproduisent les biais et stéréotypes.
- Risque de dépendance : quelques grandes entreprises concentrent le savoir-faire et les ressources.
- Explicabilité faible : difficiles à interpréter à cause de leur taille.
14. LLM et Modèles de Diffusion
Large Language Models (LLM)
Définition
Les Large Language Models (LLM) sont des réseaux de neurones de très grande taille entraînés sur d’immenses corpus de texte pour prédire la probabilité des mots dans une séquence.
Ils sont au cœur des systèmes modernes comme GPT, LLaMA, Falcon ou Mistral.
Fonctionnement
- Pré-entraînement : le modèle lit des milliards de phrases et apprend les relations statistiques entre les mots.
- Architecture clé : les LLM reposent sur les Transformers (voir plus bas), qui utilisent l’auto-attention pour capturer le contexte.
- Génération : à partir d’un prompt, le modèle génère mot par mot (ou token par token), en choisissant la sortie la plus probable.
Exemples concrets
- ChatGPT : conversation en langage naturel.
- Copilot : génération de code.
- Bard/Gemini (Google) : assistants multimodaux.
Rôle dans l’IA
- Permettent une interaction en langage naturel avec les machines.
- Facilitent l’automatisation de tâches cognitives (rédaction, recherche, analyse de texte).
Limites
- Risque d’hallucinations (réponses fausses mais plausibles).
- Biais linguistiques liés aux données d’entraînement.
- Coût énorme en calcul et énergie.
Modèles de Diffusion
Définition
Les modèles de diffusion sont une famille de modèles génératifs utilisés surtout pour la création d’images (et plus récemment, audio et vidéo).
Exemples célèbres : Stable Diffusion, DALL·E, Imagen.
Fonctionnement
- Ajout de bruit : on corrompt progressivement une image en ajoutant du bruit gaussien.
- Apprentissage : le modèle apprend à inverser ce processus en retirant le bruit étape par étape.
- Génération : à partir d’un bruit aléatoire et d’un prompt textuel, le modèle reconstruit une image cohérente.
Exemples concrets
- Stable Diffusion : génération d’art réaliste ou stylisé à partir de prompts.
- MidJourney : génération artistique assistée par IA.
- Runway Gen-2 : création de vidéos à partir de descriptions textuelles.
Rôle dans l’IA
- Révolutionne la création artistique et multimédia.
- Utilisé en design, cinéma, jeux vidéo, prototypage produit.
Limites
- Génère parfois des images absurdes ou incohérentes.
- Risques éthiques : deepfakes, utilisation abusive d’images protégées.
- Coût computationnel élevé (même si optimisations récentes permettent le déploiement local).
15. Architectures génératives
Les architectures génératives sont les bases algorithmiques qui permettent aux modèles modernes de créer du contenu (texte, images, audio, vidéo).
Voici les principales : GAN, VAE et Transformers.
GAN (Generative Adversarial Networks)
Définition
Un GAN est composé de deux réseaux de neurones qui s’affrontent :
- Générateur (Generator) : crée de nouvelles données (images, sons, etc.).
- Discriminateur (Discriminator) : juge si les données sont réelles ou générées.
Fonctionnement
- Le générateur produit des exemples à partir de bruit aléatoire.
- Le discriminateur essaie de distinguer vrai (données du dataset) de faux (sortie du générateur).
- Les deux réseaux s’améliorent mutuellement grâce à cet entraînement compétitif.
Exemples concrets
- Génération d’images photoréalistes.
- Création de deepfakes.
- Amélioration d’images basse résolution (super-résolution).
Rôle dans l’IA
Les GAN ont marqué une étape clé dans la génération d’images réalistes.
Limites
- Instables à entraîner (le générateur ou le discriminateur peut “gagner” trop vite).
- Risques d’utilisation abusive (faux contenus).
VAE (Variational Autoencoders)
Définition
Un VAE est un autoencodeur probabiliste qui apprend à représenter les données dans un espace latent, puis à les reconstruire.
Fonctionnement
- Encodeur : compresse les données en une distribution latente (vecteur de variables latentes).
- Echantillonnage : on tire un échantillon de cet espace latent.
- Décodeur : reconstruit les données à partir de cet échantillon.
Exemples concrets
- Génération de visages réalistes (moins nets que les GAN).
- Génération de molécules pour la recherche pharmaceutique.
Rôle dans l’IA
Plus stables que les GAN, les VAE sont utiles pour explorer l’espace latent et générer des variations de données.
Limites
- Résultats souvent moins nets que ceux produits par des GAN.
Transformers
Définition
Les Transformers sont une architecture introduite par Google et l’Université de Toronto en 2017 dans l’article “Attention is All You Need”.
Ils ont révolutionné le deep learning, notamment dans le traitement du langage naturel.
Concept clé : l’attention
- L’attention permet au modèle de pondérer l’importance de chaque mot d’une séquence en fonction des autres.
- L’auto-attention permet de traiter des séquences entières en parallèle, contrairement aux RNN (qui traitaient séquence par séquence).
Fonctionnement
- Les mots sont transformés en vecteurs (embeddings).
- Le mécanisme d’auto-attention calcule des poids d’importance entre tous les mots.
- Des couches successives transforment ces représentations pour apprendre la structure du langage.
Exemples concrets
- BERT : pré-entraînement bidirectionnel sur de grandes quantités de texte.
- GPT : génération de texte fluide et cohérent.
- Vision Transformers (ViT) : traitement d’images comme des séquences de patches.
Rôle dans l’IA
Les Transformers sont la base des LLM modernes et des modèles multimodaux.
Limites
- Très coûteux en calcul et mémoire (difficulté à traiter des séquences très longues).
- Risque de biais amplifiés provenant des données d’entraînement.
16. Éthique et enjeux légaux
L’IA ne pose pas uniquement des défis techniques. Elle soulève aussi des questions éthiques, légales et sociétales qui deviennent centrales à mesure que son usage se généralise.
Biais et équité
Définition
Un modèle d’IA hérite des biais présents dans ses données d’entraînement.
Si les données reflètent des inégalités (genre, origine, classe sociale), le modèle risque de les reproduire ou même de les amplifier.
Exemples concrets
- Systèmes de recrutement qui discriminent indirectement certaines populations.
- Reconnaissance faciale moins précise pour certaines couleurs de peau.
Limites / enjeux
- Nécessité de diversifier les datasets.
- Importance de méthodes de détection et correction des biais.
Vie privée et protection des données
Définition
Les modèles d’IA ont souvent besoin de grandes quantités de données personnelles pour fonctionner (emails, photos, historique de navigation).
Cela pose la question de la confidentialité.
Exemples concrets
- Applications médicales utilisant des données sensibles de patients.
- Assistants vocaux enregistrant des conversations.
Limites / enjeux
- Conformité au RGPD (Règlement Général sur la Protection des Données) en Europe.
- Stockage et traitement sécurisés des données.
Propriété intellectuelle
Définition
Qui détient le contenu généré par une IA ? L’utilisateur, l’entreprise qui a développé le modèle, ou personne ?
Exemples concrets
- Images générées par Stable Diffusion utilisées commercialement.
- Musiques générées par IA posant problème avec les ayants droit.
Limites / enjeux
- Législation encore floue et variable selon les pays.
- Risque de litiges autour du droit d’auteur.
Impact sociétal
Définition
L’IA transforme en profondeur l’économie, le travail et la société.
Exemples concrets
- Automatisation de tâches → risque de disparition de certains emplois.
- Désinformation via deepfakes → perte de confiance dans les médias.
- Usage militaire de l’IA → questions de sécurité mondiale.
Limites / enjeux
- Nécessité de régulation.
- Débat éthique sur les usages acceptables ou non.
Conclusion
L’intelligence artificielle est un domaine vaste et en constante évolution.
Dans cet article, nous avons parcouru les bases fondamentales : de l’histoire de l’IA (forte vs faible), aux algorithmes classiques, jusqu’aux modèles modernes comme les LLM et les modèles de diffusion.
Comprendre ces briques permet de :
- faire le lien entre les concepts théoriques et leurs applications concrètes,
- saisir les limites techniques (données, biais, puissance de calcul),
- préparer le terrain pour construire ses propres systèmes IA.
Chaque concept présenté ici pourrait faire l’objet d’un article complet à lui seul. L’objectif de ce guide est d’offrir une vision d’ensemble solide, que nous allons approfondir pas à pas.
Pour la suite
Dans les prochains articles, je détaillerai :
- les CNN et RNN (réseaux spécialisés pour la vision et les séquences),
- les métriques d’évaluation plus avancées,
- l’infrastructure et le compute (GPU/TPU, MLOps),
- des cas concrets (systèmes de recommandation, NLP appliqué, Retrieval-Augmented Generation).
👉 Et pour ceux qui veulent aller plus loin dès maintenant, j’ai documenté comment monter son propre ChatGPT local et privé avec Ollama et une UI maison :
Lire l’article sur mon ChatGPT local
Références
Quelques sources incontournables pour creuser :
- Turing, A. M. (1950). Computing Machinery and Intelligence.
- McCarthy, J. et al. (1956). Dartmouth Summer Research Project on Artificial Intelligence.
- LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature.
- Vaswani, A. et al. (2017). Attention Is All You Need (Transformers).
- Kingma, D. P., & Welling, M. (2013). Auto-Encoding Variational Bayes (VAE).
- Goodfellow, I. et al. (2014). Generative Adversarial Nets (GAN).
- Devlin, J. et al. (2018). BERT: Pre-training of Deep Bidirectional Transformers.
- Radford, A. et al. (2019). Language Models are Unsupervised Multitask Learners (GPT-2).
- Ramesh, A. et al. (2021). Zero-Shot Text-to-Image Generation (DALL·E).
- Bommasani, R. et al. (2021). On the Opportunities and Risks of Foundation Models (Stanford).