YOLO Vision 2026:

YOLOX so với YOLOv5#

Việc lựa chọn đúng mô hình phát hiện đối tượng là một quyết định quan trọng quyết định sự thành công của bất kỳ dự án thị giác máy tính nào. Hướng dẫn này cung cấp một so sánh kỹ thuật toàn diện giữa hai mô hình cốt lõi trong bối cảnh AI: YOLOX của Megvii và Ultralytics YOLOv5. Bằng cách phân tích kiến trúc, các chỉ số hiệu năng và hệ sinh thái huấn luyện của chúng, chúng tôi nhằm mục đích giúp các nhà phát triển và nhà nghiên cứu đưa ra lựa chọn sáng suốt cho môi trường triển khai cụ thể của họ.

Giới thiệu về các Model#

Cả hai mô hình đều xuất hiện trong thời kỳ phát triển nhanh chóng của công nghệ phát hiện đối tượng theo thời gian thực, tuy nhiên chúng theo đuổi các triết lý kiến trúc khác nhau để đạt được hiệu suất của mình.

YOLOX: Cách tiếp cận không dùng anchor#

Được phát hành bởi các nhà nghiên cứu Zheng Ge, Songtao Liu, Feng Wang, Zeming Li và Jian Sun tại Megvii vào ngày 18 tháng 7 năm 2021, YOLOX đã giới thiệu một sự chuyển dịch đáng kể bằng cách rời xa các khung neo truyền thống. Được tài liệu hóa trong báo cáo kỹ thuật Arxiv của họ, YOLOX tích hợp thiết kế không neo với đầu ra phân tách và chiến lược gán nhãn SimOTA. Thiết kế này nhằm mục đích thu hẹp khoảng cách giữa nghiên cứu học thuật và ứng dụng công nghiệp, mang lại hiệu năng mạnh mẽ trên các tập dữ liệu tiêu chuẩn.

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

YOLOv5: Tiêu chuẩn cho AI thị giác trong sản xuất#

Được sáng lập bởi Glenn Jocher và phát hành bởi Ultralytics vào ngày 26 tháng 6 năm 2020, YOLOv5 nhanh chóng trở thành tiêu chuẩn công nghiệp cho thị giác máy tính được triển khai. Được xây dựng nguyên bản trên khung PyTorch, nó đã dân chủ hóa AI tối tân bằng cách mang lại tính dễ sử dụng chưa từng có, thời gian huấn luyện cực kỳ nhanh chóng và một kho mã được chăm chút kỹ lưỡng. Kiến trúc của YOLOv5 tập trung vào sự cân bằng hoàn hảo giữa tốc độ, độ chính xác và tính dễ triển khai, biến nó thành lựa chọn ưa chuộng cho mọi thứ từ các thiết bị biên đến các hệ thống triển khai đám mây quy mô lớn.

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

Sự khác biệt về kiến trúc#

Hiểu rõ sự khác biệt cốt lõi về cơ chế giữa các mạng này sẽ làm rõ lý do tại sao chúng hoạt động khác nhau trong các tác vụ khác nhau.

Không dùng Anchor so với dùng Anchor#

Sự tương phản rõ rệt nhất là cơ chế không dùng anchor của YOLOX. Các mô hình truyền thống như YOLOv5 dựa vào các anchor box được xác định trước để dự đoán BBox, đòi hỏi phân tích phân cụm trên tập dữ liệu huấn luyện để xác định kích thước anchor tối ưu. YOLOX loại bỏ điều này, dự đoán tọa độ BBox trực tiếp tại mỗi vị trí không gian. Mặc dù cách tiếp cận không dùng anchor làm giảm số lượng tham số thiết kế và việc điều chỉnh thủ công, cách tiếp cận dùng anchor tinh chỉnh của YOLOv5, được hỗ trợ bởi tính năng auto-anchor, đảm bảo quá trình huấn luyện hội tụ cực kỳ ổn định và có thể dự đoán được ngay từ đầu.

Decoupled Head so với Coupled Head#

YOLOX sử dụng decoupled head, nghĩa là các tác vụ phân loại và hồi quy được tách thành các nhánh mạng thần kinh riêng biệt. Các tác giả cho rằng điều này giải quyết các xung đột giữa việc học đặc trưng không gian và ngữ nghĩa. Ngược lại, YOLOv5 sử dụng coupled head được tối ưu hóa cao (trong các phiên bản trước đó) nhằm tối đa hóa hiệu suất tính toán và giảm độ trễ suy luận, điều này rất quan trọng cho điện toán biên theo thời gian thực.

Sự tiến hóa về kiến trúc

Trong khi YOLOX tiên phong cho đầu ra phân tách vào năm 2021, Ultralytics sau đó đã tiếp nhận và hoàn thiện các kiến trúc phân tách trong các mô hình tiếp theo như YOLOv8YOLO26 tiên tiến, kết hợp những điểm tốt nhất từ cả hai phía.

Chiến lược gán nhãn#

YOLOX sử dụng SimOTA cho việc gán nhãn, điều này mô hình hóa việc ghép cặp các đối tượng ground truth với các dự đoán như một bài toán vận tải tối ưu (Optimal Transport). Việc gán nhãn động này cải thiện khả năng xử lý trong các cảnh quay đông đúc. YOLOv5 sử dụng chiến lược gán nhãn dựa trên quy tắc hình dạng (shape-rule) mạnh mẽ, đảm bảo các mẫu dương chất lượng cao luôn được đưa vào hàm mất mát, điều này góp phần tạo nên sự ổn định huấn luyện huyền thoại của nó.

Hiệu năng và Benchmark#

Sự đánh đổi giữa tốc độ và độ chính xác là bài kiểm tra cuối cùng cho các kiến trúc này. Bảng dưới đây minh họa hiệu suất của các kích thước mô hình khác nhau trên các chuẩn benchmark tiêu chuẩn.

Mô hìnhkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
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
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

Mặc dù YOLOX đạt được điểm mAP cạnh tranh, đặc biệt là ở các biến thể lớn hơn, YOLOv5 vẫn duy trì ưu thế vượt trội về tốc độ suy luận TensorRT trên mọi mặt. Ví dụ, mô hình YOLOv5s cung cấp tỷ lệ tốc độ trên độ chính xác vượt trội, khiến nó trở nên rất đáng giá cho các ứng dụng thời gian thực nơi mà từng mili giây đều quan trọng.

Lợi thế của Ultralytics: Huấn luyện và khả năng sử dụng#

Khi chuyển từ nghiên cứu sang sản xuất, hệ sinh thái xung quanh một mô hình thường quan trọng ngang bằng với chính mô hình đó. Tại đây, những lợi thế của hệ sinh thái Ultralytics trở nên vô cùng rõ ràng.

Trải nghiệm người dùng được tối ưu hóa#

YOLOv5 được ca ngợi toàn cầu vì trải nghiệm nhà phát triển từ "số không đến chuyên gia". Python API của Ultralytics và CLI cho phép bạn tải, huấn luyện và triển khai các mô hình chỉ với các dòng mã đơn lẻ. Ngược lại, việc chạy YOLOX từ kho lưu trữ GitHub của Megvii đòi hỏi cấu hình thủ công nhiều hơn đối với các biến môi trường, thiết lập đường dẫn Python phức tạp và có đường cong học tập dốc hơn thường thấy ở các mã nguồn nghiên cứu học thuật.

Hiệu quả đào tạo và yêu cầu bộ nhớ#

Các mô hình Ultralytics được kỹ thuật hóa tỉ mỉ để giảm thiểu việc sử dụng bộ nhớ trong quá trình huấn luyện. YOLOv5 yêu cầu ít bộ nhớ CUDA hơn đáng kể so với các mô hình transformer có nhiều tham số như RT-DETR hoặc các mô hình nghiên cứu chưa được tối ưu hóa. Điều này cho phép các nhà phát triển huấn luyện các batch size lớn hơn trên phần cứng cấp độ người tiêu dùng, đẩy nhanh chu kỳ phát triển lặp đi lặp lại.

Tính linh hoạt giữa các tác vụ#

Trong khi YOLOX hoàn toàn là một khung phát triển đối tượng, hệ sinh thái Ultralytics đã tiến hóa YOLOv5 để hỗ trợ nhiều tác vụ thị giác. Ngay khi mở hộp, bạn có thể thực hiện Phân loại ảnh, Phân đoạn thực thể và phát hiện đối tượng bằng cách sử dụng chính xác cùng một cú pháp API.

Đổi mới liên tục

Nếu bạn yêu cầu các tác vụ nâng cao hơn nữa như Ước lượng tư thế hoặc phát hiện Hộp bao định hướng (OBB), chúng tôi đặc biệt khuyến nghị nâng cấp lên kiến trúc Ultralytics YOLO26 mới nhất, hỗ trợ nguyên bản tất cả các tính năng này với độ chính xác tối tân.

So sánh mã nguồn#

Sự khác biệt về khả năng sử dụng được thể hiện rõ nhất qua code.

Huấn luyện với YOLOv5:

from ultralytics import YOLO

# Load a pretrained YOLOv5s model
model = YOLO("yolov5su.pt")

# Run inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")

# Display results
results[0].show()

Huấn luyện với YOLOX: (Yêu cầu clone kho lưu trữ thủ công, cài đặt setup.py và các đối số CLI phức tạp)

# Example YOLOX training command
python tools/train.py -f exps/default/yolox_s.py -d 1 -b 64 --fp16 -o

Phương pháp tiếp cận của Ultralytics loại bỏ sự ma sát, cho phép bạn tập trung vào tập dữ liệu và logic ứng dụng của mình thay vì gỡ lỗi các tệp cấu hình. Hơn nữa, việc theo dõi các thử nghiệm của bạn trở nên liền mạch với các tích hợp sẵn có cho Weights & BiasesComet ML.

Các trường hợp sử dụng lý tưởng và ứng dụng thực tế#

Việc lựa chọn giữa các mô hình này phụ thuộc vào môi trường vận hành của dự án bạn.

Nơi YOLOX tỏa sáng#

YOLOX vẫn là một ứng cử viên mạnh mẽ trong các bối cảnh học thuật, nơi các nhà nghiên cứu đang nghiên cứu rõ ràng về các mô hình không dùng anchor hoặc các chiến lược gán nhãn. Nó cũng hữu ích trong các tình huống mà việc phát hiện trong các cảnh đông đúc là chỉ số quan trọng nhất và tốc độ triển khai trên thiết bị biên là thứ yếu.

Nơi YOLOv5 vượt trội#

YOLOv5 là nhà vô địch không thể tranh cãi về triển khai thực tế.

  • Sản xuất tốc độ cao: Đối với phát hiện lỗi sản phẩm trên dây chuyền lắp ráp, độ trễ suy luận tối thiểu của YOLOv5 trên GPU biên đảm bảo các sản phẩm được kiểm tra mà không làm chậm băng chuyền.
  • Hình ảnh máy bay không người lái và trên không: Dấu ấn bộ nhớ hiệu quả của nó cho phép nó chạy trên các máy tính đồng hành nhẹ trên máy bay không người lái cho các tác vụ như giám sát nông nghiệp và theo dõi động vật hoang dã.
  • Bán lẻ thông minh: Từ thanh toán tự động đến quản lý hàng tồn kho, YOLOv5 dễ dàng xuất sang TensorRTONNX để triển khai hàng loạt trên hàng nghìn camera cửa hàng.

Hướng tới tương lai: Lợi thế của YOLO26#

Mặc dù YOLOv5 là một mô hình huyền thoại, lĩnh vực AI đang tiến bộ nhanh chóng. Nếu bạn đang bắt đầu một dự án mới hôm nay, chúng tôi đặc biệt khuyên bạn nên xem xét thế hệ mô hình Ultralytics mới nhất.

Được phát hành vào năm 2026, Ultralytics YOLO26 đại diện cho một bước nhảy vọt lớn. Nó có Thiết kế đầu cuối không cần NMS, hoàn toàn loại bỏ nhu cầu xử lý hậu kỳ Non-Maximum Suppression, điều này giúp đơn giản hóa đáng kể logic triển khai. Bằng cách loại bỏ Distribution Focal Loss (DFL) và sử dụng Trình tối ưu hóa MuSGD tiên tiến, YOLO26 đạt được tốc độ suy luận CPU nhanh hơn tới 43% so với các thế hệ trước trong khi vẫn duy trì độ chính xác cao hơn, đặc biệt là trên các đối tượng nhỏ nhờ các hàm mất mát ProgLoss + STAL mới.

Cho dù bạn chọn độ tin cậy đã được kiểm chứng qua thời gian của YOLOv5 hay hiệu năng tiên tiến của YOLO26, Nền tảng Ultralytics đảm bảo bạn có các công cụ tốt nhất có sẵn để đưa các giải pháp thị giác máy tính của mình từ ý tưởng sang sản xuất một cách liền mạch. Hãy nhớ khám phá tài liệu Ultralytics toàn diện để mở khóa toàn bộ tiềm năng của đường ống AI của bạn.

Người đóng góp

Bình luận