YOLO Vision 2026:

YOLOv9 so với YOLOX#

Lĩnh vực thị giác máy tính đã chứng kiến sự phát triển nhanh chóng trong các kiến trúc phát hiện đối tượng thời gian thực. Hướng dẫn này cung cấp một so sánh toàn diện giữa YOLOv9YOLOX, phân tích các đổi mới kiến trúc, các chỉ số hiệu suất và phương pháp huấn luyện của chúng. Cho dù bạn đang xây dựng các ứng dụng thông minh cho AI trong sản xuất hay khám phá mô hình dự đoán, việc hiểu rõ các mô hình này sẽ giúp bạn đưa ra các quyết định sáng suốt cho lần triển khai tiếp theo.

Cải tiến kiến trúc#

YOLOv9: Thông tin Gradient có thể lập trình#

YOLOv9 đã mang lại một sự thay đổi mô hình bằng cách giải quyết vấn đề nghẽn cổ chai thông tin vốn có trong các mạng thần kinh sâu. Các cải tiến cốt lõi của nó bao gồm Thông tin Gradient Lập trình được (PGI) và Mạng tổng hợp lớp hiệu quả tổng quát (GELAN).

  • Tác giả: Chien-Yao Wang và Hong-Yuan Mark Liao
  • Tổ chức: Viện Thông tin học, Academia Sinica, Đài Loan
  • Ngày: 21 tháng 2 năm 2024
  • Arxiv: 2402.13616
  • GitHub: WongKinYiu/yolov9

Bằng cách giữ lại dữ liệu đặc trưng quan trọng trong quá trình truyền tiến (feed-forward), YOLOv9 đảm bảo rằng các gradient được sử dụng để cập nhật trọng số trong quá trình lan truyền ngược (backpropagation) vẫn chính xác. Kiến trúc này xuất sắc trong việc trích xuất đặc trưng, giúp nó có khả năng phát hiện các đối tượng nhỏ trong các môi trường phức tạp, chẳng hạn như trong ảnh hàng không và các bản quét y tế chi tiết.

Tìm hiểu thêm về YOLOv9

YOLOX: Kết nối Nghiên cứu và Công nghiệp#

Được phát hành vào giữa năm 2021, YOLOX đã chuyển hướng dòng YOLO sang thiết kế không neo (anchor-free). Nó giới thiệu một đầu phân tách (decoupled head), giúp tách biệt các tác vụ phân loại và định vị, đồng thời sử dụng chiến lược gán nhãn SimOTA để cải thiện sự hội tụ khi đào tạo.

  • Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, và Jian Sun
  • Tổ chức: Megvii
  • Ngày công bố: 18 tháng 7 năm 2021
  • Arxiv: 2107.08430
  • GitHub: Megvii-BaseDetection/YOLOX

Mặc dù YOLOX mang tính cách mạng vào thời điểm đó, đạt được độ chính xác trung bình trung bình (mAP) xuất sắc và loại bỏ việc tinh chỉnh siêu tham số hộp neo (anchor box), kiến trúc nền tảng của nó kể từ đó đã bị vượt qua bởi các mạng hiện đại giúp cân bằng tốt hơn giữa số lượng tham số và khả năng giữ lại đặc trưng.

Tìm hiểu thêm về YOLOX

Sự tiến hóa không neo (Anchor-Free)

Cả YOLOX và các model Ultralytics mới hơn đều áp dụng các thiết kế không neo, giúp giảm bớt sự phức tạp của việc tinh chỉnh siêu tham số và cải thiện khả năng tổng quát hóa trên các tập dữ liệu đa dạng.

Phân tích Hiệu suất#

Khi so sánh các mô hình này trên benchmark MS COCO, những tiến bộ trong YOLOv9 trở nên rõ ràng. YOLOv9 liên tục đạt được sự đánh đổi tốt hơn giữa độ chính xác và FLOPs.

Mô hìnhkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Mặc dù YOLOX cung cấp các biến thể nhẹ như YOLOX-Nano cho các trường hợp biên cực đoan, các biến thể YOLOv9 liên tục vượt trội hơn các mô hình YOLOX có kích thước tương tự về mặt độ chính xác thuần túy. Ví dụ, YOLOv9m đạt mAP 51,4% so với 49,7% của YOLOXl, mặc dù có ít hơn một nửa số tham số (20,0M so với 54,2M).

Lợi thế từ Ultralytics#

Việc lựa chọn một mô hình liên quan đến nhiều thứ hơn là chỉ lý thuyết kiến trúc; hệ sinh thái xung quanh nó quyết định tốc độ phát triển và sự thành công trong triển khai. Sử dụng YOLOv9 trong hệ sinh thái Ultralytics mang lại sự dễ sử dụng chưa từng có và sự hỗ trợ cộng đồng mạnh mẽ.

Không giống như các kho lưu trữ nghiên cứu gốc cũ hơn, framework Ultralytics cung cấp một Python API thống nhất giúp đơn giản hóa các pipeline phức tạp. Việc huấn luyện đòi hỏi bộ nhớ GPU thấp hơn đáng kể so với nhiều lựa chọn thay thế, mang lại hiệu quả huấn luyện đáng kinh ngạc.

from ultralytics import YOLO

# Initialize the YOLOv9c model
model = YOLO("yolov9c.pt")

# Train the model on your custom dataset seamlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate the model's performance
metrics = model.val()

# Export the optimized model to TensorRT format
model.export(format="engine")

Với hỗ trợ tích hợp cho nhiều tác vụ, bao gồm phát hiện đối tượng, phân đoạn thực thểước lượng tư thế, bạn có thể nhanh chóng chuyển đổi các giải pháp thị giác máy tính của mình mà không cần thay đổi toàn bộ cơ mã nguồn.

Xuất model liền mạch

Triển khai ra biên (edge)? Ultralytics giúp bạn dễ dàng xuất các mô hình đã huấn luyện của mình sang các định dạng được tối ưu hóa cao như ONNX, TensorRT và OpenVINO chỉ với một lệnh duy nhất.

Ứng dụng trong thực tế#

Các thế mạnh cụ thể của những model này giúp chúng phù hợp với các ứng dụng thực tế riêng biệt:

Phân tích bán lẻ tốc độ cao#

Đối với các môi trường bán lẻ hiện đại đòi hỏi nhận dạng sản phẩm thời gian thực, YOLOv9 thể hiện sự xuất sắc. Khả năng giữ lại các chi tiết đặc trưng phức tạp của nó làm cho nó hoàn toàn phù hợp cho các triển khai AI trong bán lẻ nơi việc phân biệt giữa các sản phẩm có vẻ ngoài tương tự trên một kệ hàng đông đúc là cần thiết.

Triển khai Edge cũ#

Trong các kịch bản bị chi phối bởi các giới hạn phần cứng nghiêm ngặt hoặc các NPU chuyên dụng gặp khó khăn với các khối gộp mới hơn, YOLOX-Nano đôi khi có thể tìm thấy một chỗ đứng. Các mẫu tích chập (convolution) thuần túy, được tinh giản của nó đôi khi được ưu tiên cho các vi điều khiển bị hạn chế tài nguyên cực độ.

Robot tự hành#

Đối với điều hướng robot, việc bỏ sót các đối tượng nhỏ có thể thảm khốc. Kiến trúc GELAN trong YOLOv9 đảm bảo rằng các đặc trưng của các chướng ngại vật nhỏ, ở xa không bị mất đi trong các lớp sâu của mạng, vượt trội hơn các mô hình cũ trong các môi trường an toàn quan trọng như các ứng dụng AI trong ô tô.

Các trường hợp sử dụng và Khuyến nghị#

Việc lựa chọn giữa YOLOv9 và YOLOX phụ thuộc vào các yêu cầu dự án cụ thể, hạn chế triển khai và sở thích hệ sinh thái của bạn.

Khi nào nên chọn YOLOv9#

YOLOv9 là lựa chọn mạnh mẽ cho:

  • Nghiên cứu Nút thắt Thông tin (Information Bottleneck): Các dự án học thuật nghiên cứu về Programmable Gradient Information (PGI) và kiến trúc Generalized Efficient Layer Aggregation Network (GELAN).
  • Nghiên cứu Tối ưu hóa Luồng Gradient: Nghiên cứu tập trung vào việc hiểu và giảm thiểu tình trạng mất thông tin trong các lớp mạng sâu trong quá trình huấn luyện.
  • Đo lường Phát hiện Độ chính xác cao: Các kịch bản mà hiệu suất đo lường trên bộ dữ liệu COCO của YOLOv9 cần thiết làm điểm tham chiếu cho các so sánh kiến trúc.

Khi nào nên chọn YOLOX#

YOLOX được khuyến nghị cho:

  • Nghiên cứu Phát hiện Anchor-Free: Nghiên cứu học thuật sử dụng kiến trúc anchor-free sạch, gọn của YOLOX làm baseline để thử nghiệm với các head phát hiện hoặc hàm mất mát mới.
  • Thiết bị biên siêu nhẹ: Triển khai trên vi điều khiển hoặc phần cứng di động cũ nơi mà footprint cực nhỏ của biến thể YOLOX-Nano (0.91M tham số) là rất quan trọng.
  • Nghiên cứu Gán nhãn SimOTA: Các dự án nghiên cứu điều tra các chiến lược gán nhãn dựa trên vận chuyển tối ưu và tác động của chúng đến sự hội tụ trong đào tạo.

Khi nào nên chọn Ultralytics (YOLO26)#

Đối với hầu hết các dự án mới, Ultralytics YOLO26 mang lại sự kết hợp tốt nhất giữa hiệu suất và trải nghiệm của nhà phát triển:

  • Triển khai Edge không cần NMS: Các ứng dụng yêu cầu suy luận nhất quán, độ trễ thấp mà không có sự phức tạp của hậu xử lý Non-Maximum Suppression.
  • Môi trường chỉ dùng CPU: Các thiết bị không có tăng tốc GPU chuyên dụng, nơi suy luận CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
  • Phát hiện Vật thể Nhỏ: Các kịch bản thử thách như aerial drone imagery hoặc phân tích cảm biến IoT nơi ProgLoss và STAL cải thiện đáng kể độ chính xác trên các vật thể nhỏ xíu.

Tương lai: Chào đón YOLO26#

Mặc dù YOLOv9 đại diện cho một cột mốc ấn tượng, nhu cầu của môi trường sản xuất liên tục đẩy lùi các giới hạn. YOLO26 mới được phát hành đại diện cho tiêu chuẩn dứt khoát cho AI thị giác hiện đại.

YOLO26 hoàn toàn hồi sinh pipeline triển khai với Thiết kế không cần NMS từ đầu đến cuối (End-to-End NMS-Free Design) gốc. Bằng cách loại bỏ nhu cầu về Non-Maximum Suppression phức tạp trong quá trình hậu xử lý, nó mang lại độ trễ suy luận thấp hơn đáng kể.

Hơn nữa, YOLO26 tích hợp MuSGD Optimizer đột phá, một sự kết hợp giữa SGD và Muon, vay mượn những cải tiến từ việc đào tạo LLM để cung cấp khả năng hội tụ cực kỳ ổn định và nhanh chóng. Bằng cách loại bỏ Distribution Focal Loss (DFL), YOLO26 đạt được tốc độ suy luận CPU nhanh hơn tới 43% so với các phiên bản tiền nhiệm, khiến nó trở thành lựa chọn tuyệt đối tốt nhất cho các thiết bị biên và triển khai doanh nghiệp. Với những cải tiến đáng chú ý trong nhận dạng đối tượng nhỏ thông qua ProgLoss và STAL, YOLO26 thay thế hiệu quả cả YOLOX và YOLOv9.

Đối với các kỹ sư khám phá các kiến trúc hiện đại, chúng tôi cũng khuyên bạn nên kiểm tra YOLO11RT-DETR như các lựa chọn thay thế mạnh mẽ trong bộ công cụ Ultralytics. Đảm bảo dự án của bạn sẵn sàng cho tương lai bằng cách tận dụng hiệu suất chưa từng có của các mô hình mới nhất trên Ultralytics Platform.

Những người đóng góp

Bình luận