YOLO-NAS
Tổng quan
Được phát triển bởi Deci AI , YOLO -NAS là một mô hình nền tảng phát hiện đối tượng mang tính đột phá. Đây là sản phẩm của công nghệ Tìm kiếm Kiến trúc Thần kinh tiên tiến, được thiết kế tỉ mỉ để giải quyết những hạn chế của các công nghệ trước đây YOLO mô hình. Với những cải tiến đáng kể trong hỗ trợ lượng tử hóa và sự đánh đổi độ chính xác - độ trễ, YOLO -NAS là bước tiến lớn trong việc phát hiện vật thể.
Tổng quan về YOLO-NAS. YOLO-NAS sử dụng các khối nhận biết lượng tử hóa và lượng tử hóa chọn lọc để có hiệu suất tối ưu. Mô hình, khi được chuyển đổi sang phiên bản lượng tử hóa INT8, trải qua sự sụt giảm độ chính xác tối thiểu, một cải tiến đáng kể so với các mô hình khác. Những tiến bộ này lên đến đỉnh điểm trong một kiến trúc vượt trội với khả năng phát hiện đối tượng chưa từng có và hiệu suất vượt trội.
Các tính năng chính
- Khối cơ bản thân thiện với lượng tử hóa: YOLO-NAS giới thiệu một khối cơ bản mới thân thiện với lượng tử hóa, giải quyết một trong những hạn chế đáng kể của trước đây YOLO Mô hình.
- Đào tạo và lượng tử hóa tinh vi: YOLO-NAS tận dụng các chương trình đào tạo tiên tiến và lượng tử hóa sau đào tạo để nâng cao hiệu suất.
- Tối ưu hóa AutoNAC và đào tạo trước: YOLO-NAS sử dụng tối ưu hóa AutoNAC và được đào tạo trước trên các bộ dữ liệu nổi bật như COCO, Objects365 và Roboflow 100. Việc đào tạo trước này làm cho nó cực kỳ phù hợp cho các nhiệm vụ phát hiện đối tượng xuôi dòng trong môi trường sản xuất.
Mô hình được đào tạo trước
Trải nghiệm sức mạnh của tính năng phát hiện đối tượng thế hệ tiếp theo với tính năng được đào tạo trước YOLO-Mô hình NAS được cung cấp bởi Ultralytics. Các mô hình này được thiết kế để mang lại hiệu suất hàng đầu về cả tốc độ và độ chính xác. Chọn từ nhiều tùy chọn phù hợp với nhu cầu cụ thể của bạn:
Mẫu | bản đồ | Độ trễ (ms) |
---|---|---|
YOLO-NAS S | 47.5 | 3.21 |
YOLO-NAS M | 51.55 | 5.85 |
YOLO-NAS L | 52.22 | 7.87 |
YOLO-NAS S INT-8 | 47.03 | 2.36 |
YOLO-NAS M INT-8 | 51.0 | 3.78 |
YOLO-NAS L INT-8 | 52.1 | 4.78 |
Mỗi biến thể mô hình được thiết kế để mang lại sự cân bằng giữa Độ chính xác trung bình (mAP) và độ trễ, giúp bạn tối ưu hóa tác vụ phát hiện đối tượng về cả hiệu suất và tốc độ.
Ví dụ sử dụng
Ultralytics đã thực hiện YOLO-Mô hình NAS dễ dàng tích hợp vào Python Các ứng dụng thông qua ultralytics
python gói. Gói này cung cấp một thân thiện với người dùng Python API để hợp lý hóa quy trình.
Các ví dụ sau đây cho thấy cách sử dụng YOLO-Mô hình NAS với ultralytics
Gói để suy luận và xác nhận:
Ví dụ về suy luận và xác thực
Trong ví dụ này, chúng tôi xác thực YOLO-NAS-s trên tập dữ liệu COCO8.
Ví dụ
Ví dụ này cung cấp mã suy luận và xác thực đơn giản cho YOLO-NAS. Để xử lý kết quả suy luận, hãy xem Dự đoán chế độ. Để sử dụng YOLO-NAS với các chế độ bổ sung xem Val và Xuất khẩu. YOLO-NAS trên ultralytics
Gói không hỗ trợ đào tạo.
PyTorch được đào tạo trước *.pt
Các tệp mô hình có thể được chuyển đến NAS()
lớp để tạo một thể hiện mô hình trong python:
from ultralytics import NAS
# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")
# Display model information (optional)
model.info()
# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")
# Run inference with the YOLO-NAS-s model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
CLI Các lệnh có sẵn để chạy trực tiếp các mô hình:
Các tác vụ và chế độ được hỗ trợ
Chúng tôi cung cấp ba biến thể của YOLO-Mô hình NAS: Nhỏ (s), Trung bình (m) và Lớn (l). Mỗi biến thể được thiết kế để phục vụ cho các nhu cầu tính toán và hiệu suất khác nhau:
- YOLONAS-s: Tối ưu hóa cho các môi trường nơi tài nguyên tính toán bị hạn chế nhưng hiệu quả là chìa khóa.
- YOLO -NAS-m : Cung cấp phương pháp cân bằng, phù hợp để phát hiện đối tượng mục đích chung với độ chính xác cao hơn.
- YOLONAS-l: Được thiết kế riêng cho các tình huống yêu cầu độ chính xác cao nhất, trong đó tài nguyên tính toán ít bị ràng buộc hơn.
Dưới đây là tổng quan chi tiết về từng kiểu máy, bao gồm các liên kết đến trọng lượng được đào tạo trước, các tác vụ chúng hỗ trợ và khả năng tương thích với các chế độ hoạt động khác nhau.
Loại mô hình | Trọng lượng được đào tạo trước | Các tác vụ được hỗ trợ | Suy luận | Xác nhận | Đào tạo | Xuất khẩu |
---|---|---|---|---|---|---|
YOLO-NAS-s | yolo_nas_s.pt | Phát hiện đối tượng | ✅ | ✅ | ❌ | ✅ |
YOLO-NAS-m | yolo_nas_m.pt | Phát hiện đối tượng | ✅ | ✅ | ❌ | ✅ |
YOLO-NAS-l | yolo_nas_l.pt | Phát hiện đối tượng | ✅ | ✅ | ❌ | ✅ |
Trích dẫn và xác nhận
Nếu bạn tuyển dụng YOLO-NAS trong công việc nghiên cứu hoặc phát triển của bạn, vui lòng trích dẫn SuperGradients:
@misc{supergradients,
doi = {10.5281/ZENODO.7789328},
url = {https://zenodo.org/record/7789328},
author = {Aharon, Shay and {Louis-Dupont} and {Ofri Masad} and Yurkova, Kate and {Lotem Fridman} and {Lkdci} and Khvedchenya, Eugene and Rubin, Ran and Bagrov, Natan and Tymchenko, Borys and Keren, Tomer and Zhilko, Alexander and {Eran-Deci}},
title = {Super-Gradients},
publisher = {GitHub},
journal = {GitHub repository},
year = {2021},
}
Chúng tôi bày tỏ lòng biết ơn của chúng tôi tới Deci AI nhóm SuperGradients vì những nỗ lực của họ trong việc tạo ra và duy trì nguồn tài nguyên có giá trị này cho cộng đồng thị giác máy tính . Chúng tôi tin rằng YOLO -NAS, với kiến trúc tiên tiến và khả năng phát hiện vật thể vượt trội, sẽ trở thành một công cụ quan trọng cho cả nhà phát triển và nhà nghiên cứu.
FAQ
Là gì YOLO-NAS và nó cải thiện như thế nào so với trước đây YOLO Mô hình?
YOLO-NAS, phát triển bởi Deci AI, là một mô hình phát hiện đối tượng hiện đại tận dụng công nghệ Tìm kiếm Kiến trúc Thần kinh (NAS) tiên tiến. Nó giải quyết những hạn chế của trước đây YOLO mô hình bằng cách giới thiệu các tính năng như khối cơ bản thân thiện với lượng tử hóa và các chương trình đào tạo tinh vi. Điều này dẫn đến những cải tiến đáng kể về hiệu suất, đặc biệt là trong các môi trường có tài nguyên tính toán hạn chế. YOLO-NAS cũng hỗ trợ lượng tử hóa, duy trì độ chính xác cao ngay cả khi chuyển đổi sang phiên bản INT8, tăng cường sự phù hợp với môi trường sản xuất. Để biết thêm chi tiết, hãy xem phần Tổng quan .
Làm thế nào tôi có thể tích hợp YOLO-Mô hình NAS vào của tôi Python ứng dụng?
Bạn có thể dễ dàng tích hợp YOLO-Mô hình NAS vào Python Ứng dụng sử dụng ultralytics
gói. Dưới đây là một ví dụ đơn giản về cách tải một pre-trained YOLO-Mô hình NAS và thực hiện suy luận:
from ultralytics import NAS
# Load a COCO-pretrained YOLO-NAS-s model
model = NAS("yolo_nas_s.pt")
# Validate the model on the COCO8 example dataset
results = model.val(data="coco8.yaml")
# Run inference with the YOLO-NAS-s model on the 'bus.jpg' image
results = model("path/to/bus.jpg")
Để biết thêm thông tin, hãy tham khảo Ví dụ về suy luận và xác thực.
Các tính năng chính của là gì YOLO-NAS và tại sao tôi nên cân nhắc sử dụng nó?
YOLONAS giới thiệu một số tính năng chính làm cho nó trở thành lựa chọn vượt trội cho các nhiệm vụ phát hiện đối tượng:
- Khối cơ bản thân thiện với lượng tử hóa: Kiến trúc nâng cao giúp cải thiện hiệu suất mô hình với độ chính xác tối thiểu sau khi lượng tử hóa.
- Đào tạo và lượng tử hóa tinh vi: Sử dụng các chương trình đào tạo tiên tiến và kỹ thuật lượng tử hóa sau đào tạo.
- Tối ưu hóa và đào tạo trước AutoNAC: Sử dụng tối ưu hóa AutoNAC và được đào tạo trước trên các tập dữ liệu nổi bật như COCO, Objects365 và Roboflow 100. Các tính năng này góp phần tạo nên độ chính xác cao, hiệu suất hiệu quả và tính phù hợp để triển khai trong môi trường sản xuất. Tìm hiểu thêm trong phần Tính năng chính .
Những tác vụ và chế độ nào được hỗ trợ bởi YOLO-Mô hình NAS?
YOLOCác mô hình NAS hỗ trợ các tác vụ và chế độ phát hiện đối tượng khác nhau như suy luận, xác nhận và xuất. Họ không hỗ trợ đào tạo. Các mô hình được hỗ trợ bao gồm: YOLO-NAS-s, YOLO-NAS-m, và YOLO-NAS-l, mỗi loại phù hợp với khả năng tính toán và nhu cầu hiệu suất khác nhau. Để biết tổng quan chi tiết, hãy tham khảo phần Tác vụ và Chế độ được hỗ trợ .
Có được đào tạo trước không YOLO-Các mô hình NAS có sẵn và làm cách nào để truy cập chúng?
Có Ultralytics Cung cấp đào tạo trước YOLO-Mô hình NAS mà bạn có thể truy cập trực tiếp. Các mô hình này được đào tạo trước trên các bộ dữ liệu như COCO, đảm bảo hiệu suất cao cả về tốc độ và độ chính xác. Bạn có thể tải xuống các mô hình này bằng cách sử dụng các liên kết được cung cấp trong phần Mô hình được đào tạo trước . Dưới đây là một số ví dụ: