Chuyển đến nội dung

YOLOv7 và YOLOX: Phân tích kỹ thuật về các thiết bị dò thời gian thực

Sự phát triển của thị giác máy tính được đánh dấu bằng những tiến bộ nhanh chóng trong việc phát hiện đối tượng theo thời gian thực. Hai cột mốc quan trọng trong hành trình này là YOLOv7 và YOLOX. Mặc dù cả hai mô hình đều đẩy giới hạn về tốc độ và độ chính xác, nhưng chúng lại áp dụng các triết lý kiến ​​trúc khác nhau để đạt được kết quả. Hướng dẫn này cung cấp một so sánh kỹ thuật toàn diện giữa hai mô hình mạnh mẽ này, giúp bạn lựa chọn kiến ​​trúc phù hợp cho các dự án thị giác máy tính của mình.

Giới thiệu về các mô hình

Hiểu rõ nguồn gốc và các lựa chọn thiết kế chính của những mô hình này là điều vô cùng quan trọng để triển khai chúng một cách hiệu quả trong các hoạt động học máy hiện đại.

YOLOv7 Chi tiết

Được phát triển bởi các nhà nghiên cứu đã duy trì kiến ​​trúc CSPNet và Scaled-YOLOv4, YOLOv7 Đã giới thiệu phương pháp "túi quà tặng miễn phí có thể huấn luyện" để tối đa hóa độ chính xác mà không làm tăng chi phí suy luận.

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

Thông tin chi tiết về YOLOX

YOLOX đã chọn một hướng đi khác bằng cách chuyển đổi mô hình trở lại phương pháp phát hiện không cần neo, đơn giản hóa đáng kể kiến ​​trúc phần đầu trong khi vẫn duy trì hiệu suất mạnh mẽ.

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

Những khác biệt và đổi mới trong kiến ​​trúc

Sự khác biệt cốt lõi giữa YOLOv7 Điểm khác biệt giữa YOLOX và các hệ điều hành khác nằm ở cách tiếp cận của chúng trong việc trích xuất đặc trưng, ​​dự đoán hộp giới hạn và gán nhãn.

YOLOX: Người tiên phong không neo

YOLOX đã tạo nên một cuộc cách mạng trong lĩnh vực này. YOLO YOLOX cải thiện hiệu suất của hệ thống bằng cách chuyển sang thiết kế không sử dụng anchor . Các bộ dò dựa trên anchor truyền thống yêu cầu điều chỉnh thuật toán phức tạp để phân cụm anchor box, điều này có thể phụ thuộc rất nhiều vào tập dữ liệu. Bằng cách loại bỏ anchor box, YOLOX đã giảm đáng kể số lượng tham số thiết kế. Hơn nữa, YOLOX sử dụng một head tách rời , phân tách các nhiệm vụ phân loại và định vị thành các nhánh mạng riêng biệt. Điều này giải quyết được mâu thuẫn vốn có giữa việc phân loại một đối tượng và hồi quy tọa độ không gian của nó. YOLOX cũng tích hợp các chiến lược gán nhãn tiên tiến như SimOTA , chiến lược này phân bổ động các mẫu tích cực trong quá trình huấn luyện.

YOLOv7 : Tổng hợp lớp hiệu quả mở rộng

YOLOv7 Phương pháp này quay trở lại với các phương pháp dựa trên điểm neo nhưng đã giới thiệu Mạng tổng hợp lớp hiệu quả mở rộng (E-ELAN) . E-ELAN tối ưu hóa độ dài đường dẫn gradient, đảm bảo mạng học hiệu quả trên các độ sâu khác nhau. Kiến trúc này dựa nhiều vào các kỹ thuật tái tham số hóa, hợp nhất các lớp tích chập trong quá trình suy luận để tăng tốc độ mà không làm giảm độ chính xác. YOLOv7 Chiến lược "túi quà tặng miễn phí" của mô hình bao gồm các cải tiến như các phép tích chập được tham số hóa lại theo kế hoạch và việc gán nhãn dẫn dắt từ thô đến tinh, giúp đẩy Độ chính xác trung bình (Mean Average Precision) của mô hình lên mức đáng kể.

Dựa trên Anchor so với Không Anchor

Trong khi YOLOX đơn giản hóa quy trình triển khai với thiết lập không cần neo, các hệ thống hiện đại Ultralytics Kể từ đó, các kiến ​​trúc sư đã hoàn thiện phương pháp này, loại bỏ hoàn toàn nhu cầu về các hộp được xác định trước trong các thế hệ mới hơn.

So sánh hiệu suất

Khi đánh giá các mô hình này để đưa vào sản xuất, việc cân bằng giữa độ chính xác và hiệu quả tính toán là rất quan trọng. Bảng dưới đây minh họa sự đánh đổi này, làm nổi bật các chỉ số hoạt động tốt nhất bằng chữ in đậm.

Mô hìnhKích thước
(pixels)
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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Như đã thấy ở trên, YOLOv7x đạt được điểm số cao nhất. mAP Điều này giúp nó đạt độ chính xác vượt trội đối với các tập dữ liệu phức tạp. Ngược lại, YOLOX-Nano được tối ưu hóa cao cho các điều kiện hạn chế tài nguyên nghiêm ngặt. Tuy nhiên, cả hai mô hình đều có mức sử dụng bộ nhớ tương đối cao trong quá trình huấn luyện so với các kiến ​​trúc hiện đại.

Phương pháp luận đào tạo và Hệ sinh thái

Một yếu tố quan trọng đối với các nhà nghiên cứu và phát triển là tính dễ dàng trong việc triển khai. Trong quá khứ, các hệ thống cũ hơn... YOLO Các phiên bản trước đây yêu cầu các tập lệnh C++ được tùy chỉnh rất nhiều hoặc quản lý phụ thuộc phức tạp.

Lợi thế Hệ sinh thái Ultralytics

Ngày nay, cách hiệu quả nhất để tận dụng những kiến ​​trúc này là thông qua việc bảo trì tốt. Ultralytics hệ sinh thái. Ultralytics cung cấp một giao diện thống nhất, trực quan cao. Python API giúp đơn giản hóa đáng kể quá trình đào tạo, xác thực và triển khai.

  • Dễ sử dụng: Chỉ với vài dòng mã, bạn có thể khởi tạo một vòng lặp huấn luyện, giảm thiểu độ khó của quá trình học tập khi sử dụng phương pháp thô. PyTorch các triển khai.
  • Hiệu quả đào tạo: Ultralytics YOLO So với các mô hình Transformer nặng như RT-DETR , các mô hình này sử dụng ít bộ nhớ hơn trong quá trình huấn luyện. Điều này cho phép các nhà phát triển tối đa hóa kích thước lô trên phần cứng của người tiêu dùng.
  • Tính linh hoạt: Vượt xa các hộp giới hạn đơn giản, hệ sinh thái này dễ dàng mở rộng sang các tác vụ như Phân đoạn đối tượngƯớc tính tư thế .

Dưới đây là một ví dụ hoàn chỉnh có thể chạy được, minh họa cách huấn luyện mô hình bằng cách sử dụng... Ultralytics API:

from ultralytics import YOLO

# Load a pre-trained model
model = YOLO("yolov8n.pt")  # Readily available weights for rapid transfer learning

# Train the model efficiently on your custom data
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    batch=16,
    device="0",  # Utilizes optimal CUDA memory management
)

# Export seamlessly to ONNX or TensorRT
model.export(format="onnx")

Bằng cách chuẩn hóa quy trình xuất dữ liệu , các nhà phát triển có thể dễ dàng chuyển đổi trọng số của họ sang các định dạng như TensorRT hoặc ONNX , đảm bảo tốc độ suy luận cao trên phần cứng mục tiêu.

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

Lựa chọn giữa YOLOX và YOLOv7 Điều này phần lớn phụ thuộc vào mục tiêu triển khai:

  • YOLOX cho AI biên: Các phiên bản YOLOX-Nano và YOLOX-Tiny rất phù hợp để triển khai trên các thiết bị tiêu thụ điện năng thấp. Nếu bạn đang xây dựng một camera an ninh thông minh trên Raspberry Pi , các phép tích chập không cần neo đơn giản của YOLOX có thể dễ dàng chuyển đổi thành bộ tăng tốc biên.
  • YOLOv7 dành cho phân tích độ chính xác cao: Nếu bạn đang xử lý ảnh vệ tinh độ phân giải cao hoặc thực hiện kiểm soát chất lượng sản xuất phức tạp, thì độ phân giải cao là yếu tố cần thiết. mAP của YOLOv7x, được hỗ trợ bởi công nghệ cao cấp. NVIDIA GPU đảm bảo phát hiện được cả những bất thường nhỏ nhất.

Tương lai: Nâng cấp lên Ultralytics YOLO26

Trong khi YOLOv7 Kể từ khi YOLOX ra đời, lĩnh vực thị giác máy tính đã phát triển đáng kể. Đối với các triển khai mới, các nhà phát triển nên xem xét Ultralytics YOLO26 , được phát hành vào tháng 1 năm 2026. Mô hình tiên tiến này kết hợp những lý thuyết kiến ​​trúc tốt nhất vào một hệ thống hoàn chỉnh sẵn sàng cho sản xuất.

Dưới đây là lý do tại sao việc nâng cấp được khuyến nghị mạnh mẽ:

  • Thiết kế không cần NMS từ đầu đến cuối: YOLO26 loại bỏ hoàn toàn hiện tượng Non-Maximum Suppression (NMS) một cách tự nhiên. NMS ) trong quá trình xử lý hậu kỳ. Được tiên phong lần đầu tiên trong YOLOv10 , tính năng này đảm bảo độ trễ thấp ổn định, đơn giản hóa việc triển khai trên các thiết bị thiếu NMS Hỗ trợ phần cứng.
  • Loại bỏ DFL: Bằng cách loại bỏ hiện tượng suy hao tiêu điểm phân bổ (Distribution Focal Loss - DFL), YOLO26 đạt được khả năng tương thích tốt hơn nhiều với các thiết bị biên công suất thấp và hoạt động đơn giản hơn. ONNX xuất khẩu.
  • Bộ tối ưu hóa MuSGD: Lấy cảm hứng từ những cải tiến trong huấn luyện LLM, YOLO26 tận dụng bộ tối ưu hóa MuSGD lai, đảm bảo sự hội tụ nhanh hơn và động lực huấn luyện cực kỳ ổn định.
  • Suy luận CPU nhanh hơn tới 43%: Được tối ưu hóa mạnh mẽ cho phần cứng thực tế, YOLO26 hoạt động hiệu quả trên các CPU tiêu chuẩn mà không cần đến các thiết bị đắt tiền. GPU cơ sở hạ tầng.
  • ProgLoss + STAL: Các hàm mất mát tiên tiến này cải thiện đáng kể khả năng nhận dạng vật thể nhỏ, một tính năng quan trọng đối với việc kiểm tra bằng máy bay không người lái và các mạng IoT phức tạp.

Đối với các nhà phát triển đang tìm kiếm sự cân bằng hiệu năng tốt nhất giữa phát hiện đối tượng , phân đoạn và hơn thế nữa, việc triển khai mô hình thông qua Nền tảng Ultralytics mang lại trải nghiệm vượt trội, không gặp trở ngại nào.

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

Kết luận

Cả YOLOX và YOLOv7 đã giới thiệu các kỹ thuật then chốt định hình quỹ đạo của trí tuệ nhân tạo thị giác mã nguồn mở. YOLOX đã chứng minh tính khả thi của các đầu đọc tách rời không cần neo, trong khi đó YOLOv7 Điều này đã chứng minh sức mạnh to lớn của việc tái tham số hóa đường dẫn gradient. Ngày nay, việc tận dụng Ultralytics Hệ sinh thái này đảm bảo bạn có thể khai thác tối đa tiềm năng từ các kiến ​​trúc lịch sử này, hoặc chuyển đổi liền mạch sang YOLO26 hiện đại để đảm bảo tính tương lai cho ứng dụng thị giác máy tính tiếp theo của bạn.


Bình luận