Hiểu cách xuất khẩu sang TF SavedModel Định dạng từ YOLO11
Việc triển khai các mô hình học máy có thể là một thách thức. Tuy nhiên, sử dụng định dạng mô hình hiệu quả và linh hoạt có thể giúp công việc của bạn dễ dàng hơn. TF SavedModel là một khuôn khổ học máy nguồn mở được sử dụng bởi TensorFlow để tải các mô hình học máy theo cách nhất quán. Nó giống như một chiếc vali để TensorFlow các mẫu mã, giúp bạn dễ dàng mang theo và sử dụng trên nhiều thiết bị và hệ thống khác nhau.
Học cách xuất khẩu sang TF SavedModel từ các mô hình Ultralytics YOLO11 có thể giúp bạn triển khai các mô hình dễ dàng trên nhiều nền tảng và môi trường khác nhau. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn cách chuyển đổi các mô hình của bạn sang TF SavedModel định dạng, đơn giản hóa quá trình chạy suy luận với các mô hình của bạn trên các thiết bị khác nhau.
Tại sao bạn nên xuất khẩu sang TF SavedModel?
Các TensorFlow SavedModel định dạng là một phần của TensorFlow Hệ sinh thái được phát triển bởi Google như hình dưới đây. Nó được thiết kế để lưu và tuần tự hóa TensorFlow mô hình liền mạch. Nó gói gọn các chi tiết đầy đủ của các mô hình như kiến trúc, trọng lượng 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 đào tạo trên các môi trường khác nhau trở nên đơn giản.
Các TF SavedModel có một lợi thế chính: khả năng tương thích của nó. Nó hoạt động tốt với TensorFlow Phục vụ TensorFlow Lite, và TensorFlow.Js. Khả năng tương thích này giúp chia sẻ và triển khai các mô hình trên nhiều nền tảng khác nhau dễ dàng hơn, bao gồm các ứng dụng web và di động. Các TF SavedModel Định dạng 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 mô hình của bạn, đảm bảo chúng sẵn sàng cho mọi ứng dụng.
Các tính năng chính của TF Mô hình đã lưu
Dưới đây là các tính năng chính tạo nên TF SavedModel một lựa chọn tuyệt vời cho các nhà phát triển AI:
Tính di động: TF SavedModel cung cấp định dạng tuần tự hóa trung lập ngôn ngữ, có thể khôi phục, kín. Chúng cho phép các hệ thống và công cụ cấp cao hơn để sản xuất, tiêu thụ và chuyển đổi TensorFlow Mô hình. SavedModels có thể dễ dàng chia sẻ và triển khai trên các nền tảng và môi trường khác nhau.
Dễ triển khai: TF SavedModel Gói đồ thị tính toán, các tham số đã đào tạo và siêu dữ liệu cần thiết vào một gói duy nhất. Chúng có thể dễ dàng tải và sử dụng để suy luận mà không yêu cầu mã gốc đã xây dựng mô hình. Điều này làm cho việc triển khai TensorFlow Mô hình đơn giản và hiệu quả trong các môi trường sản xuất khác nhau.
Quản lý tài sản : TF SavedModel hỗ trợ việc đưa vào các tài sản bên ngoài như từ vựng, nhúng hoặc bảng tra cứu. Các tài sả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 mô hình đượ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 mô hình dựa trên các tài nguyên bên ngoài.
Tùy chọn triển khai với TF SavedModel
Trước khi chúng ta đi sâu vào quá trình xuất các mô hình YOLO11 sang TF SavedModel định dạng, chúng ta hãy cùng khám phá một số tình huống triển khai điển hình sử dụng định dạng này.
TF SavedModel Cung cấp một loạt các tùy chọn để triển khai các mô hình học máy của bạn:
TensorFlow Phục vụ: TensorFlow Phục vụ là một hệ thống phục vụ linh hoạt, hiệu suất cao được thiết kế cho môi trường sản xuất. Nó nguyên bản hỗ trợ TF SavedModels, giúp dễ dàng triển khai và phục vụ các mô hình của bạn trên nền tảng đám mây, máy chủ tại chỗ hoặc thiết bị biên.
Nền tảng đám mây: Các nhà cung cấp đám mây lớn như Google Nền tảng đám mây (GCP), Amazon Web Services (AWS) và Microsoft Azure cung cấp các dịch vụ để triển khai và chạy TensorFlow mô hình, bao gồm TF SavedModels. Các dịch vụ này cung cấp cơ sở hạ tầng có thể mở rộng và quản lý, cho phép bạn triển khai và mở rộng quy mô mô hình 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 mô hình học máy trên thiết bị di động, nhúng và IoT, hỗ trợ chuyển đổi TF SavedModels vào TensorFlow Định dạng lite. Điều này cho phép bạn triển khai các mô hình 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à thiết bị biên.
TensorFlow Runtime: TensorFlow Thời gian chạy (
tfrt
) là một thời gian chạy hiệu suất cao để thực hiện TensorFlow đồ thị. Nó cung cấp API cấp thấp hơn để tải và chạy TF SavedModels trong môi trường C++. TensorFlow Thời gian chạy cung cấp hiệu suất tốt hơn so với tiêu chuẩn TensorFlow thời gian chạy. Phù hợp với các tình huống triển khai yêu cầu suy luận độ trễ thấp và tích hợp chặt chẽ với cơ sở mã C++ hiện có.
Xuất các mô hình YOLO11 sang TF SavedModel
Bằng cách xuất các mô hình YOLO11 sang TF SavedModel định dạng, bạn nâng cao khả năng thích ứng và dễ triển khai trên nhiều nền tảng khác nhau.
Cài đặt
Để cài đặt gói yêu cầu, hãy chạy:
Để biết hướng dẫn chi tiết và các biện 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 của chúng tôi. Trong khi cài đặt các gói cần thiết cho YOLO11, 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 của chúng tôi để biết các giải pháp và mẹo.
Sử dụng
Trước khi tìm hiểu hướng dẫn sử dụng, điều quan trọng cần lưu ý là mặc dù tất cả các mẫu Ultralytics YOLO11 đều có thể xuất, nhưng bạn có thể đảm bảo rằng mẫu bạn chọn có hỗ trợ chức năng xuất tại đây .
Sử dụng
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF SavedModel format
model.export(format="saved_model") # creates '/yolo11n_saved_model'
# Load the exported TF SavedModel model
tf_savedmodel_model = YOLO("./yolo11n_saved_model")
# Run inference
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
Để biết thêm chi tiết về các tùy chọn xuất được hỗ trợ, hãy truy cập Ultralytics trang tài liệu về các tùy chọn triển khai.
Triển khai YOLO11 đã xuất TF SavedModel Mô hình
Bây giờ bạn đã xuất mô hình YOLO11 của mình sang TF SavedModel định dạng, bước tiếp theo là triển khai nó. Bước đầu tiên chính và được khuyến nghị để chạy TF GraphDef mô hình là sử dụng YOLO Phương thức ("./yolo11n_saved_model") như đã hiển thị trước đó trong đoạn mã sử dụng.
Tuy nhiên, để được hướng dẫn chuyên sâu về cách triển khai TF SavedModel Mô hình, hãy xem các tài nguyên sau:
TensorFlow Phục vụ: Dưới đây là tài liệu dành cho nhà phát triển về cách triển khai TF SavedModel Mô hình sử dụng TensorFlow Phục vụ.
Chạy một TensorFlow SavedModel trong Node.js: A TensorFlow Bài đăng trên blog về việc chạy một 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: A TensorFlow Bài đăng trên blog về việc triển khai một TensorFlow SavedModel mô hình trên Nền tảng Cloud AI.
Tóm tắt
Trong hướng dẫn này, chúng tôi đã khám phá cách xuất Ultralytics Các mô hình YOLO11 đến TF SavedModel định dạng. 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 mô hình YOLO11 của mình trên nhiều nền tảng khác nhau.
Để biết thêm chi tiết về cách sử dụng, hãy truy cập TF SavedModel Tài liệu chính thức.
Để biết thêm thông tin về việc tích hợp Ultralytics YOLO11 với các nền tảng và khuôn khổ khác, đừng quên xem trang hướng dẫn tích hợp của chúng tôi. Trang này chứa đầy các tài nguyên tuyệt vời giúp bạn tận dụng tối đa YOLO11 trong các dự án của mình.
FAQ
Làm cách nào để xuất một Ultralytics YOLO Mô hình để TensorFlow SavedModel định dạng?
Xuất khẩu một Ultralytics YOLO mô hình cho TensorFlow SavedModel Định dạng rất đơn giản. Bạn có thể sử dụng một trong hai Python hoặc CLI Để đạt được điều này:
Xuất YOLO11 sang TF SavedModel
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to TF SavedModel format
model.export(format="saved_model") # creates '/yolo11n_saved_model'
# Load the exported TF SavedModel for inference
tf_savedmodel_model = YOLO("./yolo11n_saved_model")
results = tf_savedmodel_model("https://ultralytics.com/images/bus.jpg")
Tham khảo Ultralytics Xuất tài liệu để biết thêm chi tiết.
Tại sao tôi nên sử dụng TensorFlow SavedModel định dạng?
Các TensorFlow SavedModel Định dạng này cung cấp một số lợi thế cho việc triển khai mô hình :
- Di: Nó cung cấp một định dạng ngôn ngữ trung lập, giúp dễ dàng chia sẻ và triển khai các mô hình trên các môi trường khác nhau.
- Tương thích: Tích hợp liền mạch với các công cụ như TensorFlow Phục vụ TensorFlow Lite, và TensorFlow.js, rất cần thiết để triển khai các mô hình trên các nền tảng khác nhau, bao gồm cả ứng dụng web và di động.
- Đóng gói hoàn chỉnh: Mã hóa kiến trúc mô hình, trọng số và thông tin biên dịch, cho phép chia sẻ đơn giản và tiếp tục đào tạo.
Để biết thêm lợi ích và tùy chọn triển khai, hãy xem Ultralytics YOLO Tùy chọn triển khai mô hình.
Các kịch bản triển khai điển hình cho là gì TF SavedModel?
TF SavedModel Có thể được triển khai trong nhiều môi trường khác nhau, bao gồm:
- TensorFlow Phục vụ: Lý tưởng cho các môi trường sản xuất yêu cầu phân phối mô hình có thể mở rộng và hiệu suất cao.
- Nền tảng đám mây: Hỗ trợ các dịch vụ đám mây chính như Google Nền tảng đám mây (GCP), Amazon Web Services (AWS) và Microsoft Azure để triển khai mô hình có thể 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 các thiết bị di động, thiết bị IoT và vi điều khiển.
- TensorFlow Thời gian chạy: Đối với môi trường C++ cần suy luận độ trễ thấp với 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 hướng dẫn chính thức về Triển khai TensorFlow mô hình.
Làm thế nào tôi có thể cài đặt các gói cần thiết để xuất mô hình YOLO11?
Để xuất các mô hình YOLO11, bạn cần cài đặt ultralytics
gói. Chạy lệnh sau trong thiết bị đầu cuối của bạn:
Để biết thêm hướng dẫn cài đặt chi tiết và các phương pháp hay nhất, hãy tham khảo Ultralytics Hướng dẫn cài đặt. Nếu bạn gặp bất kỳ sự cố nào, hãy tham khảo hướng dẫn về các vấn đề thường gặp của chúng tôi.
Các tính năng chính của TensorFlow SavedModel định dạng?
TF SavedModel định dạng có lợi cho các nhà phát triển AI do các tính năng sau:
- Di: Cho phép chia sẻ và triển khai trên nhiều môi trường khác nhau một cách dễ dàng.
- Dễ triển khai: Đóng gói biểu đồ tính toán, các tham số đã đào tạo và siêu dữ liệu vào một gói duy nhất, giúp đơn giản hóa việc tải và suy luận.
- Quản lý tài sản: Hỗ trợ các tài sản bên ngoài như từ vựng, đảm bảo chúng có sẵn khi mô hình tải.
Để biết thêm chi tiết, hãy khám phá chính thức TensorFlow tài liệu.