Ultralytics YOLO27:

YOLOv7 so với YOLOv9#

Bối cảnh phát hiện đối tượng theo thời gian thực đã phát triển nhanh chóng, khi mỗi phiên bản mới đều mở rộng giới hạn của những gì có thể thực hiện trên cả thiết bị biên và máy chủ đám mây. Khi đánh giá các kiến trúc cho những dự án thị giác máy tính, các nhà phát triển thường so sánh những chuẩn benchmark đã được thiết lập với các đổi mới mới hơn. Hướng dẫn toàn diện này so sánh hai cột mốc quan trọng trong dòng YOLO: YOLOv7YOLOv9.

Chúng ta sẽ phân tích những đột phá về kiến trúc, các chỉ số hiệu năng và những kịch bản triển khai lý tưởng của chúng để giúp bạn chọn model phù hợp cho ứng dụng của mình. Chúng ta cũng sẽ tìm hiểu cách Ultralytics Platform hợp nhất các model này, giúp việc huấn luyện, validation và triển khai trở nên dễ dàng hơn.

Nguồn gốc dòng model và thông số kỹ thuật#

Việc tìm hiểu nguồn gốc và triết lý thiết kế của các model này cung cấp bối cảnh cần thiết để đánh giá năng lực của chúng. Cả hai model đều có chung nền tảng nghiên cứu, nhưng hướng đến các nút thắt kiến trúc khác nhau.

YOLOv7: Tiên phong của Bag-of-Freebies#

Được phát hành vào giữa năm 2022, YOLOv7 đã khẳng định vị thế là một kiến trúc có độ tin cậy cao và được tối ưu hóa mạnh mẽ. Model này giới thiệu tái tham số hóa cấu trúc và phương pháp "túi thủ thuật miễn phí có thể huấn luyện" nhằm duy trì tốc độ suy luận cao mà không ảnh hưởng đến độ chính xác trung bình (mAP).

Đổi mới kiến trúc: YOLOv7 sử dụng Mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN), cho phép model học các đặc trưng đa dạng hơn bằng cách mở rộng, xáo trộn và hợp nhất cardinality. Thiết kế này mang lại khả năng tận dụng GPU và độ trễ suy luận xuất sắc. Tuy nhiên, so với các phiên bản hiện đại, model có thể cần lượng bộ nhớ đáng kể trong các lần huấn luyện phức tạp.

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

YOLOv9: Giải quyết nút thắt thông tin#

Được cùng nhóm nghiên cứu giới thiệu vào đầu năm 2024, YOLOv9 giải quyết "nút thắt thông tin" vốn có trong các mạng neural sâu. Khi dữ liệu đi qua các lớp sâu, những chi tiết quan trọng thường bị mất. YOLOv9 giảm thiểu vấn đề này thông qua các thiết kế lớp hoàn toàn mới.

Đổi mới kiến trúc: YOLOv9 giới thiệu Thông tin gradient có thể lập trình (PGI) và Mạng tổng hợp lớp hiệu quả tổng quát hóa (GELAN). PGI đảm bảo các gradient đáng tin cậy được bảo toàn và truyền ngược để cập nhật trọng số chính xác. GELAN tối đa hóa hiệu quả tham số, cho phép YOLOv9 đạt độ chính xác cao với số FLOPs ít hơn đáng kể so với các phiên bản tiền nhiệm.

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

Phân tích hiệu năng#

Khi lựa chọn giữa các kiến trúc, kỹ sư AI phải cân bằng độ chính xác, tốc độ suy luận và chi phí tính toán. Bảng dưới đây nêu bật sự khác biệt về hiệu năng giữa các model này trên bộ dữ liệu COCO tiêu chuẩn.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
T4 TensorRT10
(ms)
tham số
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Các điểm chính#

  • Hiệu quả tham số: YOLOv9m đạt độ chính xác tương đương YOLOv7l (51.4% mAP) trong khi sử dụng ít hơn gần 45% số tham số (20.0M so với 36.9M). Việc cắt giảm mạnh này giúp YOLOv9m dễ triển khai hơn nhiều trên các thiết bị AI biên bị giới hạn bộ nhớ.
  • Triển khai vi mô: Biến thể YOLOv9t (tiny) mang lại tốc độ ấn tượng (2.3ms trên T4 TensorRT) cho những môi trường có yêu cầu thời gian thực tuyệt đối.
  • Độ chính xác tối đa: Đối với các ứng dụng đặt độ chính xác lên hàng đầu, YOLOv9e nâng độ chính xác phát hiện lên 55.6% mAP, vượt trội đáng kể so với YOLOv7x.
Đảm bảo tính phù hợp lâu dài cho các dự án thị giác máy tính

Mặc dù YOLOv7 và YOLOv9 rất mạnh mẽ, YOLO26 mới ra mắt đại diện cho bước tiến vượt bậc mang tính quyết định. YOLO26 giới thiệu thiết kế gốc end-to-end không cần NMS, loại bỏ bước hậu xử lý phức tạp và tăng tốc độ suy luận trên CPU lên đến 43%. Nhờ sử dụng optimizer MuSGD mới cùng các hàm loss ProgLoss + STAL được cải tiến, YOLO26 mang lại độ ổn định huấn luyện và độ chính xác phát hiện đối tượng nhỏ vượt trội.

Lợi thế của Ultralytics#

Lựa chọn kiến trúc model chỉ là bước đầu tiên. Hệ sinh thái phần mềm bao quanh model quyết định tốc độ chuyển từ prototype sang production. Việc tích hợp các model này thông qua Ultralytics Python API mang lại nhiều lợi ích đáng kể cho các nhà phát triển và nhà nghiên cứu.

Tính dễ sử dụng và hiệu quả huấn luyện#

Trước đây, việc huấn luyện YOLOv7 đòi hỏi quy trình chuẩn bị dữ liệu phức tạp và các script được tùy chỉnh nhiều. Framework Ultralytics loại bỏ phần phức tạp của deep learning khỏi quy trình. Các nhà phát triển có thể dễ dàng chuyển đổi giữa các kiến trúc, thử nghiệm tinh chỉnh hyperparameter và sử dụng các pipeline tăng cường dữ liệu thông minh chỉ với rất ít code.

Ngoài ra, Ultralytics tối ưu mức sử dụng bộ nhớ trong quá trình huấn luyện và suy luận. Không giống các model transformer nặng (chẳng hạn như RT-DETR), các kiến trúc YOLO của Ultralytics huấn luyện nhanh hơn đáng kể và cần ít bộ nhớ CUDA hơn nhiều, trở thành lựa chọn lý tưởng cho GPU phổ thông.

Ví dụ code: Training tinh gọn#

Việc huấn luyện các model hiện đại nhất trở nên liền mạch trong hệ sinh thái Ultralytics. Dưới đây là một ví dụ có thể chạy đầy đủ, minh họa cách huấn luyện và validation một model YOLOv9:

from ultralytics import YOLO

# Initialize the model (you can swap 'yolov9c.pt' with 'yolov7.pt' or 'yolo26n.pt')
model = YOLO("yolov9c.pt")

# Train the model on the COCO8 sample dataset
train_results = model.train(
    data="coco8.yaml",
    epochs=50,
    imgsz=640,
    device="0",  # Use GPU 0 if available
    batch=16,  # Optimized batch size for memory efficiency
)

# Validate the model's performance on the validation set
metrics = model.val()

# Export the trained model to ONNX format for deployment
model.export(format="onnx")

Tính linh hoạt vượt trội trên nhiều tác vụ#

Một hệ sinh thái được duy trì tốt đồng nghĩa với khả năng tiếp cận nhiều tác vụ thị giác máy tính đa dạng. YOLOv7 chủ yếu được xây dựng cho phát hiện đối tượng (với các fork thử nghiệm cho những tác vụ khác được phát triển về sau), trong khi các model Ultralytics hiện đại được xây dựng nguyên bản để linh hoạt. Ngay khi cài đặt, bạn có thể thực hiện liền mạch phân đoạn instance, ước tính pose, phân loại ảnh và phát hiện Bounding Box định hướng (OBB).

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

Quyết định giữa YOLOv7 và YOLOv9 thường phụ thuộc vào các ràng buộc cụ thể của ngành và khả năng sẵn có của phần cứng.

Khi nào nên sử dụng YOLOv7#

  • Triển khai biên trên hệ thống cũ: Đối với các môi trường phần cứng đã được tinh chỉnh và tối ưu hóa mạnh cho kiến trúc E-ELAN của YOLOv7, đây vẫn là lựa chọn đáng tin cậy cho IoT công nghiệp.
  • Giám sát giao thông: Tốc độ khung hình cao và độ ổn định đã được chứng minh của YOLOv7 khiến model này đặc biệt phù hợp với hạ tầng thành phố thông minh và quản lý giao thông theo thời gian thực.
  • Tích hợp robotics: Việc điều hướng trong các môi trường động đòi hỏi xử lý có độ trễ thấp, và đây là kịch bản mà các biến thể YOLOv7 đã được kiểm thử rộng rãi.

Khi nào nên sử dụng YOLOv9#

  • Chẩn đoán hình ảnh y khoa: Kiến trúc PGI trong YOLOv9 đặc biệt hiệu quả trong việc bảo toàn các chi tiết tinh tế qua những lớp sâu, yếu tố quan trọng khi thực hiện các tác vụ phân tích hình ảnh y khoa phức tạp như phát hiện khối u.
  • Phân tích bán lẻ mật độ cao: Để theo dõi và đếm các mặt hàng xếp dày đặc trên kệ bán lẻ, khả năng tích hợp đặc trưng của YOLOv9 mang lại độ chính xác cao hơn và giảm số lượng false negative.
  • Ảnh chụp từ trên không và drone: Hiệu quả tham số của YOLOv9m cho phép xử lý ảnh độ phân giải cao trên drone, hỗ trợ bảo tồn động vật hoang dã và giám sát nông nghiệp mà không làm tiêu hao pin.

Kết luận#

Cả YOLOv7 và YOLOv9 đều đã khẳng định vị trí của mình trong lịch sử thị giác máy tính. YOLOv7 giới thiệu các tối ưu hóa thiết yếu cho xử lý thời gian thực, trong khi YOLOv9 giải quyết các nút thắt cấu trúc trong deep learning để tối đa hóa hiệu quả tham số.

Tuy nhiên, đối với các nhà phát triển bắt đầu dự án mới hiện nay, việc tận dụng hệ sinh thái Ultralytics—cụ thể là các model thế hệ tiếp theo như YOLO11YOLO26—mang lại sự cân bằng thuận lợi nhất giữa tốc độ, độ chính xác và trải nghiệm phát triển. Với những đổi mới như optimizer MuSGD và việc loại bỏ Distribution Focal Loss (DFL) để tăng khả năng tương thích với nhiều phần cứng hơn, Ultralytics tiếp tục cung cấp các công cụ dễ tiếp cận và mạnh mẽ nhất cho các chuyên gia AI thị giác.

Những người đóng góp

Bình luận