Link to this sectionSo sánh YOLOX và YOLOv7#
Sự phát triển của object detection 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 quan trọng trong hành trình này là YOLOX và YOLOv7. Được phát hành trong vòng một năm của nhau, cả hai model đều giới thiệu những cách tiếp cận mới cho mô hình object detection tiêu chuẩn, cải thiện đáng kể sự đánh đổi giữa tốc độ và accuracy.
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, các chỉ số hiệu suất và các trường hợp sử dụng lý tưởng để giúp các nhà phát triển chọn công cụ phù hợp cho việc triển khai thị giác máy tính của họ.
Link to this sectionYOLOX: Tiên phong trong Detection không dù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 đại diện cho một bước chuyển mình lớn bằng cách rời bỏ các thiết kế anchor-based 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 suất tổng thể.
Chi tiết chính về mô hình:
- 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: Megvii YOLOX GitHub
- Tài liệu: Tài liệu GitHub YOLOX
Link to this sectionCải tiến kiến trúc#
YOLOX giới thiệu cách tiếp cận anchor-free, giúp giảm đáng kể số lượng tham số thiết kế và việc tinh chỉnh heuristic cần thiết cho các tập dữ liệu tùy chỉnh. Nó triển khai decoupled head, tách biệt các tác vụ phân loại và hồi quy, giúp cải thiện tốc độ hội tụ và độ chính xác. Ngoài ra, YOLOX còn sử dụng các chiến lược data augmentation nâng cao như MixUp và Mosaic để tăng cường độ mạnh mẽ cho model.
Bằng cách loại bỏ anchor box, YOLOX giảm tải tính toán khi tính toán Intersection over Union (IoU) giữa dự đoán và ground truth trong quá trình training, giúp giảm yêu cầu về CUDA memory và thời gian training nhanh hơn.
Link to this sectionYOLOv7: Trainable Bag-of-Freebies#
Được phát hành vào tháng 7 năm 2022 bởi các nhà nghiên cứu tại Viện Khoa học Thông tin, Academia Sinica, Đài Loan, YOLOv7 đã đẩy giới hạn của object detection thời gian thực đi xa hơn. Nó giới thiệu khái niệm "trainable bag-of-freebies," thiết lập các tiêu chuẩn state-of-the-art mới trên tập dữ liệu MS COCO khi ra mắt.
Chi tiết chính về mô hình:
- Tác giả: Chien-Yao Wang, Alexey Bochkovskiy và Hong-Yuan Mark Liao
- Tổ chức: Viện Thông tin học, Academia Sinica, Đài Loan
- Ngày: 2022-07-06
- Bài báo nghiên cứu: arXiv:2207.02696
- Mã nguồn: WongKinYiu YOLOv7 GitHub
- Tài liệu: Ultralytics YOLOv7 Docs
Link to this sectionCải tiến kiến trúc#
Kiến trúc của 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 dẫn gradient. Hơn nữa, YOLOv7 sử dụng kỹ thuật re-parameterization, cho phép các mạng training đa nhánh phức tạp được đơn giản hóa thành các mạng đơn nhánh nhanh hơn trong quá trình inference.
Link to this sectionSo sánh hiệu năng#
Khi đánh giá các model này cho các ứng dụng thực tế, việc hiểu rõ hiệu suất của chúng trên 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 cho nhiều kích thước khác nhau của YOLOX và YOLOv7.
| Mô hình | 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 |
Link to this sectionPhân tích#
- Độ chính xác: YOLOv7 thường đạt được mAP cao hơn so với các model YOLOX tương đương. Ví dụ, YOLOv7x đạt 53.1 mAP so với 51.1 của YOLOXx.
- Tốc độ: Mặc dù cả hai model đều được tối ưu hóa cao cho thực thi GPU bằng TensorRT, kiến trúc E-ELAN của YOLOv7 cung cấp thông lượng tốt hơn một chút cho các ứng dụng cao cấp, mặc dù YOLOX vẫn duy trì độ trễ tuyệt vời trên các thiết bị edge nhỏ gọn.
- Tính linh hoạt: YOLOv7 đã mở rộng phạm vi ngoài bounding box bằng cách cung cấp sẵn trọng số cho instance segmentation và pose estimation, giúp nó linh hoạt hơn so với repository YOLOX cơ bản.
Link to this sectionỨng dụng trong 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.
Link to this sectionĐiện toán biên và IoT#
Đối với các thiết bị edge bị giới hạn như Raspberry Pi hoặc các bộ vi xử lý di động cũ hơn, YOLOX-Nano và YOLOX-Tiny rất hấp dẫn. Số lượng tham số tối thiểu và tính chất anchor-free giúp chúng dễ triển khai hơn trong các 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.
Link to this sectionPhân tích video độ trung thực cao#
Để xử lý các luồng dữ liệu độ 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 dày đặc, YOLOv7 vượt trội hơn. Khả năng tổng hợp đặc trưng mạnh mẽ cho phép nó duy trì độ chính xác cao ngay cả khi các đối tượng bị che khuất một phần hoặc thay đổi lớn về quy mô.
Link to this sectionCác trường hợp sử dụng và Khuyến nghị#
Việc lựa chọn giữa YOLOX và YOLOv7 phụ thuộc vào yêu cầu dự án cụ thể, các hạn chế triển khai và tùy chọn hệ sinh thái của bạn.
Link to this sectionKhi nào nên chọn YOLOX#
YOLOX là lựa chọn mạnh mẽ 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.
Link to this sectionKhi nào nên chọn YOLOv7#
YOLOv7 được khuyến nghị cho:
- Academic Benchmarking: Tái tạo các kết quả state-of-the-art của kỷ nguyên 2022 hoặc nghiên cứu các hiệu ứng của kỹ thuật E-ELAN và trainable bag-of-freebies.
- Nghiên cứu về Reparameterization: Khám phá các convolution được lập kế hoạch tái tham số hóa và các chiến lược compound model scaling.
- Các pipeline tùy chỉnh hiện có: Các dự án với các pipeline tùy chỉnh nặng nề được xây dựng dựa trên kiến trúc cụ thể của YOLOv7 mà không thể dễ dàng tái cấu trúc.
Link to this sectionKhi nào nên chọn Ultralytics (YOLO26)#
Đối với hầu hết các dự án mới, Ultralytics YOLO26 cung cấp sự kết hợp tốt nhất giữa hiệu năng và trải nghiệm 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 đầy thách thức như hình ảnh máy bay không người lái trên không hoặc phân tích cảm biến IoT, nơi ProgLoss và STAL tăng cường đáng kể độ chính xác trên các vật thể cực nhỏ.
Link to this sectionLợi thế từ Ultralytics#
Trong khi cả 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ó thể rất khó khăn. Đây là lúc Ultralytics Platform tỏa sáng.
Các model Ultralytics cung cấp Python API thống nhất, xử lý việc training, validation và triển khai model như các tác vụ được sắp xếp hợp lý và chuẩn hóa. Bạn tránh được sự đau đầu khi phải quản lý các phụ thuộc bên thứ ba phức tạp hoặc các toán tử C++ tùy chỉnh vốn phổ biến ở các kiến trúc cũ hơn.
Furthermore, Ultralytics YOLO models require significantly less CUDA memory during training compared to transformer-based detectors like RT-DETR. This allows practitioners to utilize larger batch sizes, stabilizing training and accelerating convergence on custom datasets.
Ultralytics hỗ trợ xuất model sang các định dạng tiêu chuẩn công nghiệp như ONNX, OpenVINO và CoreML chỉ với một cờ boolean đơn giản, giúp đơn giản hóa đáng kể model deployment process.
Link to this sectionVí dụ mã: Training với Ultralytics#
Hệ sinh thái Ultralytics cho phép bạn dễ dàng load, train và chạy inference bằng cách sử dụng YOLOv7 hoặc các kiến trúc mới hơn chỉ với vài dòng mã.
from ultralytics import YOLO
# Load a pre-trained YOLOv7 model
model = YOLO("yolov7.pt")
# Train the model on a custom dataset (e.g., COCO8)
# The API handles data loading, augmentation, and memory management automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
predictions = model("path/to/image.jpg")
predictions[0].show()Link to this sectionTương lai: Ultralytics YOLO26#
Trong khi YOLOv7 và YOLOX đại diện cho các bước tiến lịch sử quan trọng, công nghệ hiện đại thay đổi rất nhanh chóng. Được phát hành vào tháng 1 năm 2026, Ultralytics YOLO26 giới thiệu các mô hình đột phá thay thế cho các model trước đây.
- End-to-End NMS-Free Design: YOLO26 natively eliminates Non-Maximum Suppression (NMS) post-processing. This drastically reduces latency bottlenecks and guarantees deterministic execution times across varied hardware setups.
- Inference CPU nhanh hơn tới 43%: Bằng cách loại bỏ Distribution Focal Loss (DFL) và tối ưu hóa độ sâu mạng, YOLO26 được thiết kế đặc biệt 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 training LLM tiên tiến, optimizer MuSGD (sự kết hợp của SGD và Muon) mang lại sự ổn định training 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 mang lại những cải tiến đáng kể trong việc nhận diện các đối tượng nhỏ, ở xa — điều quan trọng cho drone mapping và giám sát an ninh.
- Hỗ trợ tác vụ gốc: YOLO26 hỗ trợ toàn diện Oriented Bounding Boxes (OBB), instance segmentation và pose estimation ngay trong cùng một API được sắp xếp hợp lý.
Đối với bất kỳ nhà phát triển hiện đại nào bắt đầu dự án thị giác máy tính mới hôm nay, việc đánh giá Ultralytics YOLO26 on the Platform là con đường được khuyến nghị để đạt được sự cân bằng tốt nhất giữa tốc độ, độ chính xác và tính đơn giản trong triển khai. Đối với những người nâng cấp từ các thế hệ trước như YOLO11 hoặc YOLOv8, quá trình chuyển đổi chỉ yêu cầu thay đổi chuỗi model, ngay lập tức mở khóa các khả năng vượt trội.