Cách xuất sang định dạng PaddlePaddle từ các model YOLO26#
Việc thu hẹp khoảng cách giữa phát triển và triển khai các model computer vision trong các kịch bản thực tế với điều kiện thay đổi có thể rất khó khăn. PaddlePaddle giúp quá trình này trở nên dễ dàng hơn nhờ tập trung vào tính linh hoạt, hiệu năng 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 các model computer vision YOLO26 của mình trên nhiều loại thiết bị và nền tảng khác nhau, từ điện thoại thông minh đến máy chủ đám mây.
Watch: How to Export Ultralytics YOLO26 Models to PaddlePaddle Format | Key Features of PaddlePaddle Format
Khả năng xuất sang định dạng model PaddlePaddle cho phép bạn tối ưu hóa các model Ultralytics YOLO26 để sử dụng trong ecosystem của PaddlePaddle. PaddlePaddle nổi tiếng với việc hỗ trợ triển khai quy mô công nghiệp và là sự lựa chọn tốt để triển khai các ứng dụng computer vision trong môi trường thực tế trên nhiều lĩnh vực khác nhau.
Tại sao bạn nên xuất sang PaddlePaddle?#
Đượ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 mượt mà giữa các ngành công nghiệp.
Nó cung cấp các công cụ và tài nguyên tương tự như các framework phổ biến như TensorFlow và PyTorch, giúp các developer ở mọi cấp độ kinh nghiệm đều có thể tiếp cận được. Từ nông nghiệp và nhà máy đến các dịch vụ kinh doanh, cộng đồng developer lớn mạnh với hơn 4,77 triệu thành viên của PaddlePaddle đang hỗ trợ tạo và triển khai các ứng dụng AI.
Bằng cách xuất các model Ultralytics YOLO26 của bạn sang định dạng PaddlePaddle, bạn có thể tận dụng thế mạnh của PaddlePaddle trong việc tối ưu hóa hiệu năng. PaddlePaddle ưu tiên thực thi model hiệu quả và giảm mức sử dụng bộ nhớ. Nhờ đó, các model YOLO26 của bạn có tiềm năng đạt được hiệu năng tốt hơn nữa, mang lại kết quả hàng đầu trong các tình huống thực tế.
Các tính năng chính của các model PaddlePaddle#
Các model PaddlePaddle cung cấp một loạt các tính năng chính đóng góp vào tính linh hoạt, hiệu năng và khả năng mở rộng của chúng trên các kịch bản triển khai đa dạng:
-
Đồ thị động sang tĩnh: PaddlePaddle hỗ trợ dynamic-to-static compilation, nơi các model có thể được dịch sang đồ thị tính toán tĩnh. Điều này cho phép tối ưu hóa giúp giảm độ trễ khi chạy (runtime overhead) và thúc đẩy hiệu năng inference.
-
Kết hợp toán tử (Operator Fusion): PaddlePaddle, giống như TensorRT, sử dụng operator fusion để tối ưu hóa tính toán và giảm thiểu overhead. Framework này giảm thiểu việc truyền tải bộ nhớ và các bước tính toán bằng cách hợp nhất các phép toán tương thích, mang lại inference nhanh hơn.
-
Lượng tử hóa (Quantization): PaddlePaddle hỗ trợ quantization techniques, bao gồm lượng tử hóa sau huấn luyện (post-training quantization) và huấn luyện nhận biết lượng tử hóa (quantization-aware training). Các kỹ thuật này cho phép sử dụng biểu diễn dữ liệu có độ chính xác thấp hơn, giúp cải thiện hiệu năng và giảm kích thước model một cách hiệu quả.
Các tùy chọn triển khai trong PaddlePaddle#
Trước khi đi sâu vào mã nguồn để xuất các model YOLO26 sang PaddlePaddle, hãy cùng xem xét các kịch bản triển khai khác nhau mà các model PaddlePaddle đạt kết quả vượt trội.
PaddlePaddle cung cấp một loạt các tùy chọn, mỗi tùy chọn mang lại sự cân bằng riêng biệt giữa tính dễ sử dụng, tính linh hoạt và hiệu năng:
-
Paddle Serving: Framework này đơn giản hóa việc triển khai các model PaddlePaddle dưới dạng các RESTful API hiệu năng cao. Paddle Serving lý tưởng cho các môi trường sản xuất, cung cấp các tính năng như lập phiên bản model, kiểm thử A/B trực tuyến và khả năng mở rộng để xử lý khối lượng yêu cầu lớn.
-
Paddle Inference API: Paddle Inference API cung cấp cho bạn quyền kiểm soát cấp thấp đối với việc thực thi model. Tùy chọn này rất phù hợp cho các kịch bản cần tích hợp chặt chẽ model vào một ứng dụng tùy chỉnh hoặc tối ưu hóa hiệu năng 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 model để có kích thước nhỏ hơn và suy luận nhanh hơn trên các CPU ARM, GPU và các phần cứng chuyên dụng khác.
-
Paddle.js: Paddle.js cho phép bạn triển khai các model PaddlePaddle trực tiếp trong trình duyệt web. Paddle.js có thể tải một model đã được huấn luyện trước hoặc chuyển đổi model từ paddle-hub bằng các công cụ chuyển đổi model do Paddle.js cung cấp. Nó có thể chạy trên các trình duyệt hỗ trợ WebGL/WebGPU/WebAssembly.
Các tác vụ được hỗ trợ#
Tính năng xuất PaddlePaddle hỗ trợ tất cả bảy tác vụ của Ultralytics. Phân đoạn ngữ nghĩa và ước lượng chiều sâu chỉ khả dụng với YOLO26, dòng duy nhất tích hợp sẵn các đầu ra đó.
Xuất sang PaddlePaddle: Chuyển đổi model YOLO26 của bạn#
Việc chuyển đổi các model YOLO26 sang định dạng PaddlePaddle có thể cải thiện tính linh hoạt khi thực thi và tối ưu hóa hiệu năng cho các kịch bản triển khai khác nhau.
Cài đặt#
Để cài đặt gói cần thiết, hãy chạy:
# Install the required package for YOLO26
pip install ultralyticsĐể biết hướng dẫn chi tiết và các thực tiễn tốt nhất liên quan đến quá trình cài đặt, hãy xem Hướng dẫn Cài đặt Ultralytics của chúng tôi. Trong quá trình 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 của chúng tôi để tìm giải pháp và mẹo.
Cách sử dụng#
Tất cả các Ultralytics YOLO26 models đều hỗ trợ xuất (export), và bạn có thể browse the full list of export formats and options để tìm ra lựa chọn phù hợp nhất với nhu cầu triển khai của mình.
Định dạng PaddlePaddle hỗ trợ các chế độ Export, Predict và Validate. 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ó.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to PaddlePaddle format
model.export(format="paddle") # creates '/yolo26n_paddle_model'from ultralytics import YOLO
# Load the exported PaddlePaddle model
model = YOLO("./yolo26n_paddle_model")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported PaddlePaddle model
model = YOLO("./yolo26n_paddle_model")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Đối số xuất#
| Đối số | Loại | Mặc định | Mô tả |
|---|---|---|---|
format | str | 'paddle' | Đị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. |
imgsz | int hoặc tuple | 640 | Kích thước ảnh mong muốn cho đầu vào của mô hình. 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ể. |
quantize | int hoặc str | None | Đã sửa lỗi xuất FP32. Định dạng xuất PaddlePaddle không hỗ trợ chuyển đổi độ chính xác FP16, INT8 hoặc W8A16 tại thời điểm xuất. |
batch | int | 1 | Chỉ định kích thước suy luận hàng loạt của mô hình xuất hoặc số lượng ảnh tối đa mà mô hình xuất sẽ xử lý đồng thời ở chế độ predict. |
device | str | None | Chỉ định thiết bị để xuất: CPU (device=cpu), MPS cho Apple silicon (device=mps). |
Để biết thêm chi tiết về quá trình xuất, hãy truy cập trang tài liệu của Ultralytics về việc xuất model.
Triển khai các model YOLO26 PaddlePaddle đã xuất#
Sau khi xuất thành công các model Ultralytics YOLO26 sang định dạng PaddlePaddle, bây giờ bạn có thể triển khai chúng. Bước đầu tiên chính và được khuyến nghị để chạy một model PaddlePaddle là sử dụng phương thức YOLO("yolo26n_paddle_model/"), như đã nêu trong đoạn mã ví dụ trước đó.
Tuy nhiên, để có hướng dẫn chuyên sâu về việc triển khai các model PaddlePaddle của bạn trong các cài đặt khác nhau, hãy xem qua các tài nguyên sau:
-
Paddle Serving: Tìm hiểu cách triển khai các model PaddlePaddle của bạn thành các dịch vụ có hiệu năng cao bằng cách sử dụng Paddle Serving.
-
Paddle Lite: Khám phá cách tối ưu hóa và triển khai các model trên thiết bị di động và thiết bị nhúng bằng cách sử dụng Paddle Lite.
-
Paddle.js: Khám phá cách chạy các model PaddlePaddle trong trình duyệt web cho AI ở phía máy khách (client-side AI) bằng cách sử dụng Paddle.js.
Tóm tắt#
Trong hướng dẫn này, chúng ta đã khám phá quá trình xuất các model Ultralytics YOLO26 sang định dạng PaddlePaddle. Bằng cách làm theo các bước này, bạn có thể tận dụng thế mạnh của PaddlePaddle trong các kịch bản triển khai đa dạng, tối ưu hóa các model của mình 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 official documentation.
Bạn muốn khám phá thêm nhiều cách để tích hợp các model Ultralytics YOLO26 của mình? integration guide page của chúng tôi khám phá các tùy chọn khác nhau, cung cấp cho bạn các tài nguyên và thông tin chi tiết có giá trị.
Câu hỏi thường gặp#
Việc xuất các model Ultralytics YOLO26 sang định dạng PaddlePaddle rất đơn giản. Bạn có thể sử dụng phương thức
exportcủa lớp YOLO để thực hiện chuyển đổi. Dưới đây là một ví dụ sử dụng Python:Cách sử dụngfrom ultralytics import YOLO # Load a YOLO26 model model = YOLO("yolo26n.pt") # Export the model to PaddlePaddle format model.export(format="paddle") # creates '/yolo26n_paddle_model' # Load the exported PaddlePaddle model paddle_model = YOLO("./yolo26n_paddle_model") # Run inference results = paddle_model("https://ultralytics.com/images/bus.jpg")Để biết thêm chi tiết về thiết lập và khắc phục sự cố, hãy xem Ultralytics Installation Guide và Common Issues Guide.
PaddlePaddle mang lại một số ưu điểm chính cho việc triển khai model:
- Tối ưu hóa hiệu năng: PaddlePaddle vượt trội trong việc thực thi model hiệu quả và giảm sử dụng bộ nhớ.
- Biên dịch đồ thị động sang tĩnh: Nó hỗ trợ biên dịch từ động sang tĩnh, cho phép tối ưu hóa tại thời điểm runtime.
- Hợp nhất toán tử: Bằng cách hợp nhất các hoạt động tương thích, nó giảm chi phí tính toán.
- Kỹ thuật lượng tử hóa (Quantization Techniques): Hỗ trợ cả lượng tử hóa sau huấn luyện và huấn luyện nhận biết lượng tử hóa, cho phép biểu diễn dữ liệu precision thấp hơn để cải thiện hiệu năng.
Bạn có thể đạt được kết quả nâng cao bằng cách xuất các model Ultralytics YOLO26 của mình sang PaddlePaddle, đảm bảo tính linh hoạt và hiệu năng cao trên nhiều ứng dụng và nền tảng phần cứng khác nhau. Khám phá các tính năng và năng lực chính của PaddlePaddle trong official PaddlePaddle documentation.
PaddlePaddle, được phát triển bởi Baidu, được tối ưu hóa cho các hoạt động triển khai AI công nghiệp và thương mại. Cộng đồng nhà phát triển lớn và framework mạnh mẽ của nó cung cấp các công cụ phong phú tương tự như TensorFlow và PyTorch. Bằng cách xuất các model YOLO26 của bạn sang PaddlePaddle, bạn tận dụng được:
- Hiệu năng nâng cao: Tốc độ thực thi tối ưu và dấu chân bộ nhớ giảm thiểu.
- Tính linh hoạt: Khả năng tương thích rộng rãi với nhiều loại thiết bị từ điện thoại thông minh đến máy chủ đám mây.
- Khả năng mở rộng: Khả năng xử lý song song hiệu quả cho các môi trường phân tán.
Những tính năng này làm cho PaddlePaddle trở thành một lựa chọn hấp dẫn để triển khai các model YOLO26 trong môi trường sản xuất.
PaddlePaddle áp dụng một số kỹ thuật tiên tiến để tối ưu hóa hiệu năng model:
- Đồ thị động sang tĩnh: Chuyển đổi các model thành một đồ thị tính toán tĩnh để tối ưu hóa tại runtime.
- Hợp nhất toán tử: Kết hợp các hoạt động tương thích để tối thiểu hóa việc truyền tải bộ nhớ và tăng tốc độ suy luận.
- Lượng tử hóa (Quantization): Giảm kích thước model và tăng hiệu quả bằng cách sử dụng dữ liệu có độ chính xác thấp hơn trong khi vẫn duy trì accuracy.
Các kỹ thuật này ưu tiên việc thực thi model hiệu quả, biến PaddlePaddle thành một tùy chọn xuất sắc để triển khai các model YOLO26 hiệu năng cao. Để tìm hiểu thêm về tối ưu hóa, hãy xem PaddlePaddle official documentation.
PaddlePaddle cung cấp các tùy chọn triển khai linh hoạt:
- Paddle Serving: Triển khai các model dưới dạng RESTful API, lý tưởng cho sản xuất với các tính năng như lập phiên bản model và kiểm thử A/B trực tuyến.
- Paddle Inference API: Cung cấp quyền kiểm soát cấp thấp đối với việc thực thi model cho các ứng dụng tùy chỉnh.
- Paddle Lite: Tối ưu hóa các model cho các thiết bị di động và nhúng với tài nguyên hạn chế.
- Paddle.js: Cho phép triển khai các model trực tiếp trong trình duyệt web.
Các tùy chọn này bao gồm một loạt các kịch bản triển khai, từ inference trên thiết bị đến các dịch vụ đám mây có thể mở rộng. Khám phá thêm các chiến lược triển khai trên Ultralytics Model Deployment Options page.