Bỏ để qua phần nội dung

Cách xuất sang PaddlePaddle Định dạng từ YOLOv8 Mô hình

Thu hẹp khoảng cách giữa việc phát triển và triển khai các mô hình thị giác máy tính trong các tình huống thực tế với các điều kiện khác nhau có thể khó khăn. PaddlePaddle Làm cho quá trình này dễ dàng hơn với sự tập trung vào tính linh hoạt, hiệu suất và khả năng xử lý song song trong môi trường phân tán. Điều này có nghĩa là bạn có thể sử dụng YOLOv8 Các mô hình thị giác máy tính trên nhiều thiết bị và nền tảng khác nhau, từ điện thoại thông minh đến máy chủ dựa trên đám mây.

Khả năng xuất sang PaddlePaddle Định dạng mô hình cho phép bạn tối ưu hóa Ultralytics YOLOv8 Các mô hình để sử dụng trong PaddlePaddle khuôn khổ. PaddlePaddle được biết đến với việc tạo điều kiện thuận lợi cho việc triển khai công nghiệp và là một lựa chọn tốt để triển khai các ứng dụng thị giác máy tính trong các cài đặt trong thế giới thực trên các lĩnh vực khác nhau.

Tại sao bạn nên xuất sang PaddlePaddle?

PaddlePaddle Logo

Được phát triển bởi Baidu, PaddlePaddle (PArallel Distributed Deep LEarning) là nền tảng deep learning mã nguồn mở đầu tiên của Trung Quốc. Không giống như một số framework được xây dựng chủ yếu cho nghiên cứu, PaddlePaddle Ưu tiên tính dễ sử dụng và tích hợp trơn tru giữa các ngành.

Nó cung cấp các công cụ và tài nguyên tương tự như các khung phổ biến như TensorFlow và PyTorch, giúp các nhà phát triển ở mọi cấp độ kinh nghiệm có thể truy cập được. Từ nông nghiệp và nhà máy đến các doanh nghiệp dịch vụ, PaddlePaddleCộng đồng nhà phát triển lớn với hơn 4,77 triệu người đang giúp tạo và triển khai các ứng dụng AI.

By exporting your Ultralytics YOLOv8 models to PaddlePaddle format, you can tap into PaddlePaddle's strengths in performance optimization. PaddlePaddle prioritizes efficient model execution and reduced memory usage. As a result, your YOLOv8 models can potentially achieve even better performance, delivering top-notch results in practical scenarios.

Các tính năng chính của PaddlePaddle Mô hình

PaddlePaddle Các mô hình cung cấp một loạt các tính năng chính góp phần vào tính linh hoạt, hiệu suất và khả năng mở rộng của chúng trong các kịch bản triển khai đa dạng:

  • Đồ thị động đến tĩnh: PaddlePaddle Hỗ trợ biên dịch động sang tĩnh, trong đó các mô hình có thể được dịch thành đồ thị tính toán tĩnh. Điều này cho phép tối ưu hóa giúp giảm chi phí thời gian chạy và tăng hiệu suất suy luận.

  • Nhà điều hành Fusion: PaddlePaddlenhư TensorRT, sử dụng phản ứng tổng hợp toán tử để hợp lý hóa tính toán và giảm chi phí. Framework giảm thiểu việc truyền bộ nhớ và các bước tính toán bằng cách hợp nhất các hoạt động tương thích, dẫn đến suy luận nhanh hơn.

  • Định lượng hóa: PaddlePaddle hỗ trợ các kỹ thuật lượng tử hóa, bao gồm lượng tử hóa sau đào tạo và đào tạo nhận thức lượng tử hóa. Những kỹ thuật này cho phép sử dụng các biểu diễn dữ liệu có độ chính xác thấp hơn, tăng hiệu suất hiệu quả và giảm kích thước mô hình.

Tùy chọn triển khai trong PaddlePaddle

Trước khi đi sâu vào mã để xuất YOLOv8 mô hình để PaddlePaddle, chúng ta hãy xem xét các kịch bản triển khai khác nhau trong đó PaddlePaddle Mô hình vượt trội.

PaddlePaddle Cung cấp một loạt các tùy chọn, mỗi tùy chọn cung cấp một sự cân bằng riêng biệt về tính dễ sử dụng, tính linh hoạt và hiệu suất:

  • Paddle Serving: Framework này đơn giản hóa việc triển khai PaddlePaddle mô hình như API RESTful hiệu suất cao. Paddle Serving lý tưởng cho môi trường sản xuất, cung cấp các tính năng như lập phiên bản mô hình, thử nghiệm A / B trực tuyến và khả năng mở rộng để xử lý khối lượng lớn yêu cầu.

  • Paddle Inference API: API Paddle Inference cung cấp cho bạn quyền kiểm soát cấp thấp đối với việc thực thi mô hình. Tùy chọn này rất phù hợp cho các tình huống mà bạn cần tích hợp mô hình chặt chẽ trong một ứng dụng tùy chỉnh hoặc tối ưu hóa hiệu suất cho phần cứng cụ thể.

  • Paddle Lite: Paddle Lite được thiết kế để triển khai trên các thiết bị di động và nhúng, nơi tài nguyên bị hạn chế. Nó tối ưu hóa các mô hình cho kích thước nhỏ hơn và suy luận nhanh hơn trên CPU ARM, GPU và phần cứng chuyên dụng khác.

  • Paddle.js: Paddle.js enables you to deploy PaddlePaddle models directly within web browsers. Paddle.js can either load a pre-trained model or transform a model from paddle-hub with model transforming tools provided by Paddle.js. It can run in browsers that support WebGL/WebGPU/WebAssembly.

Xuất sang PaddlePaddle: Chuyển đổi của bạn YOLOv8 Mẫu

Converting YOLOv8 mô hình cho PaddlePaddle Định dạng có thể cải thiện tính linh hoạt thực thi và tối ưu hóa hiệu suất cho các tình huống triển khai khác nhau.

Cài đặt

Để cài đặt gói yêu cầu, hãy chạy:

Cài đặt

# Install the required package for YOLOv8
pip install ultralytics

Để biết hướng dẫn chi tiết và các phương pháp hay nhất liên quan đến quá trình cài đặt, hãy kiểm tra Ultralytics Hướng dẫn cài đặt. Trong khi cài đặt các gói cần thiết cho YOLOv8, 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 đi sâu vào hướng dẫn sử dụng, điều quan trọng cần lưu ý là trong khi tất cả Ultralytics YOLOv8 Các mô hình có sẵn để xuất, bạn có thể đảm bảo rằng mô hình bạn chọn hỗ trợ chức năng xuất tại đây.

Sử dụng

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to PaddlePaddle format
model.export(format="paddle")  # creates '/yolov8n_paddle_model'

# Load the exported PaddlePaddle model
paddle_model = YOLO("./yolov8n_paddle_model")

# Run inference
results = paddle_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to PaddlePaddle format
yolo export model=yolov8n.pt format=paddle  # creates '/yolov8n_paddle_model'

# Run inference with the exported model
yolo predict model='./yolov8n_paddle_model' source='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 xuất khẩu YOLOv8 PaddlePaddle Mô hình

Sau khi xuất thành công Ultralytics YOLOv8 mô hình để PaddlePaddle định dạng, bây giờ bạn có thể triển khai chúng. Bước đầu tiên chính và được đề xuất để chạy một PaddlePaddle Mô hình là sử dụng YOLOPhương thức ("./model_paddle_model"), như đã nêu trong đoạn mã sử dụng trước.

Tuy nhiên, để được hướng dẫn chuyên sâu về cách triển khai PaddlePaddle Các mô hình trong nhiều cài đặt khác, hãy xem các tài nguyên sau:

  • Paddle Serving: Tìm hiểu cách triển khai PaddlePaddle mô hình như các dịch vụ biểu diễn sử dụng Paddle Serving.

  • Paddle Lite: Khám phá cách tối ưu hóa và triển khai các mô hình trên thiết bị di động và thiết bị nhúng bằng Paddle Lite.

  • Paddle.js: Khám phá cách chạy PaddlePaddle mô hình trong trình duyệt web cho AI phía máy khách sử dụng Paddle.js.

Tóm tắt

Trong hướng dẫn này, chúng tôi đã khám phá quá trình xuất Ultralytics YOLOv8 mô hình cho PaddlePaddle định dạng. Bằng cách làm theo các bước này, bạn có thể tận dụng PaddlePaddleThế mạnh của bạn trong các kịch bản triển khai đa dạng, tối ưu hóa mô hình của bạn cho các môi trường phần cứng và phần mềm khác nhau.

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

Muốn khám phá thêm nhiều cách để tích hợp Ultralytics YOLOv8 Mô hình? Trang hướng dẫn tích hợp của chúng tôi khám phá các tùy chọn khác nhau, trang bị cho bạn các tài nguyên và thông tin chi tiết có giá trị.



Created 2024-03-11, Updated 2024-06-10
Authors: glenn-jocher (4), Burhan-Q (1), abirami-vina (2)

Ý kiến