Découvrez comment la recherche d'architecture neuronale (NAS) automatise la conception de réseaux neuronaux pour des performances optimisées dans la détection d'objets, l'IA, et plus encore.
Neural Architecture Search (NAS) is a sophisticated technique within the realm of Automated Machine Learning (AutoML) that automates the design of artificial neural networks. Traditionally, engineering high-performance deep learning (DL) architectures required extensive human expertise, intuition, and time-consuming trial-and-error. NAS replaces this manual process with algorithmic strategies that systematically explore a vast range of network topologies to discover the optimal structure for a specific task. By testing various combinations of layers and operations, NAS can identify architectures that significantly outperform human-designed models in terms of accuracy, computational efficiency, or inference speed.
The process of discovering a superior architecture generally involves three fundamental dimensions that interact to find the best neural network (NN):
NAS has become critical in industries where hardware constraints or performance requirements are strict, pushing the boundaries of computer vision (CV) and other AI domains.
Pour comprendre le rôle spécifique du NAS, il est utile de le distinguer d'autres techniques d'optimisation similaires :
Bien que l'exécution d'une recherche NAS complète nécessite d'importantes ressourcesGPU , les développeurs peuvent facilement utiliser des modèles qui ont été créés via NAS. Par exemple, l' architecture YOLO a été découverte en utilisant ces principes de recherche afin d'optimiser les tâches de détection d'objets.
Python suivant montre comment charger et utiliser un modèle NAS pré-recherché à l'aide de la fonction
ultralytics l'emballage :
from ultralytics import NAS
# Load a pre-trained YOLO-NAS model (architecture found via NAS)
# 'yolo_nas_s.pt' refers to the small version of the model
model = NAS("yolo_nas_s.pt")
# Run inference on an image to detect objects
# This utilizes the optimized architecture for fast detection
results = model("https://ultralytics.com/images/bus.jpg")
# Print the top detected class
print(f"Detected: {results[0].names[int(results[0].boxes.cls[0])]}")
For those looking to train state-of-the-art models without the complexity of NAS, the Ultralytics YOLO26 offers a highly optimized architecture out of the box, incorporating the latest advancements in research. You can easily manage datasets, training, and deployment for these models using the Ultralytics Platform, which simplifies the entire MLOps lifecycle.