Link to this sectionYOLO11 so với YOLOv8#
Lĩnh vực thị giác máy tính đã chứng kiến những bước tiến đáng kể với sự phát triển không ngừng của các kiến trúc phát hiện đối tượng. Khi đánh giá các mô hình để triển khai trong thực tế, các lập trình viên thường so sánh thế mạnh của Ultralytics YOLO11 và phiên bản tiền nhiệm rất thành công của nó, Ultralytics YOLOv8. Cả hai mô hình đều đã thiết lập các tiêu chuẩn công nghiệp về tốc độ, độ chính xác và trải nghiệm lập trình viên, nhưng chúng phục vụ cho các vòng đời dự án và ngưỡng hiệu suất hơi khác nhau.
Hướng dẫn này cung cấp phân tích chuyên sâu về kiến trúc, phương pháp đào tạo và các trường hợp sử dụng lý tưởng để giúp bạn chọn giải pháp tốt nhất cho các sáng kiến trí tuệ nhân tạo của mình.
Link to this sectionCải tiến kiến trúc#
Sự chuyển đổi từ YOLOv8 sang YOLO11 đã giới thiệu một số cải tiến kiến trúc chính nhằm tối đa hóa hiệu quả trích xuất đặc trưng trong khi giảm thiểu chi phí tính toán.
Link to this sectionKiến trúc YOLO11#
YOLO11 đại diện cho một bước tiến quan trọng trong việc tối ưu hóa việc sử dụng tham số. Nó thay thế các module C2f truyền thống bằng các khối C3k2 tiên tiến, giúp tăng cường xử lý đặc trưng không gian mà không làm tăng số lượng tham số. Ngoài ra, YOLO11 giới thiệu module C2PSA (Cross-Stage Partial Spatial Attention) trong phần backbone của nó. Cơ chế chú ý (attention mechanism) này cho phép mô hình tập trung vào các vùng quan tâm quan trọng, cải thiện đáng kể phát hiện đối tượng nhỏ và xử lý các trường hợp bị che khuất phức tạp.
- Tác giả: Glenn Jocher và Jing Qiu
- Tổ chức: Ultralytics
- Ngày: 2024-09-27
- GitHub: Kho lưu trữ Ultralytics
- Tài liệu: YOLO11 Docs
Link to this sectionKiến trúc YOLOv8#
Được ra mắt trước đó một năm, YOLOv8 đã tiên phong trong việc chuyển đổi sang head phát hiện không cần neo (anchor-free), loại bỏ nhu cầu điều chỉnh thủ công các anchor box và đơn giản hóa việc thiết lập hàm mất mát (loss formulation). Kiến trúc của nó dựa chủ yếu vào khối C2f, một thiết kế cân bằng thành công giữa độ sâu mạng và dòng gradient, giúp nó cực kỳ mạnh mẽ trên nhiều ứng dụng thị giác máy tính.
- Tác giả: Glenn Jocher, Ayush Chaurasia và Jing Qiu
- Tổ chức: Ultralytics
- Ngày: 2023-01-10
- GitHub: Kho lưu trữ Ultralytics
- Tài liệu: YOLOv8 Docs
Trong khi YOLOv8 đặt nền móng cho việc phát hiện không cần neo trong hệ sinh thái Ultralytics, YOLO11 đã tinh chỉnh cách tiếp cận này với các cơ chế chú ý không gian, đạt được độ chính xác cao hơn với ít tài nguyên tính toán hơn.
Link to this sectionHiệu năng và Benchmark#
Khi triển khai các mô hình lên các thiết bị biên như Raspberry Pi hoặc các máy chủ hiệu suất cao chạy NVIDIA TensorRT, việc hiểu rõ sự đánh đổi giữa tốc độ và độ chính xác là tối quan trọng. Bảng dưới đây minh họa cách YOLO11 vượt trội hơn YOLOv8 trên tất cả các biến thể kích thước.
| 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) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
Link to this sectionPhân tích các chỉ số#
YOLO11 đạt được Mean Average Precision (mAP) cao hơn đáng kể trong khi đồng thời giảm cả số lượng tham số và các phép tính dấu phẩy động (FLOPs). Ví dụ, mô hình YOLO11m yêu cầu ít tham số hơn 22% so với YOLOv8m nhưng mang lại mAP cao hơn 1,3% trên tập dữ liệu COCO. Hơn nữa, tốc độ suy luận (inference speed) trên CPU khi được xuất sang định dạng ONNX cho thấy YOLO11 nhanh hơn đáng kể, biến nó thành một ứng cử viên xuất sắc cho các triển khai thiếu tăng tốc GPU chuyên dụng.
Link to this sectionLợi thế từ hệ sinh thái Ultralytics#
Bất kể bạn chọn YOLO11 hay YOLOv8, cả hai mô hình đều hưởng lợi từ hệ sinh thái Ultralytics toàn diện, giúp đơn giản hóa đáng kể vòng đời học máy.
Link to this sectionDễ sử dụng và API đơn giản#
Gói Python ultralytics cung cấp một API tinh gọn cho phép các kỹ sư và nhà nghiên cứu đào tạo, xác thực và xuất các mô hình chỉ với một vài dòng code. Điều này trừu tượng hóa các phức tạp điển hình liên quan đến việc thiết lập môi trường học sâu trong PyTorch.
Link to this sectionHiệu quả đào tạo và yêu cầu bộ nhớ#
Không giống như các Vision Transformer nặng nề (như RT-DETR), các mô hình Ultralytics YOLO nổi tiếng với mức tiêu thụ bộ nhớ thấp trong quá trình đào tạo. Hiệu quả bộ nhớ này cho phép các lập trình viên đào tạo các mạng tiên tiến trên các GPU cấp tiêu dùng hoặc các môi trường đám mây như Google Colab mà không gặp phải lỗi hết bộ nhớ (out-of-memory).
Link to this sectionTính linh hoạt giữa các tác vụ thị giác#
Cả YOLO11 và YOLOv8 đều là những mô hình đa nhiệm thực thụ. Ngoài phát hiện đối tượng bằng bounding box tiêu chuẩn, chúng hỗ trợ nguyên bản phân đoạn cá thể, phân loại hình ảnh, ước tính tư thế con người và Oriented Bounding Boxes (OBB) cho hình ảnh từ trên không.
Link to this sectionCác trường hợp sử dụng và Khuyến nghị#
Việc lựa chọn giữa YOLO11 và YOLOv8 phụ thuộc vào yêu cầu cụ thể của dự án, các hạn chế khi triển khai và ưu tiên hệ sinh thái của bạn.
Link to this sectionKhi nào nên chọn YOLO11#
YOLO11 là lựa chọn mạnh mẽ cho:
- Triển khai Edge trong sản xuất: Các ứng dụng thương mại trên các thiết bị như Raspberry Pi hoặc NVIDIA Jetson, nơi độ tin cậy và sự bảo trì tích cực là tối quan trọng.
- Các ứng dụng thị giác đa tác vụ: Các dự án yêu cầu phát hiện, phân đoạn, ước tính tư thế, và OBB trong một khung duy nhất.
- Tạo mẫu và triển khai nhanh: Các nhóm cần di chuyển nhanh từ thu thập dữ liệu sang sản xuất bằng cách sử dụng Ultralytics Python API được tinh giản.
Link to this sectionKhi nào nên chọn YOLOv8#
YOLOv8 được khuyến nghị cho:
- Triển khai đa tác vụ linh hoạt: Các dự án yêu cầu một mô hình đã được chứng minh cho việc phát hiện, phân đoạn, phân loại và ước tính tư thế trong hệ sinh thái Ultralytics.
- Hệ thống sản xuất đã thiết lập: Các môi trường sản xuất hiện có đã được xây dựng trên kiến trúc YOLOv8 với các pipeline triển khai ổn định, đã được kiểm thử tốt.
- Hỗ trợ cộng đồng và hệ sinh thái rộng lớn: Các ứng dụng được hưởng lợi từ các hướng dẫn mở rộng, tích hợp bên thứ ba và tài nguyên cộng đồng tích cực của YOLOv8.
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 sectionVí dụ mã: Bắt đầu#
Việc triển khai và đào tạo một mô hình Ultralytics cực kỳ trực quan. Ví dụ sau đây minh họa cách tải một mô hình YOLO11 đã được đào tạo trước, tinh chỉnh nó trên một tập dữ liệu tùy chỉnh và xuất nó để triển khai trên thiết bị biên sử dụng Apple CoreML:
from ultralytics import YOLO
# Initialize the YOLO11 small model
model = YOLO("yolo11s.pt")
# Train the model efficiently with optimized memory requirements
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Evaluate the validation performance
metrics = model.val()
# Run real-time inference on a test image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Export to CoreML for fast mobile deployment
export_path = model.export(format="coreml")Vì API của Ultralytics đã được tiêu chuẩn hóa, việc nâng cấp một pipeline cũ từ YOLOv8 lên YOLO11 thường chỉ yêu cầu thay đổi chuỗi trọng số từ "yolov8n.pt" thành "yolo11n.pt".
Link to this sectionNhìn về phía trước: Đỉnh cao của Edge AI với YOLO26#
Trong khi YOLO11 đại diện cho một kiến trúc trưởng thành và có năng lực cao, tốc độ đổi mới AI vẫn tiếp tục nhanh chóng. Đối với các lập trình viên bắt đầu các dự án mới yêu cầu hiệu suất tiên tiến nhất, Ultralytics YOLO26 (ra mắt tháng 1 năm 2026) là khuyến nghị tối thượng.
YOLO26 mở rộng ranh giới của thị giác máy tính với một số tính năng đột phá:
- Thiết kế End-to-End không NMS: Dựa trên các khái niệm đã khám phá trong YOLOv10, YOLO26 loại bỏ nguyên bản quá trình xử lý hậu kỳ Non-Maximum Suppression (NMS), dẫn đến độ trễ thấp hơn và dễ dự đoán hơn trên tất cả các phần cứng triển khai.
- Suy luận trên CPU nhanh hơn tới 43%: Bằng cách loại bỏ hoàn toàn nhánh Distribution Focal Loss (DFL), YOLO26 được tối ưu hóa đặc biệt cho các thiết bị điện toán biên thiếu GPU mạnh mẽ.
- MuSGD Optimizer: Lấy cảm hứng từ các kỹ thuật đào tạo mô hình ngôn ngữ lớn (LLM), YOLO26 sử dụng trình tối ưu hóa MuSGD lai, đảm bảo sự hội tụ đào tạo nhanh chóng và ổn định đáng kinh ngạc.
- ProgLoss + STAL: Các hàm mất mát tiên tiến này mang lại những cải tiến đáng chú ý trong việc nhận diện các đối tượng siêu nhỏ và bị che khuất nặng, vốn rất cần thiết cho robot tự hành và phân tích dựa trên drone.
Cho dù bạn dựa vào độ tin cậy đã được kiểm chứng của YOLOv8, kiến trúc tối ưu của YOLO11, hay các khả năng thế hệ mới của YOLO26, Ultralytics Platform đảm bảo bạn có các công cụ cần thiết để đưa các ứng dụng AI thị giác của mình từ ý tưởng đến sản xuất một cách liền mạch. Hãy đảm bảo bạn khám phá các tích hợp mở rộng có sẵn để kết nối các mô hình của bạn với các quy trình doanh nghiệp và bảng điều khiển phân tích.