Yolo 비전 선전
선전
지금 참여하기
용어집

신경망 아키텍처 검색(NAS)

Learn how Neural Architecture Search (NAS) automates the design of high-performance neural networks. Explore search strategies and optimized models like YOLO26.

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.

Core Mechanisms of NAS

The process of discovering a superior architecture generally involves three fundamental dimensions that interact to find the best neural network (NN):

  1. Search Space: This defines the set of all possible architectures the algorithm can explore. It acts like a library of building blocks, such as convolution filters, pooling layers, and various activation functions. A well-defined search space constrains complexity to ensure the search remains computationally feasible while allowing enough flexibility for innovation.
  2. Search Strategy: Instead of testing every possibility (brute force), NAS employs intelligent algorithms to navigate the search space efficiently. Common approaches include reinforcement learning, where an agent learns to generate better architectures over time, and evolutionary algorithms, which mutate and combine top-performing models to breed superior candidates.
  3. Performance Estimation Strategy: Training every candidate network from scratch is prohibitively slow. To accelerate this, NAS uses estimation techniques—such as training on fewer epochs, using lower-resolution proxy datasets, or employing weight sharing—to quickly rank the potential of a candidate architecture.

실제 애플리케이션

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.

  • Efficient Edge Computing: Deploying AI on mobile devices requires models that are both lightweight and fast. NAS is extensively used to discover architectures like MobileNetV3 and EfficientNet that minimize inference latency while maintaining high precision. This is vital for edge AI applications, such as real-time video analytics on smart cameras or autonomous drones.
  • Medical Imaging: In medical image analysis, accuracy is paramount. NAS can tailor networks to detect subtle anomalies in X-rays or MRI scans, often finding novel feature extraction pathways that human engineers might overlook. This leads to more reliable tools for identifying conditions like brain tumors or fractures with higher sensitivity.

NAS 대 관련 개념

NAS의 구체적인 역할을 이해하기 위해서는 유사한 최적화 기법들과 구분하는 것이 도움이 됩니다:

  • NAS 대 하이퍼파라미터 튜닝: 둘 다 최적화를 포함하지만, 하이퍼파라미터 튜닝은 고정된 아키텍처에 대한 구성 설정( 학습률이나 배치 크기 등)을 조정하는 데 중점을 둡니다. 반면 NAS는 레이어 수나 뉴런 연결 방식과 같이 모델 자체의 근본적인 구조를 변경합니다.
  • NAS 대 전이 학습: 전이 학습은 기존에 사전 훈련된 모델을 가져와 새로운 작업에 맞게 가중치를 조정합니다. NAS는 훈련 시작 전에 모델 아키텍처를 처음부터 생성하거나 더 나은 백본을 탐색합니다.

NAS 기반 모델 활용

전체 NAS 검색을 실행하려면 상당한 GPU 자원이 필요하지만, 개발자는 NAS를 통해 생성된 모델을 쉽게 활용할 수 있습니다. 예를 들어, YOLO 아키텍처는 객체 탐지 작업을 최적화하기 위해 이러한 검색 원칙을 활용하여 발견되었습니다.

다음 Python 사전 검색된 NAS 모델을 로드하고 사용하는 방법을 보여줍니다. ultralytics 패키지입니다:

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.

Ultralytics 커뮤니티 가입

AI의 미래에 동참하세요. 글로벌 혁신가들과 연결하고, 협력하고, 성장하세요.

지금 참여하기