YOLOv6-3.0 so với YOLOv7: Tìm hiểu về các kiến trúc phát hiện vật thể thời gian thực

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

Bài so sánh kỹ thuật toàn diện này khám phá kiến trúc, các chỉ số hiệu suất và trường hợp sử dụng lý tưởng của chúng, đồng thời làm nổi bật cách Nền tảng Ultralytics hiện đại và mô hình YOLO26 mới nhất xây dựng dựa trên những khái niệm nền tảng này để mang lại trải nghiệm tuyệt vời cho nhà phát triển.

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

Được phát triển bởi Bộ phận AI Thị giác tại Meituan, YOLOv6-3.0 được thiết kế đặc biệt cho các ứng dụng công nghiệp yêu cầu lưu lượng cao. Nó tập trung mạnh vào việc tối đa hóa hiệu suất trên các bộ tăng tốc phần cứng, biến nó thành một ứng viên mạnh mẽ cho các môi trường nơi việc xử lý theo lô (batch processing) trên các GPU chuyên dụng là khả thi.

  • 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

Đổi mới 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 hóa chi phí truy cập bộ nhớ trên GPU. Để tăng cường khả năng hợp nhất đặc trưng (feature fusion) qua các quy mô khác nhau, mô hình giới thiệu một module Bi-directional Concatenation (BiC) trong phần cổ (neck) của nó. Điều này cho phép mạng lưới nắm bắt các cấu trúc phân cấp không gian phức tạp hiệu quả hơn so với các phiên bản trước đó.

Hơn nữa, YOLOv6-3.0 triển khai chiến lược Anchor-Aided Training (AAT). Phương pháp này kết hợp các tín hiệu gradient phong phú của quá trình huấn luyện dựa trên neo (anchor-based) với các lợi ích triển khai tối giản của suy luận không dựa trên neo (anchor-free), giúp mô hình hội tụ ổn định hơn mà không làm giảm tốc độ hậu xử lý (post-processing).

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

Các cân nhắc về phần cứng

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

YOLOv7: Người tiên phong Bag-of-Freebies

Được phát hành bởi các nhà nghiên cứu tại Academia Sinica, YOLOv7 đã thực hiện một cách tiếp cận khác bằng cách tập trung mạnh vào phân tích đường dẫn gradient và tối ưu hóa thời gian huấn luyện mà không làm tăng chi phí suy luận—một khái niệm mà các tác giả gọi là "túi quà miễn phí có thể huấn luyện" (trainable bag-of-freebies).

  • 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

Đổi mới kiến trúc

Cốt lõi của YOLOv7 là Extended Efficient Layer Aggregation Network (E-ELAN). E-ELAN tối ưu hóa đường dẫn gradient bằng cách cho phép các lớp khác nhau học các đặc trưng đa dạng hơn mà không làm gián đoạn cấu trúc liên kết mạng ban đầu. Kết quả là một mô hình có khả năng biểu đạt cao, đạt được mean average precision (mAP) hàng đầu.

YOLOv7 cũng tận dụng tối đa việc tái tham số hóa mô hình (model re-parameterization), hợp nhất các lớp tích chập (convolutional layers) với chuẩn hóa hàng loạt (batch normalization) trong quá trình suy luận. Điều này làm giảm số lượng tham số và tăng tốc đường truyền tiếp (forward pass) 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 mô hình này trên tập dữ liệu MS COCO, chúng ta quan sát thấy sự đánh đổi rõ rệt giữa các biến thể siêu nhẹ của YOLOv6 và các kiến trúc YOLOv7 được tham số hóa kỹ lưỡng, chú trọng vào độ chính xác.

Modelkích thước
(pixels)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(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 cung cấp tốc độ suy luận vượt trội, phù hợp cho phân tích video tần suất cao. Ngược lại, YOLOv7x đạt được mAP cao nhất, chiếm ưu thế trong các tác vụ yêu cầu độ chính xác phát hiện hơn là tốc độ khung hình thô.

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

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

Khi nào nên chọn YOLOv6

YOLOv6 là một lựa chọn mạnh mẽ cho:

  • Triển khai hướng đến phần cứng công nghiệp: Các kịch bản mà thiết kế hướng phần cứng và khả năng tái tham số hóa hiệu quả của mô hình mang lại hiệu suất tối ưu trên phần cứng mục tiêu cụ thể.
  • Phát hiện một giai đoạn nhanh: Các ứng dụng ưu tiên tốc độ suy luận thô trên GPU cho 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 đội ngũ đã và đang làm việc trong hệ thống công nghệ và cơ sở hạ tầng triển khai của Meituan.

Khi nào nên chọn YOLOv7

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

  • Academic Benchmarking: Tái hiện các kết quả hiện đại nhất (state-of-the-art) từ năm 2022 hoặc nghiên cứu tác động của E-ELAN và các kỹ thuật trainable bag-of-freebies.
  • Reparameterization Research: Nghiên cứu các convolution được tái tham số hóa theo kế hoạch và các chiến lược mở rộng mô hình hỗn hợp.
  • Existing Custom Pipelines: Các dự án với quy trình tùy chỉnh mạnh mẽ được xây dựng dựa trên kiến trúc cụ thể của YOLOv7 mà không dễ dàng để tái cấu trúc.

Khi 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 suất 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 ổn định, độ trễ thấp mà không cần sự phức tạp của việc hậu xử lý Non-Maximum Suppression.
  • Môi trường chỉ sử dụng CPU: Các thiết bị không có GPU tăng tốc chuyên dụng, nơi tốc độ suy luận trên CPU nhanh hơn tới 43% của YOLO26 mang lại lợi thế quyết định.
  • Nhận diện đối tượng nhỏ: Các kịch bản thách thức như ảnh drone 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 đối tượng cực nhỏ.

Lợi thế từ Ultralytics: Bước tới tương lai

Mặc dù YOLOv6-3.0 và YOLOv7 đại diện cho những cột mốc quan trọng, việc tích hợp các kho lưu trữ (repositories) khác biệt vào quy trình sản xuất thường gây ra những thách thức trong triển khai mô hình và tinh chỉnh siêu tham số. Hệ sinh thái Ultralytics giải quyết những vấn đề này bằng cách cung cấp một giao diện hợp nhất và tinh gọn.

Tại sao chọn Ultralytics?

  • Dễ sử dụng: API Python của Ultralytics cho phép các nhà phát triển tải, huấn luyện và xuất mô hình chỉ với vài dòng mã. Việc chuyển đổi từ một mô hình cũ sang kiến trúc mới nhất chỉ yêu cầu thay đổi một chuỗi duy nhấ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 mạnh mẽ.
  • Tính linh hoạt: Không giống như các mô hình trước đây chủ yếu tập trung vào hộp bao (bounding boxes), các mô hình Ultralytics hỗ trợ nguyên bản học đa tác vụ, bao gồm phân đoạn đối tượng (instance segmentation), ước tính tư thế (pose estimation)hộp bao định hướng (OBB).
  • Yêu cầu bộ nhớ: Các mô hình YOLO của Ultralytics 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 các 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 các nhà phát triển đang tìm kiếm đỉnh cao của hiệu suất, YOLO26 (phát hành tháng 1 năm 2026) về cơ bản đã thay đổi mô hình của phát hiện đối tượng. Nó giới thiệu thiết kế End-to-End NMS-Free hoàn chỉnh, loại bỏ logic hậu xử lý phức tạp và giảm đáng kể sự biến thiên độ trễ trên các thiết bị biên.

Những cải tiến chính trong YOLO26 bao gồm:

  • Trình tối ưu hóa MuSGD: Một sự kết hợp tinh vi giữa SGD và Muon đảm bảo động lực 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 xuất khẩu và tăng hiệu suất trên các thiết bị năng lượng thấp.
  • ProgLoss + STAL: Các hàm mất mát (loss functions) nâng cao mang lại những cải tiến đáng kể trong việc nhận diện vật thể nhỏ.
  • Tốc độ vượt trội: Đạt tốc độ suy luận CPU nhanh hơn tới 43% so với các thế hệ trước, giúp nó hoàn hảo cho các hệ thống nhúng như Raspberry Pi hoặc triển khai Apple CoreML.

Các mô hình có năng lực cao khác trong hệ sinh thái bao gồm YOLO11YOLOv8, cả hai đều cung cấp sự cân bằng hiệu suất tuyệt vời cho việc tích hợp phần cứng cũ.

Chuẩn bị tương lai cho quy trình làm việc của bạn

Bằng cách xây dựng các ứng dụng thị giác máy tính của bạn trên Nền tảng Ultralytics, bạn đảm bảo quyền truy cập ngay lập tức vào các mô hình hiện đại trong tương lai mà không cần viết lại trình tải tập dữ liệu hoặc tập lệnh triển khai.

Ví dụ về mã: Huấn luyện tinh gọn

Đoạn mã sau minh họa cách bạn có thể huấn luyện một mô hình YOLO26 hiện đại một cách dễ dàng bằng API của Ultralytics. Quy trình chính xác này áp dụng liền mạch cho YOLO11 hoặc YOLOv8, giúp loại bỏ các đoạn mã boilerplate thường cần thiết trong các kho lưu trữ cũ.

from ultralytics import YOLO

# Load the cutting-edge YOLO26 nano model for rapid training
model = YOLO("yolo26n.pt")

# Train the model on the COCO8 dataset
# The API handles dataset downloading, augmentation, and hyperparameter configuration
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device="cuda:0",  # Automatically utilizes PyTorch GPU acceleration
)

# Run an end-to-end, NMS-free inference on a test image
predictions = model.predict("https://ultralytics.com/images/bus.jpg")

# Export to ONNX for cross-platform deployment
model.export(format="onnx")

Kết luận

YOLOv6-3.0 và YOLOv7 đã giải quyết thành công các 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à một cường quốc cho các môi trường GPU công nghiệp chuyên biệt, trong khi YOLOv7 mang lại độ chính xác cao thông qua việc tối ưu hóa đường dẫn gradient nghiêm ngặt.

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

Bình luận