Cách xuất mô hình sang định dạng PaddlePaddle từ các mô hình YOLO26

Việc thu hẹp khoảng cách giữa phát triển và triển khai các mô hình computer vision trong các tình huống thực tế với những điều kiện khác nhau có thể gặp nhiều khó khăn. PaddlePaddle giúp quá trình này trở nên dễ dàng hơn nhờ khả năng tập trung vào sự 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 các mô hình computer vision YOLO26 của mình trên nhiều loại thiết bị và nền tảng, từ điện thoại thông minh cho đến các máy chủ trên nền tảng đá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 mô hình PaddlePaddle cho phép bạn tối ưu hóa các mô hình Ultralytics YOLO26 để sử dụng trong framework PaddlePaddle. PaddlePaddle được biết đến với việc hỗ trợ 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 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?

PaddlePaddle deep learning framework 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 mục đích nghiên cứu, PaddlePaddle ưu tiên sự dễ sử dụng và tích hợp mượt mà trong toàn bộ các ngành công nghiệp.

Nền tảng này cung cấp các công cụ và tài nguyên tương tự như các framework phổ biến như TensorFlowPyTorch, giúp các nhà phát triển ở mọi trình độ kinh nghiệm đều có thể tiếp cận được. Từ nông nghiệp và sản xuất cho đến các dịch vụ kinh doanh, cộng đồng nhà phát triển lớn với hơn 4,77 triệu người dùng của PaddlePaddle đang giúp tạo ra và triển khai các ứng dụng AI.

Bằng cách xuất các mô hình Ultralytics YOLO26 sang định dạng PaddlePaddle, bạn có thể tận dụng những thế mạnh của PaddlePaddle trong việc tối ưu hóa hiệu suất. PaddlePaddle ưu tiên thực thi mô hình hiệu quả và giảm thiểu việc sử dụng bộ nhớ. Nhờ đó, các mô hình YOLO26 của bạn có khả năng đạt được hiệu suất tốt hơn nữa, mang lại kết quả vượt trội trong các tình huống thực tế.

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

Các mô hình PaddlePaddle cung cấp một loạt các tính năng chính góp phần vào sự linh hoạt, hiệu suất 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 (Dynamic-to-Static Graph): PaddlePaddle hỗ trợ biên dịch động-sang-tĩnh, trong đó các mô hình có thể được chuyển đổi thành một đồ thị tính toán tĩnh. Điều này cho phép thực hiện các tối ưu hóa giúp giảm độ trễ khi chạy (runtime overhead) và tăng hiệu suất suy luận (inference).

  • Hợp nhất toán tử (Operator Fusion): PaddlePaddle, giống như TensorRT, sử dụng hợp nhất toán tử để tinh giản việc tính toán và giảm thiểu chi phí phát sinh. Framework này giảm thiểu các bước truyền dữ liệu bộ nhớ và các bước tính toán bằng cách hợp nhất các thao tác tương thích, dẫn đến suy luận nhanh hơn.

  • Lượng tử hóa (Quantization): PaddlePaddle hỗ trợ các kỹ thuật lượng tử hóa, 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). 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ừ đó tăng hiệu suất một cách hiệu quả và giảm kích thước mô hình.

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 mô hình YOLO26 sang PaddlePaddle, hãy cùng xem qua các kịch bản triển khai khác nhau mà ở đó các mô hình PaddlePaddle tỏ ra 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 khác biệt giữa tính dễ sử dụng, sự linh hoạt và hiệu suất:

  • Paddle Serving: Framework này đơn giản hóa việc triển khai các mô hình PaddlePaddle dưới dạng các RESTful API hiệu suất cao. Paddle Serving rất 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 yêu cầu lớn.

  • Paddle Inference API: Paddle Inference API cung cấp khả năng 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 chặt chẽ mô hình vào 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à thiết bị nhúng nơi tài nguyên bị hạn chế. Nó tối ưu hóa các mô hình để 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 mô hình PaddlePaddle trực tiếp trong trình duyệt web. Paddle.js có thể tải một mô hình đã được huấn luyện trước hoặc chuyển đổi một mô hình từ paddle-hub bằng các công cụ chuyển đổi mô hình do Paddle.js cung cấp. Nó có thể chạy trong các trình duyệt hỗ trợ WebGL/WebGPU/WebAssembly.

Xuất sang PaddlePaddle: Chuyển đổi mô hình YOLO26 của bạn

Việc chuyển đổi các mô hình YOLO26 sang định dạng PaddlePaddle có thể cải thiện sự linh hoạt trong thực thi và tối ưu hóa hiệu suất cho nhiều kịch bản 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 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 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 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 xử lý.

Cách sử dụng

Tất cả các mô hình Ultralytics YOLO26 đều hỗ trợ xuất, và bạn có thể duyệt qua danh sách đầy đủ các định dạng và tùy chọn xuất để tìm ra lựa chọn phù hợp nhất với nhu cầu triển khai của mình.

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

# Load the 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")

Các đối số Xuất

Đối sốLoạiMặc địnhMô tả
formatstr'paddle'Định dạng mục tiêu cho model đã 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ể.
batchint1Chỉ định kích thước suy luận batch của model 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 Ultralytics về xuất model.

Triển khai các mô hình PaddlePaddle YOLO26 đã xuất

Sau khi xuất thành công các mô hình Ultralytics YOLO26 sang định dạng PaddlePaddle, giờ đây bạn có thể triển khai chúng. Bước đầu tiên quan trọng và được khuyến nghị để chạy một mô hình PaddlePaddle là sử dụng phương thức YOLO("yolo26n_paddle_model/"), như đã nêu trong đoạn mã sử dụng trước đó.

Tuy nhiên, để có hướng dẫn chi tiết về việc triển khai các mô hình PaddlePaddle của bạn trong các môi trường khác, hãy xem qua các tài nguyên sau:

  • Paddle Serving: Tìm hiểu cách triển khai các mô hình PaddlePaddle của bạn dưới dạng các dịch vụ hiệu suất 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 mô hình 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 mô hình 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 tôi đã khám phá quy trình xuất các mô hình 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 mô hình 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 tài liệu chính thức của PaddlePaddle.

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

Câu hỏi thường gặp (FAQ)

Làm thế nào để xuất các mô hình Ultralytics YOLO26 sang định dạng PaddlePaddle?

Việc xuất các mô hình Ultralytics YOLO26 sang định dạng PaddlePaddle rất đơn giản. Bạn có thể sử dụng phương thức export của lớp YOLO để thực hiện chuyển đổi. Dưới đây là ví dụ sử dụng Python:

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

# Load the 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 Hướng dẫn Cài đặt UltralyticsHướng dẫn các Vấn đề Thường gặp.

Những lợi thế của việc sử dụng PaddlePaddle để triển khai mô hình là gì?

PaddlePaddle mang lại một số lợi thế chính cho việc triển khai mô hình:

  • Tối ưu hóa hiệu suất: PaddlePaddle vượt trội trong việc thực thi mô hình hiệu quả và giảm thiểu mức sử dụng bộ nhớ.
  • Biên dịch Đồ thị Động-sang-Tĩnh: Nền tảng hỗ trợ biên dịch động sang tĩnh, cho phép thực hiện các tối ưu hóa trong thời gian chạy (runtime).
  • Hợp nhất toán tử: Bằng cách kết hợp các thao tác tương thích, nó giảm thiểu chi phí tính toán.
  • Các kỹ thuật lượng tử hóa: Hỗ trợ cả huấn luyện sau đào tạo và nhận biết lượng tử hóa, cho phép các biểu diễn dữ liệu có độ chính xác thấp hơn để cải thiện hiệu suất.

Bạn có thể đạt được kết quả nâng cao bằng cách xuất các mô hình Ultralytics YOLO26 của mình sang PaddlePaddle, đảm bảo sự linh hoạt và hiệu suất 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à khả năng chính của PaddlePaddle trong tài liệu chính thức của PaddlePaddle.

Tại sao tôi nên chọn PaddlePaddle để triển khai các mô hình YOLO26 của mình?

PaddlePaddle, được phát triển bởi Baidu, được tối ưu hóa cho các 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 mô hình YOLO26 của mình sang PaddlePaddle, bạn sẽ tận dụng được:

  • Hiệu suất nâng cao: Tốc độ thực thi tối ưu và dấu chân bộ nhớ giảm.
  • Sự 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 mô hình YOLO26 trong môi trường sản xuất.

PaddlePaddle cải thiện hiệu suất mô hình so với các framework khác như thế nào?

PaddlePaddle áp dụng một số kỹ thuật tiên tiến để tối ưu hóa hiệu suất mô hình:

  • Đồ thị Động-sang-Tĩnh: Chuyển đổi các mô hình thành một đồ thị tính toán tĩnh để tối ưu hóa trong thời gian chạy.
  • Hợp nhất toán tử: Kết hợp các thao tác tương thích để giảm thiểu việc truyền dữ liệu trong bộ nhớ và tăng tốc độ suy luận.
  • Lượng tử hóa: Giảm kích thước mô hình 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ì độ chính xác.

Những kỹ thuật này ưu tiên thực thi mô hình hiệu quả, làm cho PaddlePaddle trở thành một lựa chọn tuyệt vời để triển khai các mô hình YOLO26 hiệu suất cao. Để biết thêm về tối ưu hóa, hãy xem tài liệu chính thức của PaddlePaddle.

PaddlePaddle cung cấp những tùy chọn triển khai nào cho các mô hình YOLO26?

PaddlePaddle cung cấp các tùy chọn triển khai linh hoạt:

  • Paddle Serving: Triển khai các mô hình 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 mô hình và thử nghiệm A/B trực tuyến.
  • Paddle Inference API: Cung cấp khả năng kiểm soát cấp thấp đối với việc thực thi mô hình cho các ứng dụng tùy chỉnh.
  • Paddle Lite: Tối ưu hóa các mô hình cho các tài nguyên hạn chế của thiết bị di động và thiết bị nhúng.
  • Paddle.js: Cho phép triển khai các mô hình trực tiếp trong trình duyệt web.

Các tùy chọn này bao gồm một phạm vi rộng các kịch bản triển khai, từ suy luận 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 trang Tùy chọn Triển khai Mô hình Ultralytics.

Bình luận