Yolo Tầm nhìn Thâm Quyến
Thâm Quyến
Tham gia ngay
Bảng chú giải thuật ngữ

Tìm kiếm kiến trúc mạng nơ-ron (Neural Architecture Search - NAS)

Khám phá cách Tìm kiếm kiến trúc mạng nơ-ron (NAS) tự động hóa thiết kế mạng nơ-ron để tối ưu hóa hiệu suất trong phát hiện đối tượng, AI và hơn thế nữa.

Tìm kiếm Kiến trúc Nơ-ron (NAS) là một kỹ thuật tinh vi trong lĩnh vực Học máy Tự động (AutoML), giúp tự động hóa việc thiết kế mạng nơ-ron nhân tạo . Theo truyền thống, việc thiết kế các kiến trúc hiệu suất cao đòi hỏi chuyên môn sâu rộng về lĩnh vực và quá trình thử nghiệm thủ công rộng rãi. NAS cách mạng hóa quy trình này bằng cách sử dụng các thuật toán để khám phá một cách có hệ thống một số lượng lớn các cấu trúc mạng khả thi, tìm kiếm cấu trúc tối ưu giúp tối đa hóa các chỉ số hiệu suất như độ chính xác hoặc hiệu suất. Việc tự động hóa này không chỉ đẩy nhanh quá trình phát triển các mô hình học sâu mà còn dân chủ hóa việc tiếp cận AI tiên tiến bằng cách giảm sự phụ thuộc vào trực giác của con người trong thiết kế mạng.

Các thành phần cốt lõi của NAS

Quá trình NAS thường bao gồm ba khối xây dựng cơ bản hoạt động cùng nhau để khám phá ra kiến trúc mô hình tốt nhất:

  1. Không gian tìm kiếm : Phần này định nghĩa tập hợp tất cả các kiến trúc khả thi mà thuật toán có thể khám phá. Nó chỉ định các khối xây dựng cơ bản, chẳng hạn như loại lớp (ví dụ: tích chập , gộp), hàm kích hoạt và cách chúng có thể được kết nối. Một không gian tìm kiếm được thiết kế tốt là rất quan trọng vì nó hạn chế độ phức tạp và đảm bảo tính khả thi của các mô hình kết quả.
  2. Chiến lược tìm kiếm : Đây là phương pháp được sử dụng để điều hướng không gian tìm kiếm. Thay vì phương pháp brute-force, NAS sử dụng các chiến lược thông minh như học tăng cường , thuật toán tiến hóa hoặc các phương pháp dựa trên gradient (như DARTS ). Các chiến lược này hướng dẫn tìm kiếm đến các kiến trúc hứa hẹn hơn dựa trên phản hồi từ các lần lặp trước.
  3. Chiến lược ước tính hiệu suất : Việc đánh giá mọi kiến trúc ứng viên bằng cách huấn luyện từ đầu rất tốn kém về mặt tính toán. Để tăng tốc quá trình này, NAS sử dụng các chiến lược ước tính như chia sẻ trọng số, huấn luyện trên một tập hợp con dữ liệu hoặc huấn luyện với ít kỷ nguyên hơn. Điều này cho phép thuật toán nhanh chóng xếp hạng các ứng viên và tập trung nguồn lực vào các thiết kế triển vọng nhất.

Các Ứng dụng Thực tế

NAS đóng vai trò quan trọng trong việc tạo ra một số mô hình hiệu quả và mạnh mẽ nhất trong AI hiện đại.

  • Thị giác Máy tính : Trong các tác vụ như phát hiện đối tượngphân loại hình ảnh , NAS đã tạo ra các kiến trúc vượt trội hơn hẳn so với các kiến trúc do con người thiết kế. Dòng EfficientNet là một ví dụ điển hình, trong đó NAS được sử dụng để tìm kiếm một mạng lưới cơ sở, sau đó được mở rộng để đạt được độ chính xác tiên tiến với số lượng tham số ít hơn đáng kể. Tương tự, các mô hình như YOLO -NAS sử dụng các nguyên tắc này để tối ưu hóa cả tốc độ và độ chính xác.
  • Triển khai AI biên và Di động : NAS được sử dụng rộng rãi để thiết kế các mô hình nhẹ phù hợp với điện toán biên . Bằng cách tích hợp các hạn chế về phần cứng (như độ trễ và mức tiêu thụ điện năng) trực tiếp vào mục tiêu tìm kiếm, NAS có thể khám phá các kiến trúc chạy hiệu quả trên thiết bị di động mà không ảnh hưởng quá nhiều đến hiệu suất. Điều này rất quan trọng đối với các ứng dụng trong xe tự hành và IoT.

NAS so với Điều chỉnh siêu tham số

Điều quan trọng là phải phân biệt Tìm kiếm kiến trúc thần kinh với điều chỉnh siêu tham số , vì cả hai đều liên quan đến tối ưu hóa nhưng nhắm mục tiêu vào các khía cạnh khác nhau của mô hình.

  • Tìm kiếm kiến trúc nơ-ron (NAS) tập trung vào việc tìm kiếm cấu trúc tối ưu của chính mạng nơ-ron—xác định số lớp, loại hoạt động và kết nối giữa các nơ-ron.
  • Điều chỉnh siêu tham số tập trung vào việc tối ưu hóa các thiết lập cấu hình cho một kiến trúc cố định, chẳng hạn như tốc độ học , kích thước lô hoặc loại trình tối ưu hóa.

Trong khi NAS xây dựng cấu trúc "bộ não", thì việc điều chỉnh siêu tham số dạy cho bộ não cách học hiệu quả nhất. Cả hai thường được sử dụng song song trong một quy trình AutoML để đạt được kết quả tốt nhất có thể.

Sử dụng các mô hình có nguồn gốc từ NAS

Mặc dù việc chạy một quy trình NAS đầy đủ có thể tốn nhiều tài nguyên, nhưng các nhà phát triển có thể dễ dàng tận dụng các mô hình được đào tạo trước đã được phát hiện bằng NAS. Ultralytics thư viện hỗ trợ tải và chạy các kiến trúc được tối ưu hóa này, chẳng hạn như YOLO -NAS, cho phép người dùng hưởng lợi từ nghiên cứu NAS mà không cần đến tài nguyên tính toán để tự thực hiện tìm kiếm.

Ví dụ sau đây minh họa cách tải một mô hình bắt nguồn từ NAS bằng cách sử dụng Python :

from ultralytics import NAS

# Load a pre-trained YOLO-NAS model discovered via architecture search
model = NAS("yolo_nas_s.pt")

# Display the model's architecture information
model.info()

# Validate the model's performance on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Tham gia Ultralytics cộng đồng

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay