Aller au contenu
English
English
MLOps medium

Deep learning : réseaux de neurones et différence avec le ML

8 min de lecture

Le deep learning (apprentissage profond) est une branche du machine learning qui utilise des réseaux de neurones artificiels à plusieurs couches pour apprendre directement à partir de données brutes comme des images, du son ou du texte. Là où le machine learning classique a besoin qu'on lui prépare les bonnes caractéristiques, le deep learning les découvre lui-même.

Ce guide définit le deep learning, explique comment fonctionne un réseau de neurones (perceptron, couches, fonction d'activation, rétropropagation), le distingue du machine learning classique, présente les grandes familles de réseaux et les frameworks. Il prolonge le hub Machine Learning.

  • Définir le deep learning et l'apprentissage profond.
  • Comprendre le fonctionnement d'un réseau de neurones.
  • Distinguer machine learning et deep learning, et savoir quand choisir l'un ou l'autre.
  • Reconnaître les familles CNN, RNN et transformers.
  • Situer les frameworks PyTorch, TensorFlow et Keras.

Le deep learning est un machine learning fondé sur des réseaux de neurones profonds, c'est-à-dire empilant de nombreuses couches. Chaque couche apprend une représentation de plus en plus abstraite : sur une image, les premières couches détectent des contours, les suivantes des formes, puis des objets entiers.

Sa force est de se passer du feature engineering manuel. Sur les données non structurées, images, audio et langage, il a pris une avance nette sur le machine learning classique. Le critère est le type de données, pas seulement leur volume : sur des tableaux, même très gros, les modèles classiques restent souvent aussi précis, moins coûteux et plus faciles à justifier. Sa contrepartie : il demande beaucoup de données, beaucoup de calcul (souvent des GPU) et reste difficile à expliquer.

Un réseau de neurones artificiel s'inspire de loin du cerveau. Son unité de base est le neurone (ou perceptron) : il reçoit des entrées, les multiplie par des poids, les additionne, puis passe le résultat dans une fonction d'activation qui décide de ce qui est transmis.

Ces neurones sont organisés en couches :

  • La couche d'entrée reçoit les données.
  • Les couches cachées transforment l'information, de plus en plus abstraite.
  • La couche de sortie produit la prédiction.

L'apprentissage suit toujours la même boucle, et la retenir suffit à lire n'importe quel code d'entraînement : les données entrent, traversent les couches, produisent une prédiction ; une fonction de perte chiffre l'écart avec la bonne réponse ; la rétropropagation remonte cet écart de la sortie vers l'entrée pour corriger les poids de chaque neurone. Répétée des milliers de fois, cette boucle fait converger le réseau vers un modèle performant.

Le deep learning n'est pas toujours le bon choix. Le tableau résume quand préférer l'un ou l'autre :

CritèreMachine learning classiqueDeep learning
DonnéesFonctionne avec peu de donnéesExige de grands volumes
Type de donnéesTabulaires (fichiers, bases)Images, son, texte
CaractéristiquesÀ préparer à la mainApprises automatiquement
CalculCPU suffisantGPU souvent nécessaire
ExplicabilitéPlus facileDifficile (boîte noire)

En pratique : pour des données tabulaires, un modèle classique comme une régression ou une forêt aléatoire est souvent aussi bon et bien plus simple. Le deep learning s'impose sur les données non structurées (vision, langage, audio).

Chaque type de données a ses architectures de prédilection. Les trois qui suivent sont les repères les plus utiles pour commencer, et elles se comprennent mieux dans l'ordre, la troisième répondant à une limite de la deuxième :

  • CNN (réseaux convolutifs) : spécialisés dans les images, ils détectent des motifs visuels locaux. Base de la vision par ordinateur.
  • RNN et LSTM : conçus pour les séquences (texte, séries temporelles, audio). Ils entretiennent un état caché, une mémoire transmise d'un pas de temps au suivant, qui se dilue à mesure que la séquence s'allonge : les dépendances longues finissent par leur échapper.
  • Transformers : plutôt que de transmettre un état de proche en proche, ils regardent la séquence entière d'un coup grâce au mécanisme d'attention, ce qui traite précisément le problème précédent. C'est l'architecture qui domine aujourd'hui le langage, socle des grands modèles de langage (LLM).

Ces trois familles ne forment pas une classification complète. Le domaine en compte beaucoup d'autres, chacune née d'un besoin particulier : les autoencodeurs pour compresser et débruiter, les réseaux de graphes pour des données reliées entre elles comme un réseau social, les modèles de diffusion derrière la génération d'images, ou les architectures à espace d'état pour les très longues séquences. Les trois ci-dessus suffisent à lire la littérature courante, pas à en faire le tour.

On ne code pas un réseau de neurones à la main : des frameworks gèrent les calculs et la rétropropagation.

  • PyTorch : le plus utilisé en recherche et de plus en plus en production, réputé pour sa souplesse. Voir le guide pratique pour entraîner un premier réseau de neurones.
  • TensorFlow : la solution de Google, robuste pour le déploiement à grande échelle.
  • Keras : une surcouche de haut niveau qui simplifie la construction de réseaux, intégrée à TensorFlow.

Pour débuter, l'essentiel est de bien maîtriser le machine learning classique et Python avant de plonger dans ces frameworks.

  1. Le deep learning est un ML fondé sur des réseaux de neurones profonds, qui apprennent les caractéristiques tout seuls.
  2. Un réseau de neurones combine des entrées pondérées via des couches et une fonction d'activation, et apprend par rétropropagation.
  3. ML classique pour les données tabulaires, deep learning pour images, son et texte.
  4. Trois familles parmi d'autres : CNN (images), RNN (séquences), transformers (langage), à côté des autoencodeurs, réseaux de graphes et modèles de diffusion.
  5. PyTorch et TensorFlow sont les frameworks de référence.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens ce site gratuitement, sans publicité, sans profilage et sans compte à créer. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn