Ultralytics YOLO27:
Get Started

YOLOv6-3.0 và YOLOv7#

Sự phát triển của thị giác máy tính thời gian thực được thúc đẩy bởi những tiến bộ nhanh chóng về hiệu quả kiến trúc và phương pháp huấn luyện. Hai model nổi bật có ảnh hưởng đáng kể đến lĩnh vực này là YOLOv6-3.0 và YOLOv7. Cả hai framework đều giới thiệu kỹ thuật mới để cân bằng tốc độ suy luận với độ chính xác phát hiện, nhắm đến các môi trường triển khai từ GPU máy chủ cao cấp đến thiết bị edge.

Bài so sánh kỹ thuật toàn diện này khảo sát kiến trúc, chỉ số hiệu năng và trường hợp sử dụng lý tưởng của chúng, đồng thời nêu bật cách Ultralytics Platform hiện đại và model YOLO26 mới nhất kế thừa các khái niệm nền tảng này để mang lại trải nghiệm phát triển vượt trội.

YOLOv6-3.0: Tối ưu hóa thông lượng công nghiệp#

Được phát triển bởi Bộ phận Vision AI tại Meituan, YOLOv6-3.0 được thiết kế chuyên biệt cho các ứng dụng công nghiệp có thông lượng cao. Model tập trung tối đa hóa hiệu năng trên bộ tăng tốc phần cứng, phù hợp với môi trường có thể xử lý theo batch bằng GPU chuyên dụng.

  • Tác giả: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu và Xiangxiang Chu
  • Tổ chức: Meituan
  • Ngày: 2023-01-13
  • Arxiv: 2301.05586
  • GitHub: meituan/YOLOv6

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

YOLOv6-3.0 dựa trên backbone EfficientRep, một kiến trúc thân thiện với phần cứng, được thiết kế để tối ưu chi phí truy cập bộ nhớ trên GPU. Để tăng cường hợp nhất đặc trưng ở các tỷ lệ khác nhau, model bổ sung mô-đun Concatenation hai chiều (BiC) vào neck. Nhờ đó, mạng có thể nắm bắt các hệ phân cấp không gian phức tạp hiệu quả hơn những phiên bản trước.

Ngoài ra, YOLOv6-3.0 triển khai chiến lược Huấn luyện có hỗ trợ anchor (AAT). Phương pháp này kết hợp tín hiệu gradient phong phú từ huấn luyện dựa trên anchor với lợi ích triển khai tinh gọn của suy luận không dùng anchor, giúp model hội tụ ổn định hơn mà không làm giảm tốc độ hậu xử lý.

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

Các yếu tố cần cân nhắc về phần cứng

YOLOv6-3.0 hoạt động vượt trội trên GPU cấp máy chủ (như NVIDIA T4), nhưng việc phụ thuộc nhiều vào tái tham số hóa cấu trúc cụ thể đôi khi có thể dẫn đến độ trễ chưa tối ưu trên thiết bị edge bị giới hạn hoàn toàn bởi CPU, so với các kiến trúc mới hơn.

YOLOv7: Tiên phong với Bag-of-Freebies#

Được phát hành bởi các nhà nghiên cứu tại Academia Sinica, YOLOv7 áp dụng cách tiếp cận khác, tập trung mạnh vào phân tích đường đi gradient và các tối ưu hóa trong quá trình huấn luyện mà không làm tăng chi phí suy luận—một khái niệm được các tác giả gọi là "túi thủ thuật có thể huấn luyện".

  • 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
  • Arxiv: 2207.02696
  • GitHub: WongKinYiu/yolov7

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

Cốt lõi của YOLOv7 là Mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN). E-ELAN tối ưu đường đi gradient bằng cách cho phép các lớp khác nhau học những đặc trưng đa dạng hơn mà không làm gián đoạn cấu trúc mạng ban đầu. Nhờ đó, model có khả năng biểu đạt cao và đạt độ chính xác trung bình (mAP) hàng đầu.

YOLOv7 cũng sử dụng rộng rãi kỹ thuật tái tham số hóa model, gộp các lớp tích chập với batch normalization trong quá trình suy luận. Cách này giảm số lượng tham số và tăng tốc lượt truyền xuôi khi triển khai bằng các framework như NVIDIA TensorRT hoặc ONNX.

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

So sánh hiệu năng#

Khi đánh giá các model này trên dataset MS COCO, có thể thấy sự đánh đổi rõ rệt giữa các biến thể YOLOv6 siêu nhẹ và kiến trúc YOLOv7 có nhiều tham số, tập trung vào độ chính xác.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
params
(M)
FLOPs
(B)
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9

Dữ liệu cho thấy YOLOv6-3.0n có tốc độ suy luận vượt trội, phù hợp với phân tích video tần suất cao. Ngược lại, YOLOv7x đạt mAP cao nhất, chiếm ưu thế trong các tác vụ ưu tiên độ chính xác phát hiện hơn tốc độ khung hình thuần.

Trường hợp sử dụng và khuyến nghị#

Việc chọn YOLOv6 hay YOLOv7 tùy thuộc vào yêu cầu cụ thể của dự án, các giới hạn triển khai và sở thích về hệ sinh thái.

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

YOLOv6 là lựa chọn phù hợp cho:

  • Triển khai tương thích với phần cứng công nghiệp: Các tình huống mà thiết kế nhận biết phần cứng và tái tham số hóa hiệu quả của model mang lại hiệu năng tối ưu trên phần cứng mục tiêu cụ thể.
  • Detection một giai đoạn tốc độ cao: Các ứng dụng ưu tiên tốc độ suy luận GPU thô để xử lý video thời gian thực trong môi trường được kiểm soát.
  • Tích hợp hệ sinh thái Meituan: Các nhóm đang làm việc trong ngăn xếp công nghệ và hạ tầng triển khai của Meituan.

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ế Ultralytics: Bước tới tương lai#

Mặc dù YOLOv6-3.0 và YOLOv7 là những cột mốc quan trọng, việc tích hợp các repository riêng biệt vào pipeline production thường gây khó khăn trong triển khai model và tinh chỉnh hyperparameter. Hệ sinh thái Ultralytics giải quyết các vấn đề này bằng cách cung cấp giao diện thống nhất, tinh gọn.

Vì sao nên chọn Ultralytics?#

  • Dễ sử dụng: Ultralytics Python API cho phép nhà phát triển tải, huấn luyện và export model chỉ với vài dòng code. Để chuyển từ model cũ sang kiến trúc mới nhất, bạn chỉ cần thay đổi một chuỗi ký tự.
  • Hệ sinh thái được duy trì tốt: Ultralytics cung cấp các bản cập nhật thường xuyên, hỗ trợ cộng đồng tích cực và tài liệu toàn diện.
  • Tính linh hoạt: Khác với các model đời trước chủ yếu tập trung vào bounding box, model Ultralytics hỗ trợ sẵn học đa nhiệm, bao gồm phân đoạn instance, ước lượng pose và bounding box định hướng (OBB).
  • Yêu cầu bộ nhớ: Model Ultralytics YOLO duy trì mức sử dụng bộ nhớ thấp hơn trong quá trình huấn luyện so với các kiến trúc dựa trên Transformer như RT-DETR, cho phép nhà nghiên cứu huấn luyện hiệu quả trên phần cứng phổ thông.

Nâng cấp lên YOLO26#

Đối với nhà phát triển muốn đạt hiệu năng đỉnh cao, YOLO26 (phát hành tháng 1 năm 2026) thay đổi căn bản mô hình phát hiện đối tượng. Model giới thiệu Thiết kế end-to-end không cần NMS tùy chọn (nms=False), loại bỏ logic hậu xử lý phức tạp và giảm đáng kể biến thiên độ trễ trên thiết bị edge.

Các cải tiến chính của YOLO26 bao gồm:

  • Optimizer MuSGD: Sự kết hợp tinh vi giữa SGD và Muon, đảm bảo quá trình huấn luyện cực kỳ ổn định và hội tụ nhanh hơn.
  • Loại bỏ DFL: Bằng cách loại bỏ Distribution Focal Loss, YOLO26 đơn giản hóa khả năng tương thích khi export và tăng hiệu năng trên các thiết bị công suất thấp.
  • ProgLoss + STAL: Các hàm loss tiên tiến giúp cải thiện đáng kể khả năng nhận diện đối tượng nhỏ.
  • Tốc độ vượt trội: Suy luận CPU nhanh hơn tới 43% so với các thế hệ trước, rất phù hợp với hệ thống nhúng như Raspberry Pi hoặc các triển khai Apple CoreML.

Các model có năng lực cao khác trong hệ sinh thái gồm YOLO11 và YOLOv8, cả hai đều cân bằng hiệu năng rất tốt cho các tích hợp phần cứng cũ.

Đảm bảo pipeline của bạn sẵn sàng cho tương lai

Xây dựng ứng dụng thị giác máy tính trên Ultralytics Platform giúp bạn có quyền truy cập ngay vào các model hiện đại hàng đầu trong tương lai mà không cần viết lại trình tải dataset hoặc script triển khai.

Ví dụ mã: Huấn luyện đơn giản hóa#

Đoạn mã sau minh họa cách huấn luyện model YOLO26 hiện đại hàng đầu bằng Ultralytics API dễ dàng như thế nào. Quy trình này cũng áp dụng liền mạch cho YOLO11 hoặc YOLOv8, loại bỏ phần code khuôn mẫu thường cần có trong các repository cũ.

from ultralytics import YOLO

# Tải model YOLO26 nano tiên tiến nhất để huấn luyện nhanh
model = YOLO("yolo26n.pt")

# Huấn luyện model trên bộ dữ liệu COCO8
# API tự xử lý việc tải dataset, tăng cường dữ liệu và cấu hình hyperparameter
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device="cuda:0",  # Tự động tận dụng khả năng tăng tốc GPU của PyTorch
)

# Chạy suy luận end-to-end không cần NMS trên ảnh kiểm thử
predictions = model.predict("https://ultralytics.com/images/bus.jpg", nms=False)

# Export sang ONNX để triển khai đa nền tảng
model.export(format="onnx")

Kết luận#

YOLOv6-3.0 và YOLOv7 đã giải quyết thành công những khía cạnh khác nhau của thách thức phát hiện thời gian thực. YOLOv6-3.0 là model mạnh mẽ cho môi trường GPU công nghiệp chuyên biệt, trong khi YOLOv7 đạt độ chính xác cao nhờ tối ưu hóa nghiêm ngặt đường đi gradient.

Tuy nhiên, đối với các ứng dụng hiện đại đòi hỏi tính linh hoạt vượt trội, triển khai ít trở ngại và hiệu năng hàng đầu, Ultralytics YOLO26 là lựa chọn tối ưu. Kiến trúc không cần NMS, optimizer MuSGD tiên tiến và khả năng tích hợp sâu với Ultralytics Platform đảm bảo nhà phát triển có thể triển khai giải pháp Vision AI mạnh mẽ, có khả năng mở rộng nhanh hơn bao giờ hết.

Người đóng góp

Bình luận