Meet YOLO26: next-gen vision AI.

Link to this sectionCách xuất mô hình YOLO26 sang TF GraphDef để triển khai#

Khi bạn triển khai các mô hình computer vision tiên tiến, như YOLO26, trong nhiều môi trường khác nhau, bạn có thể gặp phải các vấn đề về tính tương thích. TensorFlow GraphDef của Google, hay TF GraphDef, cung cấp một giải pháp bằng cách đưa ra cách biểu diễn mô hình đã được tuần tự hóa và không phụ thuộc vào nền tảng. Sử dụng định dạng mô hình TF GraphDef, bạn có thể triển khai mô hình YOLO26 của mình trong các môi trường không có sẵn toàn bộ hệ sinh thái TensorFlow, chẳng hạn như thiết bị di động hoặc phần cứng chuyên dụng.

Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn từng bước cách xuất các mô hình Ultralytics YOLO26 sang định dạng mô hình TF GraphDef. Bằng cách chuyển đổi mô hình, bạn có thể tối ưu hóa quy trình triển khai và sử dụng các khả năng computer vision của YOLO26 trong nhiều ứng dụng và nền tảng hơn.

TensorFlow GraphDef model serialization format

Link to this sectionTại sao bạn nên xuất sang TF GraphDef?#

TF GraphDef là một thành phần mạnh mẽ của hệ sinh thái TensorFlow do Google phát triển. Nó có thể được sử dụng để tối ưu hóa và triển khai các mô hình như YOLO26. Xuất sang TF GraphDef cho phép bạn đưa các mô hình từ giai đoạn nghiên cứu vào các ứng dụng thực tế. Nó cho phép các mô hình chạy trong các môi trường không cần đến toàn bộ framework TensorFlow.

Định dạng GraphDef biểu diễn mô hình dưới dạng đồ thị tính toán đã được tuần tự hóa. Điều này cho phép áp dụng các kỹ thuật tối ưu hóa khác nhau như constant folding, quantization và graph transformations. Những tối ưu hóa này đảm bảo quá trình thực thi hiệu quả, giảm mức sử dụng bộ nhớ và tăng tốc độ inference.

Các mô hình GraphDef có thể sử dụng các trình tăng tốc phần cứng như GPU, TPU và chip AI, mang lại hiệu suất vượt trội cho pipeline inference của YOLO26. Định dạng TF GraphDef tạo ra một gói khép kín bao gồm mô hình và các dependency của nó, giúp đơn giản hóa quá trình triển khai và tích hợp vào các hệ thống khác nhau.

Link to this sectionCác tính năng chính của mô hình TF GraphDef#

TF GraphDef cung cấp các tính năng riêng biệt để hợp lý hóa model deployment và tối ưu hóa.

Dưới đây là các đặc điểm chính của nó:

  • Model Serialization (Tuần tự hóa mô hình): TF GraphDef cung cấp phương thức để tuần tự hóa và lưu trữ các mô hình TensorFlow ở định dạng không phụ thuộc vào nền tảng. Cách biểu diễn đã tuần tự hóa này cho phép bạn tải và thực thi mô hình mà không cần codebase Python gốc, giúp việc triển khai dễ dàng hơn.

  • Graph Optimization (Tối ưu hóa đồ thị): TF GraphDef cho phép tối ưu hóa các đồ thị tính toán. Những tối ưu hóa này có thể tăng cường hiệu suất bằng cách hợp lý hóa luồng thực thi, giảm các thành phần dư thừa và điều chỉnh các thao tác cho phù hợp với phần cứng cụ thể.

  • Deployment Flexibility (Tính linh hoạt khi triển khai): Các mô hình được xuất sang định dạng GraphDef có thể được sử dụng trong nhiều môi trường khác nhau, bao gồm các thiết bị hạn chế về tài nguyên, trình duyệt web và các hệ thống có phần cứng chuyên dụng. Điều này mở ra khả năng triển khai rộng rãi hơn cho các mô hình TensorFlow của bạn.

  • Production Focus (Tập trung vào sản xuất): GraphDef được thiết kế cho việc triển khai trong môi trường production. Nó hỗ trợ khả năng thực thi hiệu quả, các tính năng tuần tự hóa và các tối ưu hóa phù hợp với các trường hợp sử dụng thực tế.

Link to this sectionCác tùy chọn triển khai với TF GraphDef#

Trước khi đi sâu vào quy trình xuất mô hình YOLO26 sang TF GraphDef, hãy cùng xem xét một số tình huống triển khai điển hình nơi định dạng này được sử dụng.

Dưới đây là cách bạn có thể triển khai hiệu quả với TF GraphDef trên nhiều nền tảng khác nhau.

  • TensorFlow Serving: Framework này được thiết kế để triển khai các mô hình TensorFlow trong môi trường production. TensorFlow Serving cung cấp khả năng quản lý mô hình, quản lý phiên bản và cơ sở hạ tầng để phục vụ mô hình hiệu quả ở quy mô lớn. Đây là cách liền mạch để tích hợp các mô hình dựa trên GraphDef của bạn vào các dịch vụ web hoặc API production.

  • Thiết bị di động và nhúng: Với các công cụ như TensorFlow Lite, bạn có thể chuyển đổi các model TF GraphDef sang các định dạng được tối ưu hóa cho điện thoại thông minh, máy tính bảng và nhiều loại thiết bị nhúng khác nhau. Sau đó, các model của bạn có thể được sử dụng cho suy luận trên thiết bị (on-device inference), nơi việc thực thi được xử lý cục bộ, thường mang lại hiệu suất cao hơn và khả năng hoạt động ngoại tuyến.

  • Trình duyệt web: TensorFlow.js cho phép triển khai các model TF GraphDef trực tiếp trong trình duyệt web. Nó mở đường cho các ứng dụng phát hiện đối tượng thời gian thực chạy ở phía client, tận dụng khả năng của YOLO26 thông qua JavaScript.

  • Phần cứng chuyên dụng: Bản chất không phụ thuộc vào nền tảng của TF GraphDef cho phép nó nhắm mục tiêu vào các phần cứng tùy chỉnh, chẳng hạn như trình tăng tốc và TPU (Tensor Processing Units). Các thiết bị này có thể cung cấp những lợi thế về hiệu suất cho các mô hình đòi hỏi tính toán chuyên sâu.

Link to this sectionXuất mô hình YOLO26 sang TF GraphDef#

Bạn có thể chuyển đổi mô hình phát hiện đối tượng YOLO26 của mình sang định dạng TF GraphDef, vốn tương thích với nhiều hệ thống, để cải thiện hiệu suất trên các nền tảng.

Link to this sectionCài đặt#

Để cài đặt gói cần thiết, hãy chạy:

Cài đặt
# Install the required package for YOLO26
pip install ultralytics

Để biết hướng dẫn chi tiết và các phương pháp tốt nhất liên quan đến quy trình cài đặt, hãy xem Hướng dẫn cài đặt Ultralytics của chúng tôi. Trong khi cài đặt các gói cần thiết cho YOLO26, nếu bạn gặp bất kỳ khó khăn nào, hãy tham khảo Hướng dẫn các vấn đề thường gặp để tìm giải pháp và mẹo.

Link to this sectionCách sử dụng#

Tất cả các mô hình Ultralytics YOLO26 đều được thiết kế để hỗ trợ xuất ngay lập tức, giúp dễ dàng tích hợp chúng vào quy trình triển khai ưa thích của bạn. Bạn có thể xem danh sách đầy đủ các định dạng xuất và tùy chọn cấu hình được hỗ trợ để chọn thiết lập tốt nhất cho ứng dụng của mình.

Định dạng TF GraphDef hỗ trợ các chế độ Export, Predict, và Validate. Hãy xuất mô hình của bạn, sau đó tải mô hình đã xuất để chạy inference hoặc kiểm tra độ chính xác.

Xuất (Export)
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo26n.pb'
Dự đoán (Predict)
from ultralytics import YOLO

# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
Xác thực
from ultralytics import YOLO

# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionĐối số xuất#

Đối sốLoạiMặc địnhMô tả
formatstr'pb'Định dạng đích cho model được xuất, xác định khả năng tương thích với các môi trường triển khai khác nhau.
imgszint hoặc tuple640Kích thước hình ảnh mong muốn cho đầu vào của model. Có thể là một số nguyên cho hình ảnh vuông hoặc một tuple (height, width) cho các kích thước cụ thể.
quantizeint hoặc strNoneĐã sửa lỗi xuất FP32. GraphDef không hỗ trợ chuyển đổi độ chính xác FP16, INT8 hoặc W8A16 tại thời điểm xuất.
batchint1Chỉ định kích thước batch inference của model khi xuất hoặc số lượng ảnh tối đa mà model đã xuất sẽ xử lý đồng thời ở chế độ predict.
devicestrNoneChỉ định thiết bị để xuất: CPU (device=cpu), MPS cho Apple silicon (device=mps).

Để biết thêm chi tiết về quy trình xuất, hãy truy cập trang tài liệu của Ultralytics về việc xuất.

Link to this sectionTriển khai các mô hình TF GraphDef của YOLO26 đã xuất#

Sau khi đã xuất mô hình YOLO26 sang định dạng TF GraphDef, bước tiếp theo là triển khai. Bước đầu tiên chính và được khuyến nghị để chạy mô hình TF GraphDef là sử dụng phương thức YOLO("model.pb"), như đã hiển thị trước đó trong đoạn mã sử dụng.

Tuy nhiên, để biết thêm thông tin về việc triển khai các mô hình TF GraphDef của bạn, hãy xem qua các tài nguyên sau:

  • TensorFlow Serving: Hướng dẫn về TensorFlow Serving giải thích cách triển khai và phục vụ các mô hình machine learning một cách hiệu quả trong môi trường production.

  • TensorFlow Lite: Trang này mô tả cách chuyển đổi các mô hình machine learning sang định dạng được tối ưu hóa cho việc inference trên thiết bị với TensorFlow Lite.

  • TensorFlow.js: Hướng dẫn về chuyển đổi mô hình giải thích cách chuyển đổi các mô hình TensorFlow hoặc Keras sang định dạng TensorFlow.js để sử dụng trong các ứng dụng web.

Link to this sectionTóm tắt#

Trong hướng dẫn này, chúng tôi đã khám phá cách xuất các mô hình Ultralytics YOLO26 sang định dạng TF GraphDef. Bằng cách thực hiện việc này, bạn có thể triển khai linh hoạt các mô hình YOLO26 đã tối ưu hóa của mình trong các môi trường khác nhau.

Để biết thêm chi tiết về cách sử dụng, hãy truy cập tài liệu chính thức về TF GraphDef.

Để biết thêm thông tin về việc tích hợp Ultralytics YOLO26 với các nền tảng và framework khác, hãy xem trang hướng dẫn tích hợp của chúng tôi.

Link to this sectionCâu hỏi thường gặp#

Link to this sectionLàm cách nào để xuất mô hình YOLO26 sang định dạng TF GraphDef?#

Các mô hình Ultralytics YOLO26 có thể được xuất sang định dạng TensorFlow GraphDef (TF GraphDef) một cách liền mạch. Định dạng này cung cấp cách biểu diễn mô hình đã được tuần tự hóa, không phụ thuộc vào nền tảng, lý tưởng để triển khai trong các môi trường đa dạng như di động và web. Để xuất mô hình YOLO26 sang TF GraphDef, hãy làm theo các bước sau:

Cách sử dụng
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to TF GraphDef format
model.export(format="pb")  # creates 'yolo26n.pb'

# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo26n.pb")

# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")

Để biết thêm thông tin về các tùy chọn xuất khác nhau, hãy truy cập tài liệu của Ultralytics về xuất mô hình.

Link to this sectionLợi ích của việc sử dụng TF GraphDef để triển khai mô hình YOLO26 là gì?#

Việc xuất các mô hình YOLO26 sang định dạng TF GraphDef mang lại nhiều lợi ích, bao gồm:

  1. Platform Independence (Độc lập nền tảng): TF GraphDef cung cấp định dạng không phụ thuộc vào nền tảng, cho phép triển khai mô hình trên nhiều môi trường khác nhau bao gồm di động và trình duyệt web.
  2. Optimizations (Tối ưu hóa): Định dạng này cho phép thực hiện một số tối ưu hóa như constant folding, quantization và graph transformations, giúp nâng cao hiệu quả thực thi và giảm mức sử dụng bộ nhớ.
  3. Hardware Acceleration (Tăng tốc phần cứng): Các mô hình ở định dạng TF GraphDef có thể tận dụng các trình tăng tốc phần cứng như GPU, TPU và chip AI để tăng hiệu suất.

Đọc thêm về các lợi ích trong phần TF GraphDef trong tài liệu của chúng tôi.

Link to this sectionTại sao tôi nên sử dụng Ultralytics YOLO26 thay vì các mô hình object detection khác?#

Ultralytics YOLO26 mang lại nhiều lợi thế so với các mô hình khác như YOLOv5 và YOLOv7. Một số lợi ích chính bao gồm:

  1. Hiệu suất đỉnh cao: YOLO26 cung cấp tốc độ và độ chính xác vượt trội cho các tác vụ object detection, instance segmentation, semantic segmentation, và classification thời gian thực.
  2. Dễ sử dụng: Sở hữu API thân thiện với người dùng cho việc huấn luyện, kiểm tra, dự đoán và xuất mô hình, giúp cả người mới bắt đầu và các chuyên gia đều có thể dễ dàng tiếp cận.
  3. Khả năng tương thích rộng: Hỗ trợ nhiều định dạng xuất bao gồm ONNX, TensorRT, CoreML và TensorFlow, mang lại các tùy chọn triển khai đa dạng.

Khám phá thêm thông tin chi tiết trong phần giới thiệu về YOLO26 của chúng tôi.

Link to this sectionLàm cách nào để triển khai mô hình YOLO26 trên phần cứng chuyên dụng bằng TF GraphDef?#

Sau khi mô hình YOLO26 được xuất sang định dạng TF GraphDef, bạn có thể triển khai nó trên nhiều nền tảng phần cứng chuyên dụng khác nhau. Các tình huống triển khai điển hình bao gồm:

  • TensorFlow Serving: Sử dụng TensorFlow Serving để triển khai mô hình có thể mở rộng trong môi trường production. Nó hỗ trợ quản lý mô hình và phục vụ hiệu quả.
  • Thiết bị di động: Chuyển đổi mô hình TF GraphDef sang TensorFlow Lite, được tối ưu hóa cho thiết bị di động và nhúng, cho phép inference trên thiết bị.
  • Trình duyệt web: Triển khai các mô hình bằng TensorFlow.js để thực hiện inference phía client trong các ứng dụng web.
  • AI Accelerators: Tận dụng TPU và các chip AI tùy chỉnh để tăng tốc quá trình inference.

Xem phần tùy chọn triển khai để biết thông tin chi tiết.

Link to this sectionTôi có thể tìm các giải pháp cho các vấn đề thường gặp khi xuất mô hình YOLO26 ở đâu?#

Để khắc phục sự cố thường gặp với việc xuất mô hình YOLO26, Ultralytics cung cấp các hướng dẫn và tài nguyên toàn diện. Nếu bạn gặp vấn đề trong quá trình cài đặt hoặc xuất mô hình, hãy tham khảo:

Những tài nguyên này sẽ giúp bạn giải quyết hầu hết các vấn đề liên quan đến việc xuất và triển khai mô hình YOLO26.

Bình luận