YOLOX và YOLOv7#
Sự phát triển của phát hiện đối tượng thời gian thực được thúc đẩy bởi những đột phá liên tục về kiến trúc. Hai cột mốc đáng chú ý trong hành trình này là YOLOX và YOLOv7. Được ra mắt cách nhau chưa đến một năm, cả hai model đều giới thiệu những phương pháp mới cho mô hình phát hiện đối tượng tiêu chuẩn, cải thiện đáng kể sự đánh đổi giữa tốc độ và độ chính xác.
Trang này cung cấp phân tích kỹ thuật chuyên sâu về YOLOX và YOLOv7, so sánh kiến trúc, chỉ số hiệu năng và các trường hợp sử dụng phù hợp của hai model để giúp nhà phát triển chọn công cụ thích hợp cho các ứng dụng thị giác máy tính.
YOLOX: Tiên phong trong phát hiện không anchor#
Được các nhà nghiên cứu tại Megvii giới thiệu vào tháng 7 năm 2021, YOLOX đánh dấu một bước chuyển lớn khi từ bỏ thiết kế dựa trên anchor truyền thống. Bằng 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, YOLOX đơn giản hóa detection head và cải thiện hiệu năng tổng thể.
Thông tin chính về model:
- Tác giả: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li và Jian Sun
- Tổ chức: Megvii
- Ngày: 2021-07-18
- Bài báo nghiên cứu: arXiv:2107.08430
- Mã nguồn: YOLOX của Megvii trên GitHub
- Tài liệu: Tài liệu YOLOX trên GitHub
Các cải tiến kiến trúc#
YOLOX giới thiệu phương pháp không anchor, giúp giảm đáng kể số lượng tham số thiết kế và việc tinh chỉnh theo heuristic cần thiết cho các dataset tùy chỉnh. Model triển khai head tách biệt, phân chia tác vụ phân loại và hồi quy, qua đó cải thiện tốc độ hội tụ và độ chính xác. Ngoài ra, YOLOX sử dụng các chiến lược tăng cường dữ liệu tiên tiến như MixUp và Mosaic để tăng độ bền vững của model.
Bằng cách loại bỏ anchor box, YOLOX giảm chi phí tính toán khi tính Intersection over Union (IoU) giữa dự đoán và ground truth trong quá trình huấn luyện, từ đó giảm yêu cầu CUDA memory và rút ngắn thời gian huấn luyện.
YOLOv7: Tập hợp các thủ thuật miễn phí có thể huấn luyện#
Được các nhà nghiên cứu tại Viện Khoa học Thông tin, Academia Sinica, Đài Loan ra mắt vào tháng 7 năm 2022, YOLOv7 tiếp tục mở rộng giới hạn của phát hiện đối tượng thời gian thực. Model giới thiệu khái niệm "bag-of-freebies có thể huấn luyện", thiết lập các benchmark tiên tiến nhất trên dataset MS COCO ngay khi ra mắt.
Thông tin chính về model:
- Tác giả: Chien-Yao Wang, Alexey Bochkovskiy và Hong-Yuan Mark Liao
- Tổ chức: Viện Khoa học Thông tin, Academia Sinica, Đài Loan
- Ngày: 2022-07-06
- Bài báo nghiên cứu: arXiv:2207.02696
- Mã nguồn: YOLOv7 của WongKinYiu trên GitHub
- Tài liệu: Tài liệu YOLOv7 của Ultralytics
Các cải tiến kiến trúc#
Kiến trúc YOLOv7 được xây dựng dựa trên Extended Efficient Layer Aggregation Network (E-ELAN), cho phép model liên tục học các đặc trưng đa dạng hơn mà không làm suy giảm đường truyền gradient. Hơn nữa, YOLOv7 sử dụng kỹ thuật tái tham số hóa model, cho phép đơn giản hóa các mạng huấn luyện nhiều nhánh phức tạp thành mạng một nhánh nhanh hơn trong quá trình suy luận.
So sánh hiệu năng#
Khi đánh giá các model này cho ứng dụng thực tế, việc hiểu hiệu năng ở các quy mô khác nhau là rất quan trọng. Bảng dưới đây so sánh các chỉ số tiêu chuẩn của nhiều kích thước YOLOX và YOLOv7.
| Model | kích thước (pixel) | mAPval 50-95 | Tốc độ CPU ONNX (ms) | Tốc độ T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Phân tích#
- Độ chính xác: YOLOv7 thường đạt mAP cao hơn các model YOLOX tương đương. Chẳng hạn, YOLOv7x đạt 53.1 mAP, so với 51.1 của YOLOXx.
- Tốc độ: Cả hai model đều được tối ưu hóa cao để chạy trên GPU bằng TensorRT, nhưng kiến trúc E-ELAN của YOLOv7 cho thông lượng nhỉnh hơn một chút trong các ứng dụng cao cấp, trong khi YOLOX duy trì độ trễ xuất sắc trên các thiết bị edge nhỏ hơn.
- Tính linh hoạt: YOLOv7 mở rộng khả năng vượt ra ngoài bounding box bằng cách cung cấp sẵn trọng số cho phân đoạn instance và ước tính tư thế, giúp model linh hoạt hơn repository YOLOX cơ bản.
Ứng dụng thực tế#
Việc lựa chọn giữa các model này thường phụ thuộc vào môi trường triển khai cụ thể của bạn.
Điện toán biên và IoT#
Với các thiết bị edge có tài nguyên hạn chế như Raspberry Pi hoặc bộ xử lý di động đời cũ, YOLOX-Nano và YOLOX-Tiny là những lựa chọn rất hấp dẫn. Số lượng tham số tối thiểu và kiến trúc không anchor giúp triển khai dễ dàng hơn trong môi trường tiêu thụ điện năng thấp cho các tác vụ như theo dõi chuyển động cơ bản hoặc ứng dụng chuông cửa thông minh.
Phân tích video độ trung thực cao#
Đối với việc xử lý luồng video độ phân giải cao trong phát hiện lỗi công nghiệp hoặc giám sát giao thông mật độ cao, YOLOv7 vượt trội hơn. Khả năng tổng hợp đặc trưng mạnh mẽ giúp model duy trì độ chính xác cao ngay cả khi đối tượng bị che khuất một phần hoặc có kích thước khác biệt lớn.
Trường hợp sử dụng và khuyến nghị#
Việc chọn YOLOX hay YOLOv7 phụ thuộc vào yêu cầu cụ thể của dự án, các ràng buộc triển khai và lựa chọn hệ sinh thái của bạn.
Khi nào nên chọn YOLOX#
YOLOX là lựa chọn phù hợp khi:
- Nghiên cứu phát hiện không anchor: Nghiên cứu học thuật sử dụng kiến trúc không anchor rõ ràng của YOLOX làm baseline để thử nghiệm các head phát hiện hoặc hàm loss 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 đời cũ, nơi kích thước cực nhỏ của biến thể YOLOX-Nano (0.91M tham số) là yếu tố then chốt.
- Nghiên cứu gán nhãn SimOTA: Các dự án nghiên cứu tìm hiểu chiến lược gán nhãn dựa trên vận tải tối ưu và ảnh hưởng của chúng đến quá trình hội tụ khi huấn luyện.
Khi nào nên chọn YOLOv7#
YOLOv7 được khuyến nghị cho:
- Benchmark học thuật: Tái tạo kết quả tiên tiến nhất thời kỳ năm 2022 hoặc nghiên cứu ảnh hưởng của E-ELAN và các kỹ thuật tập hợp kỹ thuật miễn phí có thể huấn luyện.
- Nghiên cứu tái tham số hóa: Khảo sát các phép tích chập được tái tham số hóa theo kế hoạch và chiến lược mở rộng model tổng hợp.
- Pipeline tùy chỉnh hiện có: Các dự án có pipeline được tùy chỉnh sâu dựa trên kiến trúc riêng của YOLOv7, khó tái cấu trúc.
Khi nào nên chọn Ultralytics (YOLO26)#
Với hầu hết dự án mới, Ultralytics YOLO26 mang đến sự kết hợp tốt nhất giữa hiệu năng và trải nghiệm dành cho nhà phát triển:
- Triển khai trên thiết bị biên không cần NMS: Các ứng dụng cần inference có độ trễ thấp và ổn định mà không phải xử lý hậu kỳ Non-Maximum Suppression phức tạp.
- Môi trường chỉ có CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ CPU inference nhanh hơn đến 43% của YOLO26 mang lại lợi thế rõ rệt.
- Phát hiện vật thể nhỏ: Các tình huống khó như ảnh chụp từ drone trên không hoặc phân tích cảm biến IoT, trong đó ProgLoss và STAL cải thiện đáng kể độ chính xác khi phát hiện vật thể rất nhỏ.
Lợi thế của Ultralytics#
Mặc dù YOLOX và YOLOv7 đều là các triển khai nghiên cứu mạnh mẽ, việc chuyển từ repository nghiên cứu sang môi trường production có khả năng mở rộng có thể rất khó khăn. Đây là lúc Ultralytics Platform phát huy thế mạnh.
Các model Ultralytics cung cấp Python API hợp nhất, biến việc huấn luyện, validation và triển khai model thành các tác vụ tinh gọn, tiêu chuẩn hóa. Bạn không còn phải đau đầu quản lý các dependency bên thứ ba phức tạp hoặc operator C++ tùy chỉnh thường thấy trong các kiến trúc cũ.
Ngoài ra, các model Ultralytics YOLO cần ít CUDA memory hơn đáng kể trong quá trình huấn luyện so với các detector dựa trên Transformer như RT-DETR. Nhờ đó, người thực hành có thể sử dụng batch size lớn hơn, giúp ổn định quá trình huấn luyện và tăng tốc hội tụ trên các dataset tùy chỉnh.
Ultralytics hỗ trợ sẵn việc export model sang các định dạng tiêu chuẩn ngành như ONNX, OpenVINO và CoreML chỉ với một đối số format, giúp đơn giản hóa đáng kể quy trình triển khai model.
Ví dụ mã: Huấn luyện với Ultralytics#
Gói Python của Ultralytics không hỗ trợ huấn luyện hoặc chạy trực tiếp checkpoint YOLOv7 .pt ( tài liệu YOLOv7 hướng dẫn cách chạy model ONNX hoặc TensorRT đã export), nhưng các kiến trúc mới hơn như YOLO26 có thể được tải, huấn luyện và chạy chỉ với vài dòng mã.
from ultralytics import YOLO
# Tải model YOLO26 đã pretrained
model = YOLO("yolo26n.pt")
# Huấn luyện model trên dataset tùy chỉnh (ví dụ: COCO8)
# API tự động xử lý việc tải dữ liệu, tăng cường dữ liệu và quản lý bộ nhớ
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Chạy inference trên ảnh kiểm thử
predictions = model("path/to/image.jpg")
predictions[0].show()Tương lai: Ultralytics YOLO26#
Dù YOLOv7 và YOLOX là những cột mốc lịch sử quan trọng, các model tiên tiến nhất thay đổi rất nhanh. Ra mắt vào tháng 1 năm 2026, Ultralytics YOLO26 giới thiệu các mô hình đột phá, vượt qua những model trước đó.
- Thiết kế end-to-end không cần NMS: Head one-to-one tùy chọn của YOLO26 (
nms=False) bỏ qua bước hậu xử lý Non-Maximum Suppression (NMS). Điều này giúp giảm đáng kể các nút thắt độ trễ và đảm bảo thời gian thực thi có tính xác định trên nhiều cấu hình phần cứng. - Suy luận CPU nhanh hơn tới 43%: Bằng cách loại bỏ Distribution Focal Loss (DFL) và tối ưu độ sâu mạng, YOLO26 được tinh chỉnh mạnh mẽ cho các thiết bị edge không có phần cứng GPU chuyên dụng.
- Optimizer MuSGD: Lấy cảm hứng từ các kỹ thuật huấn luyện LLM tiên tiến, optimizer MuSGD (kết hợp SGD và Muon) mang lại độ ổn định huấn luyện vượt trội và hội tụ nhanh hơn.
- Cải thiện phát hiện đối tượng nhỏ: Việc tích hợp các hàm loss ProgLoss + STAL giúp cải thiện đáng kể khả năng nhận diện các đối tượng nhỏ ở xa—điều thiết yếu cho lập bản đồ bằng drone và giám sát an ninh.
- Hỗ trợ tác vụ gốc: YOLO26 hỗ trợ toàn diện Bounding Box định hướng (OBB), phân đoạn instance và ước tính tư thế ngay trong cùng một API tinh gọn.
Với mọi nhà phát triển hiện đại bắt đầu dự án thị giác máy tính mới ngày nay, chúng tôi khuyến nghị Ultralytics YOLO26 trên Platform để đạt được sự cân bằng tốt nhất giữa tốc độ, độ chính xác và sự đơn giản khi triển khai. Với những ai nâng cấp từ các thế hệ trước như YOLO11 hoặc YOLOv8, quá trình chuyển đổi chỉ cần thay đổi chuỗi tên model, ngay lập tức mở khóa các năng lực vượt trội.