Ultralytics YOLO27:

Ultralytics YOLO27#

YOLO27 sắp ra mắt

Các model YOLO27 đang trong giai đoạn R&D cuối cùng, dự kiến ra mắt vào cuối năm nay. Các model này chưa có sẵn và chưa có ngày ra mắt cụ thể. Trang này giới thiệu trước các model sắp ra mắt; tính năng và benchmark có thể thay đổi trước khi phát hành. Các ví dụ mã bên dưới dành để sử dụng sau khi model và hỗ trợ package được phát hành, và sẽ không hoạt động với package công khai hiện tại. Weights, cấu hình và mã triển khai của model hiện chưa được phát hành. Đăng ký danh sách chờ YOLO27 để là người đầu tiên nhận tin khi model ra mắt.

Tổng quan#

Ultralytics YOLO27 là một dòng model thị giác thời gian thực; các model phát hiện sử dụng hai thiết kế bổ trợ cho nhau: kiến trúc CNN tinh gọn cho các model N và S nhỏ gọn, và kiến trúc dựa trên query, không cần NMS cho các model M và L lớn hơn. Cả hai thiết kế đều triển khai qua cùng một giao diện. Các model phát hiện N và S mặc định dùng head one-to-many với NMS; sử dụng nms=False để chọn head không cần NMS.

YOLO27 là dòng model sắp ra mắt trong series Ultralytics YOLO, kế nhiệm YOLO26. Dòng model này có bốn kích cỡ — N, S, M và L — và hỗ trợ phát hiện đối tượng, phân đoạn instance, phân đoạn ngữ nghĩa, ước tính độ sâu, phân loại, ước tính tư thế và phát hiện đối tượng có hướng. Thiết kế kép chỉ áp dụng cho tác vụ phát hiện; mọi tác vụ khác đều sử dụng kiến trúc CNN.

Ở bốn kích cỡ phát hiện, YOLO27 đạt 42.3-60.4 mAP trên COCO với độ trễ 0.62-2.32 ms trên NVIDIA RTX PRO 6000 — và đạt tới 61.2 mAP với YOLO27l ở kích thước đầu vào lớn hơn, 800 pixel. YOLO27l là model Ultralytics đầu tiên vượt mốc 60 mAP trên COCO, trong khi YOLO27n/s nhỏ gọn cải thiện độ chính xác so với YOLO26n/s với tốc độ gần như tương đương.

Bắt đầu nhanh (sau khi phát hành)
from ultralytics import YOLO

model = YOLO("yolo27n.pt")  # load a pretrained YOLO27n model
results = model("path/to/bus.jpg")  # run inference

Tính năng chính#

  • Phát hiện hai tỷ lệ Các detector tiêu chuẩn dự đoán đối tượng trên ba feature map — mịn, trung bình và thô. YOLO27 N và S bỏ feature map trung bình, chỉ dự đoán trên feature map mịn (cho đối tượng nhỏ) và feature map thô (cho đối tượng lớn), đồng thời dùng hệ số co giãn cố định trên các feature đã hợp nhất để cân bằng hai tỷ lệ. Cách này loại bỏ phần lớn phép tính ở detection head, giúp model chạy nhanh hơn mà vẫn training ổn định như thiết kế đầy đủ ba tỷ lệ.

  • Phát hiện vật thể nhỏ tốt hơn Giai đoạn đặc trưng ban đầu, có độ phân giải cao, được mở rộng để có thể nắm bắt nhiều chi tiết tinh hơn. Kết hợp với bản đồ dự đoán tinh được giữ lại, điều này cải thiện khả năng định vị và hồi quy cho vật thể nhỏ — nhóm khó nhất đối với các model gọn nhẹ.

  • Giám sát căn chỉnh vùng tiền cảnh Trong quá trình huấn luyện, một nhánh nhẹ bổ sung học cách phân biệt "vật thể" với "nền" tại mọi vị trí. Nhánh này được thiết kế để thu hẹp khoảng cách giữa cơ chế giám sát dày đặc one-to-many được dùng khi huấn luyện và head one-to-one tạo ra dự đoán cuối cùng — giảm khoảng cách độ chính xác từ 0.9/0.8 mAP trên YOLO26n/s xuống chỉ còn 0.4 mAP trên YOLO27n/s, nhờ đó head one-to-one khi triển khai giữ được gần như toàn bộ độ chính xác trong quá trình huấn luyện. Nhánh này chỉ được dùng khi huấn luyện và bị loại bỏ trong quá trình suy luận và export, vì vậy không phát sinh chi phí khi triển khai.

  • Phát hiện dựa trên query không cần NMS Các model lớn hơn thay thế dự đoán dày đặc bằng decoder Transformer, tinh chỉnh một tập query đối tượng cố định và trực tiếp xuất ra các kết quả phát hiện cuối cùng — không cần hậu xử lý loại bỏ hộp giới hạn không cực đại. YOLO27m kết hợp decoder này với backbone tích chập kiểu YOLO26 đã được kiểm chứng, trong khi YOLO27l giữ nguyên neck FPN/PAN và thay bằng backbone UltraViT sử dụng self-attention ở giai đoạn sâu nhất để nắm bắt ngữ cảnh toàn cục.

  • Một giao diện đơn giản Cả hai kiến trúc đều được sử dụng thông qua cùng một giao diện Python YOLO. Pipeline huấn luyện, validation, dự đoán và export phù hợp sẽ được tự động chọn dựa trên model, vì vậy code được viết cho một kích thước YOLO27 vẫn hoạt động nguyên vẹn với các kích thước còn lại.

Nên sử dụng YOLO27 nào?#

Hướng dẫn sau đây dành cho việc chọn model sau khi YOLO27 được phát hành. Với các dự án hiện nay, hãy dùng YOLO26.

  • YOLO27n / YOLO27s — thiết bị edge, drone và video thời gian thực: các model nhanh nhất trong dòng, với khả năng phát hiện vật thể nhỏ được cải thiện nhờ thiết kế hai tỷ lệ. Xem NVIDIA Jetson và Raspberry Pi để biết cách triển khai dành riêng cho từng thiết bị.
  • YOLO27m — điểm cân bằng tối ưu giữa độ chính xác và tốc độ trên GPU: cải thiện độ chính xác so với YOLO26m ở độ trễ tương đương, phù hợp làm lựa chọn mặc định cho triển khai GPU trong môi trường production.
  • YOLO27l — ứng dụng yêu cầu độ chính xác cao: model Ultralytics đầu tiên vượt 60 mAP trên COCO, đạt 61.2 mAP ở kích thước đầu vào lớn hơn mà vẫn chạy thời gian thực trên GPU.

Để so sánh với các dòng model khác, xem tất cả model Ultralytics. Để đo lường sự đánh đổi giữa độ chính xác và tốc độ trên phần cứng của bạn thay vì của chúng tôi, xem chế độ Benchmark.


Các tác vụ và chế độ được hỗ trợ#

Bảng sau xem trước kế hoạch hỗ trợ tác vụ và chế độ trên bốn kích thước model YOLO27. Dấu kiểm cho biết hỗ trợ dự kiến khi phát hành, không phải khả năng cung cấp công khai hiện tại; tất cả các tệp model được liệt kê đều chưa phát hành.

ModelTên tệpTác vụHuấn luyệnValidationSuy luậnExport
YOLO27yolo27n.pt yolo27s.pt yolo27m.pt yolo27l.ptPhát hiện✅✅✅✅
YOLO27-segyolo27n-seg.pt yolo27s-seg.pt yolo27m-seg.pt yolo27l-seg.ptPhân đoạn đối tượng✅✅✅✅
YOLO27-semyolo27n-sem.pt yolo27s-sem.pt yolo27m-sem.pt yolo27l-sem.ptPhân đoạn ngữ nghĩa✅✅✅✅
YOLO27-depthyolo27n-depth.pt yolo27s-depth.pt yolo27m-depth.pt yolo27l-depth.ptƯớc lượng độ sâu✅✅✅✅
YOLO27-clsyolo27n-cls.pt yolo27s-cls.pt yolo27m-cls.pt yolo27l-cls.ptPhân loại✅✅✅✅
YOLO27-poseyolo27n-pose.pt yolo27s-pose.pt yolo27m-pose.pt yolo27l-pose.ptPose/Keypoint✅✅✅✅
YOLO27-obbyolo27n-obb.pt yolo27s-obb.pt yolo27m-obb.pt yolo27l-obb.ptPhát hiện hộp định hướng✅✅✅✅

Các model YOLO27 Detect, Segment, Pose và OBB cũng hoạt động với chế độ Track, chạy trên chế độ predict để theo dõi nhiều đối tượng qua các khung hình video.

Hai hướng kiến trúc

YOLO27 detection sử dụng hai thiết kế trong cùng một giao diện: các kích thước N và S dùng kiến trúc CNN tinh gọn, trong khi các kích thước M và L dùng kiến trúc dựa trên query, không cần NMS. Tất cả tác vụ khác đều sử dụng kiến trúc CNN.


Chỉ số hiệu năng#

Độ chính xác phát hiện được báo cáo trên tập validation COCO. Xem Chỉ số hiệu năng YOLO để biết giải thích về mAP, precision và recall. Tốc độ suy luận được đo trên NVIDIA RTX PRO 6000 (TensorRT 11, FP16) cho GPU và AMD EPYC 9655 (ONNX Runtime, FP32) cho CPU. Sau khi phát hành, có thể tái tạo các số liệu độ chính xác bằng yolo val model=yolo27n.pt data=coco.yaml.

Kết quả sơ bộ

Các kết quả nghiên cứu này có thể thay đổi trong quá trình R&D cuối cùng. Trọng số công khai và hướng dẫn tái tạo sẽ được cung cấp cùng với bản phát hành.

Hiệu năng

Xem Tài liệu Detection để biết ví dụ sử dụng các model này được huấn luyện trên COCO, bao gồm 80 class được huấn luyện trước. Bảng sử dụng đầu vào 640 pixel; phần tổng quan cũng báo cáo YOLO27l ở 800 pixel.

Modelkích thước
(pixel)
mAPval
50-95
Tốc độ
CPU ONNX
(ms)
Tốc độ
RTX PRO 6000 TensorRT11
(ms)
params
(M)
FLOPs
(B)
YOLO27n64042.316.1 ± 1.60.62 ± 0.003.07.2
YOLO27s64049.633.2 ± 0.10.79 ± 0.0011.828.2
YOLO27m64055.867.2 ± 0.31.39 ± 0.0022.865.0
YOLO27l64060.4149.6 ± 1.42.32 ± 0.0072.3165.3

Giá trị Params và FLOPs áp dụng cho model đã hợp nhất sau khi gộp Conv/BatchNorm và loại bỏ nhánh detection không sử dụng. Với tác vụ detection, số đo tốc độ chọn head không cần NMS bằng nms=False; độ chính xác của N/S phụ thuộc vào head được chọn. Các checkpoint pretrained vẫn giữ nguyên kiến trúc huấn luyện đầy đủ và có thể cho số liệu cao hơn.


Ví dụ sử dụng#

Phần này cung cấp các ví dụ đơn giản về huấn luyện và suy luận YOLO27. Để xem tài liệu đầy đủ về các chế độ này và các chế độ khác, hãy xem các trang tài liệu Predict, Train, Val và Export. Với dataset tùy chỉnh, hãy xem Mẹo để đạt kết quả huấn luyện tốt nhất và Hướng dẫn tinh chỉnh siêu tham số.

Lưu ý rằng ví dụ bên dưới dành cho các model YOLO27 Detect dùng cho phát hiện đối tượng. Để biết thêm các tác vụ được hỗ trợ, hãy xem tài liệu Segment và Classify.

Huấn luyện và suy luận (sau khi phát hành)

Có thể truyền các model *.pt được huấn luyện trước trên PyTorch cũng như các tệp cấu hình *.yaml cho class YOLO() để tạo một instance model trong Python:

from ultralytics import YOLO

# Nạp model YOLO27n được huấn luyện trước trên COCO
model = YOLO("yolo27n.pt")

# Chạy suy luận bằng model YOLO27n trên ảnh 'bus.jpg'
results = model("path/to/bus.jpg")

# Huấn luyện model trên dataset mẫu COCO8 trong 100 epoch
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

Câu hỏi thường gặp#

    • Phát hiện hai tỷ lệ (N/S): bỏ bản đồ dự đoán trung bình để có detection head nhanh hơn mà vẫn duy trì độ chính xác cạnh tranh
    • Phát hiện vật thể nhỏ tốt hơn (N/S): mở rộng giai đoạn trích xuất đặc trưng ban đầu để cải thiện định vị vật thể nhỏ
    • Giám sát căn chỉnh vùng tiền cảnh (N/S): thu hẹp khoảng cách độ chính xác giữa one-to-many và one-to-one từ 0.9/0.8 mAP trên YOLO26n/s xuống còn 0.4 mAP trên YOLO27n/s, không phát sinh chi phí suy luận
    • Phát hiện dựa trên query, không cần NMS (M/L): decoder Transformer xuất trực tiếp các detection cuối cùng
    • Một giao diện đơn giản: cả hai kiến trúc đều chạy thông qua cùng một class YOLO
  • Chưa — YOLO27 chưa được phát hành. Hãy tiếp tục dùng YOLO26 cho các dự án hiện tại. Kết quả sơ bộ cho thấy độ chính xác được cải thiện ở mọi kích thước model, trong đó YOLO27l vượt 60 mAP trên COCO. Hãy đánh giá các model chính thức sau khi phát hành với workload của bạn trước khi chuyển đổi.

  • Sau khi phát hành, YOLO27 dự kiến sẽ dùng cùng class YOLO và cùng API train/val/predict/export như YOLO26 — pipeline phù hợp (CNN hoặc dựa trên query) sẽ được tự động chọn dựa trên model. Khi YOLO27 được hỗ trợ và có sẵn weights, việc thay yolo26n.pt bằng yolo27n.pt là thay đổi lựa chọn model dự kiến.

  • Hầu hết detector dự đoán trên ba feature map ở các độ phân giải khác nhau. YOLO27 N và S giữ lại bản đồ chi tiết mà các vật thể nhỏ phụ thuộc vào cùng bản đồ thô cần thiết cho các vật thể lớn, đồng thời bỏ qua bản đồ trung bình. Điều này giúp giảm đáng kể phần tính toán của detection head; các cải tiến huấn luyện nêu trên giúp duy trì sự cân bằng cạnh tranh giữa độ chính xác và độ trễ.

  • YOLO27l là model Ultralytics đầu tiên vượt 60 mAP trên COCO, đạt 60.4 mAP với đầu vào 640 pixel (2.3 ms trên NVIDIA RTX PRO 6000) và 61.2 mAP với đầu vào 800 pixel (2.9 ms). Model kết hợp backbone UltraViT, hợp nhất đặc trưng đa tỷ lệ và detector dựa trên query trực tiếp tạo ra các detection cuối cùng mà không cần NMS.

  • YOLO27 đang trong giai đoạn R&D cuối cùng và dự kiến ra mắt vào cuối năm nay. Hiện chưa có ngày ra mắt cụ thể. Weights của model và code triển khai chưa được công khai.

  • Sau khi YOLO27 được phát hành, hãy xem Quickstart để cài đặt hoặc cập nhật package ultralytics, sau đó nạp model như minh họa bên dưới. Ví dụ này dành cho thời điểm sau khi phát hành:

    from ultralytics import YOLO
    
    # Nạp model YOLO27 nano được huấn luyện trước
    model = YOLO("yolo27n.pt")
    
    # Chạy suy luận trên một ảnh
    results = model("image.jpg")

    Xem Ví dụ sử dụng để biết các ví dụ huấn luyện và suy luận, hoặc xem hướng dẫn Val và Export cho các chế độ đó.

Người đóng góp

Bình luận