Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 23

Neural Networks: Pattern Recognition Powerhouses

Recommended resources

Bonjour !

Dans notre dernière leçon, nous avons exploré les arbres de décision et les forêts aléatoires, des modèles de Machine Learning très puissants qui excellent dans les tâches de prédiction comme le scoring de crédit, souvent au détriment de l'interprétabilité directe. Nous poursuivons aujourd'hui notre exploration des modèles prédictifs en abordant l'une des familles les plus emblématiques de l'intelligence artificielle : les réseaux de neurones.

L'objectif de cette leçon est de vous fournir une compréhension solide de la base conceptuelle des réseaux de neurones et de la raison pour laquelle ils sont si exceptionnellement doués pour la reconnaissance de formes (pattern recognition). Vous découvrirez que, malgré leur réputation de "boîtes noires", leurs principes fondamentaux sont une extension logique de concepts statistiques que vous maîtrisez déjà. Nous démystifierons leur structure, de la brique élémentaire (le neurone) à l'architecture complète, et nous verrons comment cette structure leur permet de modéliser des relations d'une complexité inaccessible aux modèles traditionnels.

1. La Brique Élémentaire : Le Neurone Artificiel

Commençons par une introduction rapide et générale. La vidéo suivante présente les concepts clés d'un réseau de neurones en moins de 5 minutes.

Neural Networks Explained in 5 minutes

Cette vidéo de IBM Technology, "Neural Networks Explained in 5 minutes", offre une excellente vue d'ensemble. Elle établit une analogie très utile entre un neurone artificiel et un modèle de régression linéaire, un point de départ parfait pour nous.

Regardez le début de la vidéo (00:00 - 02:54). Concentrez-vous sur la description des trois types de couches (entrée, cachée, sortie) et sur la manière dont un seul nœud (neurone) est présenté comme un modèle de régression linéaire avec des entrées, des poids, un biais et une sortie.

Comme vous l'avez vu, l'analogie avec le cerveau humain est surtout une inspiration historique. Mathématiquement, un neurone artificiel est un objet beaucoup plus simple.

Single Neuron Model and Mathematical Representation
Ce diagramme montre la structure d'un neurone artificiel. Il reçoit plusieurs entrées (P1 à PR), chacune multipliée par un poids (w). Ces produits sont additionnés, un biais (b) est ajouté, et le résultat passe par une fonction d'activation (f) pour produire la sortie (a).

Un neurone effectue deux opérations principales :

  1. Une combinaison linéaire : Il calcule une somme pondérée de ses entrées, à laquelle il ajoute un terme constant appelé biais. Si vous avez des entrées , des poids et un biais , le neurone calcule :

    Cette expression vous est sans doute familière. Elle est identique à la forme d'un modèle de régression linéaire, où les poids sont les coefficients et le biais est l'intercept .

  2. Une activation non linéaire : Le résultat est ensuite passé à travers une fonction d'activation . La sortie du neurone est donc . C'est cette étape qui est cruciale. Sans elle, un empilement de plusieurs couches de neurones se réduirait mathématiquement à une simple régression linéaire. La non-linéarité est ce qui donne aux réseaux de neurones leur puissance.

Pour approfondir ces concepts, le texte suivant offre une description mathématique claire.

7 Neural Network Foundations

Le chapitre "Neural Network Foundations" du livre en ligne "The Little Book of Deep Learning" formalise ces idées. Nous l'utiliserons comme référence technique tout au long de cette leçon.

Lisez les sections 7.1 ("What Is a Neural Network?") et 7.2 ("Units"). La section 7.1 définit formellement un neurone (appelé "unit") et l'architecture en couches. La section 7.2 présente les fonctions d'activation les plus courantes : Sigmoïde, Softmax et ReLU. Notez en particulier la fonction ReLU, qui est devenue la norme dans les réseaux modernes pour sa simplicité et son efficacité.

Les fonctions d'activation les plus classiques sont :

  • Sigmoïde : . Elle "écrase" n'importe quelle valeur réelle dans l'intervalle . Elle était très utilisée historiquement et est encore utile dans la couche de sortie pour les problèmes de classification binaire (car la sortie peut être interprétée comme une probabilité).
  • ReLU (Rectified Linear Unit) : . C'est la fonction d'activation la plus populaire aujourd'hui pour les couches cachées. Elle est très simple : elle retourne s'il est positif, et 0 sinon. Cette simplicité la rend très rapide à calculer et aide à atténuer certains problèmes lors de l'entraînement des réseaux profonds.

2. Du Neurone au Réseau : L'Architecture en Couches

Un seul neurone n'est pas très puissant. La magie opère lorsque l'on combine des milliers, voire des millions, de ces neurones en une structure organisée : un réseau.

Un réseau de neurones typique est structuré en couches :

  • Une couche d'entrée qui reçoit les données brutes (par exemple, les pixels d'une image, les prix d'une action, les caractéristiques d'un client).
  • Une ou plusieurs couches cachées qui effectuent la majorité du traitement. C'est là que les motifs complexes sont détectés.
  • Une couche de sortie qui produit le résultat final (par exemple, le chiffre identifié, la prédiction du prix, le score de crédit).

La vidéo suivante de 3Blue1Brown est l'une des meilleures visualisations de ce concept.

But what is a neural network? | Deep learning chapter 1

La vidéo "But what is a neural network?" est une référence pour l'intuition visuelle. Elle utilise l'exemple de la reconnaissance de chiffres manuscrits pour illustrer comment les couches collaborent pour reconnaître des formes complexes.

Regardez les deux segments suivants : Structure des couches (02:43 - 04:39) : Ce passage explique la composition du réseau : une couche d'entrée pour les pixels, des couches cachées, et une couche de sortie pour les chiffres de 0 à 9. Apprentissage hiérarchique (04:39 - 08:30) : C'est le passage le plus important. Il explique l'idée fondamentale de l'apprentissage hiérarchique des caractéristiques : la première couche cachée pourrait apprendre à détecter des petits bords, la seconde à assembler ces bords en formes (boucles, lignes), et la couche de sortie à reconnaître un chiffre à partir de ces formes.

Cette idée d'apprentissage hiérarchique est au cœur de la puissance des réseaux de neurones, en particulier des réseaux "profonds" (avec de nombreuses couches cachées). Chaque couche apprend à reconnaître des motifs de plus en plus abstraits en se basant sur les sorties de la couche précédente.

En finance, cela pourrait se traduire par :

  • Couche 1 : Détecte des micro-tendances dans les mouvements de prix sur quelques minutes.
  • Couche 2 : Combine ces micro-tendances pour identifier des indicateurs techniques simples (ex: un croisement de moyennes mobiles).
  • Couche 3 : Assemble ces indicateurs pour reconnaître des configurations graphiques complexes (ex: une figure "tête et épaules").
  • Couche de sortie : Émet une prédiction (ex: "acheter", "vendre") sur la base de la configuration reconnue.

3. La Force des Réseaux : Approximation Universelle et Apprentissage Automatique des Formes

Pourquoi cette structure est-elle si efficace ? Deux concepts clés l'expliquent.

a. Théorème d'Approximation Universelle

L'un des résultats théoriques les plus importants concernant les réseaux de neurones est le théorème d'approximation universelle. Il stipule qu'un réseau de neurones avec une seule couche cachée et une fonction d'activation non linéaire peut approximer n'importe quelle fonction continue avec la précision souhaitée, à condition d'avoir suffisamment de neurones dans cette couche.

C'est une affirmation extraordinairement puissante. Cela signifie que, en théorie, un réseau de neurones peut modéliser n'importe quelle relation entre des variables, aussi complexe et non linéaire soit-elle.

Le texte "Neural Network Foundations" propose une démonstration intuitive fascinante de ce théorème en utilisant des unités ReLU.

7 Neural Network Foundations

Pour comprendre intuitivement pourquoi les réseaux de neurones sont des approximateurs universels, nous allons explorer une section du texte de référence.

Lisez la section 7.3 ("Universal Approximation"). Ne vous attardez pas sur le code, mais concentrez-vous sur la logique : elle montre comment, en combinant astucieusement des fonctions ReLU (qui sont très simples), on peut construire des "rampes", puis des "marches" (fonctions indicatrices), et enfin une approximation de n'importe quelle fonction arbitraire en la découpant en une série de marches. C'est une illustration brillante de la puissance de la composition de fonctions non-linéaires simples.

b. Comparaison avec les Modèles Économétriques

Votre expertise en économétrie vous amène naturellement à modéliser la non-linéarité en ajoutant manuellement des termes polynomiaux ( , ...) ou des termes d'interaction ( ). L'avantage fondamental du réseau de neurones est qu'il apprend automatiquement la forme de la non-linéarité à partir des données, au lieu de vous obliger à la spécifier a priori.

Pour de nombreuses séries temporelles financières, qui présentent des comportements complexes et non stationnaires, les modèles économétriques linéaires (comme ARMA) ou même certains modèles non-linéaires (comme GARCH) peuvent être limités. Les réseaux de neurones offrent une alternative plus flexible.

Application of Artificial Neural Networks in Economic and ...

Cet article académique discute des applications des réseaux de neurones en économie et met en évidence leur supériorité pour modéliser des relations non linéaires complexes par rapport aux approches économétriques traditionnelles.

Lisez les sections 3 ("The reasons for using neural networks in different sciences") et 5 ("The superiority of the neural network method over other forecasting methods"). La section 3 résume leurs avantages, notamment la reconnaissance de motifs complexes. La section 5 compare directement les réseaux de neurones aux modèles de séries temporelles comme ARMA, ARCH et GARCH, un point qui devrait particulièrement résonner avec votre bagage.

Testez votre compréhension !

Un économiste souhaite modéliser la probabilité de défaut de crédit. Il utilise un modèle de régression logistique et, pour capturer les non-linéarités, il inclut l'âge au carré () et un terme d'interaction entre le revenu et le niveau d'éducation ().

En quoi l'approche d'un réseau de neurones serait-elle fondamentalement différente et potentiellement plus puissante ?

Voir la réponse

L'approche du réseau de neurones est différente car elle ne nécessite pas de spécifier manuellement les formes de non-linéarité.

  1. Découverte automatique des relations : L'économiste a dû supposer que la relation avec l'âge était quadratique et que l'interaction entre le revenu et l'éducation était importante. Le réseau de neurones, lui, n'a besoin que des variables brutes (âge, revenu, éducation). Pendant l'entraînement, il va apprendre par lui-même la forme optimale de la relation, qui pourrait être beaucoup plus complexe qu'une simple parabole ou une interaction multiplicative.

  2. Flexibilité : Le théorème d'approximation universelle garantit que le réseau a la capacité de modéliser presque n'importe quelle relation, même des effets de seuil abrupts ou des interactions d'ordre supérieur (entre 3 variables ou plus), qui sont très difficiles à spécifier manuellement dans un modèle de régression.

En résumé, l'économiste injecte ses hypothèses sur la non-linéarité dans le modèle, tandis que le réseau de neurones découvre ces non-linéarités directement à partir des données.


4. Comment un Réseau Apprend-il ? Un Aperçu du Processus d'Entraînement

Pour compléter ce tableau conceptuel, il est essentiel de comprendre, à un haut niveau, comment un réseau "apprend". Le processus, appelé entraînement, consiste à ajuster les millions de poids et de biais du réseau pour qu'il réalise correctement sa tâche.

L'entraînement suit un processus itératif :

  1. Définir une fonction de coût (Cost Function) : On définit une fonction qui mesure à quel point les prédictions du réseau sont erronées par rapport aux vraies valeurs. Dans le contexte de la régression, cela pourrait être l'erreur quadratique moyenne, un concept très similaire à la somme des carrés des résidus en OLS.
  2. Utiliser la descente de gradient (Gradient Descent) : L'objectif est de trouver les poids et les biais qui minimisent cette fonction de coût. La descente de gradient est un algorithme d'optimisation qui ajuste itérativement les paramètres dans la direction qui réduit le plus fortement l'erreur (c'est-à-dire dans la direction opposée du gradient de la fonction de coût).
  3. Calculer les gradients avec la rétropropagation (Backpropagation) : Le défi est de calculer le gradient de la fonction de coût par rapport à des millions de paramètres. La rétropropagation est l'algorithme qui permet de faire ce calcul de manière extraordinairement efficace. Il s'agit essentiellement d'une application astucieuse de la règle de dérivation en chaîne (chain rule) du calcul différentiel, qui propage l'erreur de la sortie vers l'entrée, couche par couche.

Le texte de référence explique ce dernier point de manière très claire.

7 Neural Network Foundations

La rétropropagation est souvent perçue comme un concept intimidant, mais son essence est simple : c'est la manière la plus efficace de calculer les gradients dans un réseau de neurones.

Lisez la section 7.5 ("Backpropagation"). L'idée principale est que le calcul des dérivées peut se faire dans deux sens (de l'entrée vers la sortie ou de la sortie vers l'entrée). Pour un réseau qui produit une seule sortie (le coût), il est beaucoup plus efficace de calculer les gradients en partant de la fin. C'est le principe de la "rétropropagation".


Conclusion

Dans cette leçon, nous avons posé les fondations conceptuelles des réseaux de neurones.

Points clés à retenir :

  • Un neurone artificiel est une unité de calcul simple qui effectue une combinaison linéaire de ses entrées suivie d'une activation non linéaire.
  • Les réseaux de neurones organisent ces neurones en couches, permettant un apprentissage hiérarchique où chaque couche détecte des motifs de plus en plus complexes.
  • Leur force réside dans leur capacité à fonctionner comme des approximateurs universels, capables de modéliser n'importe quelle relation non linéaire directement à partir des données.
  • L'entraînement se fait en minimisant une fonction de coût via la descente de gradient, où les gradients sont calculés efficacement grâce à la rétropropagation.

Maintenant que vous comprenez comment un réseau de neurones est structuré et pourquoi il est si puissant, nous sommes prêts à l'utiliser. Dans notre prochaine leçon, nous passerons à l'aspect pratique de l'évaluation des modèles de Machine Learning. Nous verrons comment, pour une tâche de classification comme le scoring de crédit, on peut évaluer la performance d'un modèle (qu'il s'agisse d'une régression logistique, d'une forêt aléatoire ou d'un réseau de neurones) à l'aide d'outils comme la matrice de confusion et des métriques telles que la précision et le rappel.