Meet YOLO26: next-gen vision AI.

Link to this sectionTìm hiểu cách xuất sang định dạng TF SavedModel từ YOLO26#

Việc triển khai các model machine learning có thể gặp nhiều thách thức. Tuy nhiên, việc sử dụng một định dạng model linh hoạt và hiệu quả có thể giúp công việc của bạn dễ dàng hơn. TF SavedModel là một framework machine learning mã nguồn mở được TensorFlow sử dụng để tải các model machine learning theo cách nhất quán. Nó giống như một chiếc vali cho các model TensorFlow, giúp chúng dễ dàng mang theo và sử dụng trên các thiết bị và hệ thống khác nhau.

Tìm hiểu cách xuất sang TF SavedModel từ các model Ultralytics YOLO26 có thể giúp bạn triển khai model dễ dàng trên các nền tảng và môi trường khác nhau. Trong hướng dẫn này, chúng tôi sẽ đi qua cách chuyển đổi model của bạn sang định dạng TF SavedModel, đơn giản hóa quy trình thực hiện inference với model của bạn trên các thiết bị khác nhau.

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

Định dạng TensorFlow SavedModel là một phần của hệ sinh thái TensorFlow do Google phát triển như dưới đây. Nó được thiết kế để lưu và tuần tự hóa các model TensorFlow một cách liền mạch. Nó đóng gói chi tiết đầy đủ của các model như kiến trúc, trọng số và thậm chí cả thông tin biên dịch. Điều này giúp việc chia sẻ, triển khai và tiếp tục huấn luyện trên các môi trường khác nhau trở nên đơn giản.

TensorFlow SavedModel export format structure

TF SavedModel có một ưu điểm quan trọng: khả năng tương thích. Nó hoạt động tốt với TensorFlow Serving, TensorFlow Lite và TensorFlow.js. Khả năng tương thích này giúp việc chia sẻ và triển khai model trên nhiều nền tảng khác nhau, bao gồm cả ứng dụng web và di động, trở nên dễ dàng hơn. Định dạng TF SavedModel rất hữu ích cho cả nghiên cứu và sản xuất. Nó cung cấp một cách thống nhất để quản lý các model, đảm bảo chúng sẵn sàng cho mọi ứng dụng.

Link to this sectionCác tính năng chính của TF SavedModels#

Dưới đây là các tính năng chính khiến TF SavedModel trở thành một lựa chọn tuyệt vời cho các lập trình viên AI:

  • Tính di động: TF SavedModel cung cấp định dạng tuần tự hóa trung lập về ngôn ngữ, có khả năng khôi phục và khép kín. Chúng cho phép các hệ thống và công cụ cấp cao hơn tạo, tiêu thụ và biến đổi các model TensorFlow. Các SavedModels có thể được chia sẻ và triển khai dễ dàng trên các nền tảng và môi trường khác nhau.

  • Dễ dàng triển khai: TF SavedModel kết hợp biểu đồ tính toán, các tham số đã huấn luyện và metadata cần thiết vào một gói duy nhất. Chúng có thể được tải và sử dụng dễ dàng cho inference mà không cần mã nguồn gốc đã xây dựng model. Điều này làm cho việc triển khai các model TensorFlow trở nên đơn giản và hiệu quả trong nhiều môi trường sản xuất.

  • Quản lý tài nguyên: TF SavedModel hỗ trợ bao gồm các tài nguyên bên ngoài như từ vựng, embeddings hoặc bảng tra cứu. Các tài nguyên này được lưu trữ cùng với định nghĩa biểu đồ và các biến, đảm bảo chúng khả dụng khi model được tải. Tính năng này đơn giản hóa việc quản lý và phân phối các model dựa vào tài nguyên bên ngoài.

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

Trước khi đi sâu vào quy trình xuất các model YOLO26 sang định dạng TF SavedModel, hãy cùng khám phá một số kịch bản triển khai điển hình nơi định dạng này được sử dụng.

TF SavedModel cung cấp một loạt các tùy chọn để triển khai các model machine learning của bạn:

  • TensorFlow Serving: TensorFlow Serving là một hệ thống phục vụ linh hoạt, hiệu suất cao được thiết kế cho các môi trường sản xuất. Nó hỗ trợ nguyên bản các TF SavedModels, giúp dễ dàng triển khai và phục vụ model của bạn trên các nền tảng đám mây, máy chủ on-premises hoặc edge devices.

  • Nền tảng đám mây: Các nhà cung cấp đám mây lớn như Google Cloud Platform (GCP), Amazon Web Services (AWS)Microsoft Azure cung cấp các dịch vụ để triển khai và chạy các model TensorFlow, bao gồm cả TF SavedModels. Các dịch vụ này cung cấp hạ tầng được quản lý và có khả năng mở rộng, cho phép bạn triển khai và mở rộng quy mô model của mình một cách dễ dàng.

  • Thiết bị di động và nhúng: TensorFlow Lite, một giải pháp nhẹ để chạy các model machine learning trên thiết bị di động, nhúng và IoT, hỗ trợ chuyển đổi TF SavedModels sang định dạng TensorFlow Lite. Điều này cho phép bạn triển khai model của mình trên nhiều loại thiết bị, từ điện thoại thông minh và máy tính bảng đến vi điều khiển và các thiết bị edge.

  • TensorFlow Runtime: TensorFlow Runtime (tfrt) là một runtime hiệu suất cao để thực thi các biểu đồ TensorFlow. Nó cung cấp các API cấp thấp để tải và chạy các TF SavedModels trong môi trường C++. TensorFlow Runtime mang lại hiệu suất tốt hơn so với runtime TensorFlow tiêu chuẩn. Nó phù hợp cho các kịch bản triển khai yêu cầu inference có độ trễ thấp và tích hợp chặt chẽ với các codebase C++ hiện có.

Link to this sectionXuất các model YOLO26 sang TF SavedModel#

Bằng cách xuất các model YOLO26 sang định dạng TF SavedModel, bạn tăng cường khả năng thích ứng và tính dễ triển khai trên nhiều nền tảng khác nhau.

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 thực hành 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. 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 về các vấn đề phổ biến để tìm giải pháp và mẹo.

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

Tất cả các Ultralytics YOLO26 models được thiết kế để hỗ trợ xuất ngay khi cài đặt, giúp bạn dễ dàng tích hợp chúng vào quy trình triển khai ưu tiên của mình. Bạn có thể view the full list of supported export formats and configuration options để chọn thiết lập tốt nhất cho ứng dụng của mình.

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

Export
from ultralytics import YOLO

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

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo26n_saved_model'
Predict
from ultralytics import YOLO

# Load the exported TF SavedModel model
model = YOLO("./yolo26n_saved_model")

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

# Load the exported TF SavedModel model
model = YOLO("./yolo26n_saved_model")

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

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

Đối sốKiểuMặc địnhMô tả
formatstr'saved_model'Đị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 ảnh mong muốn cho đầu vào của model. Có thể là một số nguyên cho ảnh vuông hoặc một tuple (height, width) cho các kích thước cụ thể.
kerasboolFalseCho phép xuất sang định dạng Keras, mang lại khả năng tương thích với TensorFlow serving và các API.
int8boolFalseKích hoạt định lượng INT8, nén model hơn nữa và tăng tốc suy luận với mức giảm accuracy tối thiểu, chủ yếu dành cho các thiết bị biên (edge devices).
nmsboolFalseThêm Non-Maximum Suppression (NMS), cần thiết cho việc hậu xử lý phát hiện chính xác và hiệu quả.
batchint1Chỉ định kích thước suy luận theo lô (batch) của mô hình xuất hoặc số lượng hình ảnh tối đa mà mô hình xuất sẽ xử lý đồng thời trong chế độ predict.
datastr'coco8.yaml'Đường dẫn đến tệp cấu hình dataset (mặc định: coco8.yaml), rất cần thiết cho việc lượng tử hóa.
fractionfloat1.0Chỉ định phần trăm của dataset để sử dụng cho hiệu chỉnh lượng hóa INT8. Cho phép hiệu chỉnh trên một tập hợp con của toàn bộ dataset, hữu ích cho các thử nghiệm hoặc khi tài nguyên bị hạn chế. Nếu không được chỉ định khi INT8 được bật, toàn bộ dataset sẽ được sử dụng.
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 model.

Link to this sectionTriển khai các model YOLO26 TF SavedModel đã xuất#

Bây giờ bạn đã xuất model YOLO26 của mình sang định dạng TF SavedModel, bước tiếp theo là triển khai nó. Bước đầu tiên quan trọng và được khuyến nghị để chạy một model TF SavedModel là sử dụng phương thức YOLO("yolo26n_saved_model/"), như đã hiển thị trước đó trong đoạn mã sử dụng.

Tuy nhiên, để biết hướng dẫn chi tiết về cách triển khai các model TF SavedModel của bạn, hãy xem qua các tài nguyên sau:

  • TensorFlow Serving: Đây là tài liệu dành cho lập trình viên về cách triển khai các model TF SavedModel của bạn bằng TensorFlow Serving.

  • Chạy TensorFlow SavedModel trong Node.js: Một bài đăng trên blog TensorFlow về cách chạy TensorFlow SavedModel trong Node.js trực tiếp mà không cần chuyển đổi.

  • Triển khai trên đám mây: Một bài đăng trên blog TensorFlow về cách triển khai model TensorFlow SavedModel trên Cloud AI Platform.

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 model Ultralytics YOLO26 sang định dạng TF SavedModel. Bằng cách xuất sang TF SavedModel, bạn có được sự linh hoạt để tối ưu hóa, triển khai và mở rộng quy mô các model YOLO26 trên nhiều nền tảng.

Để 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 của TF SavedModel.

Để 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, đừng quên xem trang hướng dẫn tích hợp của chúng tôi. Nó chứa đầy các tài nguyên tuyệt vời để giúp bạn tận dụng tối đa YOLO26 trong các dự án của mình.

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

Link to this sectionLàm thế nào để tôi xuất một model Ultralytics YOLO sang định dạng TensorFlow SavedModel?#

Việc xuất một model Ultralytics YOLO sang định dạng TensorFlow SavedModel rất đơn giản. Bạn có thể sử dụng Python hoặc CLI để thực hiện việc này:

Xuất YOLO26 sang TF SavedModel
from ultralytics import YOLO

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

# Export the model to TF SavedModel format
model.export(format="saved_model")  # creates '/yolo26n_saved_model'

# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo26n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")

Tham khảo tài liệu Export của Ultralytics để biết thêm chi tiết.

Link to this sectionTại sao tôi nên sử dụng định dạng TensorFlow SavedModel?#

Định dạng TensorFlow SavedModel mang lại một số lợi thế cho triển khai model:

  • Tính di động: Nó cung cấp định dạng trung lập về ngôn ngữ, giúp việc chia sẻ và triển khai model trên các môi trường khác nhau trở nên dễ dàng.
  • Khả năng tương thích: Tích hợp liền mạch với các công cụ như TensorFlow Serving, TensorFlow Lite và TensorFlow.js, vốn rất cần thiết để triển khai model trên nhiều nền tảng, bao gồm các ứng dụng web và di động.
  • Đóng gói hoàn chỉnh: Mã hóa kiến trúc model, trọng số và thông tin biên dịch, cho phép chia sẻ và tiếp tục huấn luyện một cách đơn giản.

Để biết thêm các lợi ích và tùy chọn triển khai, hãy xem các tùy chọn triển khai model Ultralytics YOLO.

Link to this sectionCác kịch bản triển khai điển hình cho TF SavedModel là gì?#

TF SavedModel có thể được triển khai trong nhiều môi trường khác nhau, bao gồm:

  • TensorFlow Serving: Lý tưởng cho các môi trường sản xuất yêu cầu phục vụ model hiệu suất cao và có khả năng mở rộng.
  • Nền tảng đám mây: Hỗ trợ các dịch vụ đám mây lớn như Google Cloud Platform (GCP), Amazon Web Services (AWS) và Microsoft Azure để triển khai model có khả năng mở rộng.
  • Thiết bị di động và nhúng: Sử dụng TensorFlow Lite để chuyển đổi TF SavedModels cho phép triển khai trên thiết bị di động, thiết bị IoT và vi điều khiển.
  • TensorFlow Runtime: Dành cho các môi trường C++ cần inference với độ trễ thấp và hiệu suất tốt hơn.

Để biết các tùy chọn triển khai chi tiết, hãy truy cập các hướng dẫn chính thức về triển khai các model TensorFlow.

Link to this sectionLàm thế nào để tôi cài đặt các gói cần thiết để xuất các model YOLO26?#

Để xuất các model YOLO26, bạn cần cài đặt gói ultralytics. Chạy lệnh sau trong terminal của bạn:

pip install ultralytics

Để biết hướng dẫn cài đặt chi tiết hơn và các phương pháp tốt nhất, hãy tham khảo hướng dẫn Cài đặt Ultralytics của chúng tôi. Nếu bạn gặp bất kỳ vấn đề nào, hãy tham khảo hướng dẫn Các vấn đề thường gặp của chúng tôi.

Link to this sectionCác tính năng chính của định dạng TensorFlow SavedModel là gì?#

Định dạng TF SavedModel có lợi cho các lập trình viên AI nhờ các tính năng sau:

  • Tính di động: Cho phép chia sẻ và triển khai trên nhiều môi trường một cách dễ dàng.
  • Dễ dàng triển khai: Đóng gói biểu đồ tính toán, các tham số đã huấn luyện và metadata vào một gói duy nhất, giúp đơn giản hóa việc tải và inference.
  • Quản lý tài nguyên: Hỗ trợ các tài nguyên bên ngoài như từ vựng, đảm bảo chúng khả dụng khi model tải.

Để biết thêm chi tiết, hãy khám phá tài liệu TensorFlow chính thức.

Bình luận