Découvrez la puissance des réseaux résiduels (ResNet). Apprenez comment les connexions sautées résolvent le problème de la disparition du gradient afin de permettre l'apprentissage profond pour la vision par ordinateur.
Les réseaux résiduels, largement connus sous le nom de ResNets, sont un type spécifique d' architecture de réseau neuronal artificiel (ANN) conçu pour permettre l'entraînement de réseaux extrêmement profonds. Introduit par des chercheurs de Microsoft 2015, ResNet a résolu un goulot d'étranglement critique dans l'apprentissage profond connu sous le nom de problème du gradient disparaissant. Dans les réseaux traditionnels , l'ajout de couches supplémentaires entraînait souvent une saturation ou une dégradation des performances, car le signal nécessaire à la mise à jour des poids du modèle s'affaiblissait à mesure qu'il se propageait en arrière à travers les couches. ResNet a introduit les « connexions de saut » (ou connexions résiduelles), qui permettent aux données de contourner une ou plusieurs couches et de passer directement aux étapes de traitement suivantes. Cette innovation a prouvé que les réseaux plus profonds pouvaient être entraînés efficacement, ce qui a conduit à des avancées significatives dans le domaine de la vision par ordinateur (CV) et est devenu un concept fondamental pour les architectures modernes.
La caractéristique déterminante d'un ResNet est le « bloc résiduel ». Dans un réseau neuronal convolutif (CNN) standard, chaque couche tente d'apprendre un mappage direct de l'entrée vers la sortie. À mesure que les réseaux s'approfondissent, l'apprentissage de ce mappage direct devient de plus en plus difficile.
ResNet modifie cette approche en formulant différemment l'objectif d'apprentissage. Au lieu d'espérer que chaque pile de couches apprenne l'ensemble du mappage sous-jacent, le bloc résiduel oblige les couches à apprendre le « résidu » — ou la différence — entre l'entrée et la sortie souhaitée. L'entrée d'origine est ensuite rajoutée au résidu appris via une connexion de saut. Ce changement structurel implique que si un mappage d'identité (qui transmet l'entrée sans la modifier) est optimal, le réseau peut facilement apprendre à pousser les résidus à zéro. Cela rend les modèles d'apprentissage profond (DL) beaucoup plus faciles à optimiser, leur permettant de passer de dizaines à des centaines, voire des milliers de couches.
Depuis sa création, plusieurs variantes de ResNet sont devenues des références standard dans la communauté de l'IA.
La robustesse des architectures ResNet en a fait un choix incontournable pour un large éventail de tâches visuelles.
Il est utile de distinguer ResNet des autres architectures populaires afin de comprendre son utilité spécifique.
Les bibliothèques modernes d'apprentissage profond telles que PyTorch l'accès aux modèles ResNet pré-entraînés. Ces modèles sont précieux pour l'apprentissage par transfert, où un modèle entraîné sur un grand ensemble de données tel que ImageNet est affiné pour une tâche spécifique.
Python suivant montre comment charger un modèle ResNet-50 pré-entraîné à l'aide de
torchvision (qui fait partie de PyTorch ) et effectuer un simple passage en avant. Alors que les utilisateurs du
Plate-forme Ultralytics pourrait souvent utiliser
YOLO26 Pour la détection, il est essentiel de comprendre les concepts fondamentaux
tels que ResNet afin de permettre une personnalisation avancée.
import torch
import torchvision.models as models
# Load a pre-trained ResNet-50 model
resnet50 = models.resnet50(weights=models.ResNet50_Weights.DEFAULT)
resnet50.eval() # Set model to evaluation mode
# Create a dummy input tensor (batch_size, channels, height, width)
input_tensor = torch.randn(1, 3, 224, 224)
# Perform a forward pass to get predictions
with torch.no_grad():
output = resnet50(input_tensor)
print(f"Output shape: {output.shape}") # Expect [1, 1000] for ImageNet classes
Bien que les architectures plus récentes telles que YOLO26 utilisent des structures hautement optimisées pour une vitesse et une précision maximales, les principes de l'apprentissage résiduel restent omniprésents. Le concept de connexions sautées est désormais un composant standard dans de nombreux réseaux avancés, y compris les transformateurs utilisés dans le traitement du langage naturel (NLP) et les derniers modèles de détection d'objets. En permettant aux informations de circuler plus librement à travers le réseau, ResNet a ouvert la voie aux modèles profonds et complexes qui alimentent l'intelligence artificielle d'aujourd'hui.