Vai al contenuto

How to Export to PaddlePaddle Format from YOLO11 Models

Bridging the gap between developing and deploying computer vision models in real-world scenarios with varying conditions can be difficult. PaddlePaddle makes this process easier with its focus on flexibility, performance, and its capability for parallel processing in distributed environments. This means you can use your YOLO11 computer vision models on a wide variety of devices and platforms, from smartphones to cloud-based servers.



Guarda: How to Export Ultralytics YOLO11 Models to PaddlePaddle Format | Key Features of PaddlePaddle Format

The ability to export to PaddlePaddle model format allows you to optimize your Ultralytics YOLO11 models for use within the PaddlePaddle framework. PaddlePaddle is known for facilitating industrial deployments and is a good choice for deploying computer vision applications in real-world settings across various domains.

Perché dovresti esportare su PaddlePaddle?

PaddlePaddle Logo

Developed by Baidu, PaddlePaddle (PArallel Distributed Deep LEarning) is China's first open-source deep learning platform. Unlike some frameworks built mainly for research, PaddlePaddle prioritizes ease of use and smooth integration across industries.

It offers tools and resources similar to popular frameworks like TensorFlow and PyTorch, making it accessible for developers of all experience levels. From farming and factories to service businesses, PaddlePaddle's large developer community of over 4.77 million is helping create and deploy AI applications.

By exporting your Ultralytics YOLO11 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 YOLO11 models can potentially achieve even better performance, delivering top-notch results in practical scenarios.

Caratteristiche principali dei modelli PaddlePaddle

PaddlePaddle I modelli offrono una serie di caratteristiche chiave che contribuiscono alla loro flessibilità, alle prestazioni e alla scalabilità in diversi scenari di implementazione:

  • Grafo dinamico-statico: PaddlePaddle supporta la compilazione da dinamica a statica, in cui i modelli possono essere tradotti in un grafo computazionale statico. Questo permette di ottenere ottimizzazioni che riducono l'overhead del runtime e aumentano le prestazioni dell'inferenza.

  • Fusione di operatori: PaddlePaddle, come TensorRT, utilizza la fusione di operatori per semplificare il calcolo e ridurre l'overhead. Il framework riduce al minimo i trasferimenti di memoria e le fasi di calcolo unendo operazioni compatibili, ottenendo un'inferenza più veloce.

  • Quantizzazione: PaddlePaddle supporta le tecniche di quantizzazione, tra cui la quantizzazione post-training e la formazione consapevole della quantizzazione. Queste tecniche consentono di utilizzare rappresentazioni dei dati a bassa precisione, aumentando le prestazioni e riducendo le dimensioni del modello.

Opzioni di distribuzione in PaddlePaddle

Before diving into the code for exporting YOLO11 models to PaddlePaddle, let's take a look at the different deployment scenarios in which PaddlePaddle models excel.

PaddlePaddle offre una serie di opzioni, ognuna delle quali offre un equilibrio distinto tra facilità d'uso, flessibilità e prestazioni:

  • Paddle Serving: Questo framework semplifica la distribuzione dei modelli di PaddlePaddle come API RESTful ad alte prestazioni. Paddle Serving è ideale per gli ambienti di produzione e offre funzionalità come il versioning dei modelli, i test A/B online e la scalabilità per gestire grandi volumi di richieste.

  • API di inferenza Paddle: L'API di inferenza Paddle offre un controllo di basso livello sull'esecuzione del modello. Questa opzione è adatta agli scenari in cui devi integrare il modello in un'applicazione personalizzata o ottimizzare le prestazioni per un hardware specifico.

  • Paddle Lite: Paddle Lite è progettato per essere utilizzato su dispositivi mobili ed embedded dove le risorse sono limitate. Ottimizza i modelli per ottenere dimensioni ridotte e un'inferenza più veloce su CPU ARM, GPU e altro hardware specializzato.

  • Paddle.js: Paddle.js ti permette di distribuire i modelli di PaddlePaddle direttamente nei browser web. Paddle.js può caricare un modello pre-addestrato o trasformare un modello da paddle-hub con gli strumenti di trasformazione dei modelli forniti da Paddle.js. Può essere eseguito nei browser che supportano WebGL/WebGPU/WebAssembly.

Export to PaddlePaddle: Converting Your YOLO11 Model

Converting YOLO11 models to the PaddlePaddle format can improve execution flexibility and optimize performance for various deployment scenarios.

Installazione

Per installare il pacchetto richiesto, esegui:

Installazione

# Install the required package for YOLO11
pip install ultralytics

For detailed instructions and best practices related to the installation process, check our Ultralytics Installation guide. While installing the required packages for YOLO11, if you encounter any difficulties, consult our Common Issues guide for solutions and tips.

Utilizzo

Before diving into the usage instructions, it's important to note that while all Ultralytics YOLO11 models are available for exporting, you can ensure that the model you select supports export functionality here.

Utilizzo

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

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

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

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

# Run inference with the exported model
yolo predict model='./yolo11n_paddle_model' source='https://ultralytics.com/images/bus.jpg'

Per maggiori dettagli sulle opzioni di esportazione supportate, visita la pagina di documentazione diUltralytics sulle opzioni di distribuzione.

Deploying Exported YOLO11 PaddlePaddle Models

After successfully exporting your Ultralytics YOLO11 models to PaddlePaddle format, you can now deploy them. The primary and recommended first step for running a PaddlePaddle model is to use the YOLO("./model_paddle_model") method, as outlined in the previous usage code snippet.

Tuttavia, per istruzioni approfondite su come distribuire i modelli di PaddlePaddle in vari altri contesti, consulta le seguenti risorse:

  • Pagaia al servizio: Scopri come distribuire i tuoi modelli PaddlePaddle come servizi performanti utilizzando Paddle Serving.

  • Pagaia Lite: Scopri come ottimizzare e distribuire i modelli su dispositivi mobili ed embedded utilizzando Paddle Lite.

  • Paddle.js: Scopri come eseguire i modelli di PaddlePaddle nei browser web per l'intelligenza artificiale lato client utilizzando Paddle.js.

Sommario

In this guide, we explored the process of exporting Ultralytics YOLO11 models to the PaddlePaddle format. By following these steps, you can leverage PaddlePaddle's strengths in diverse deployment scenarios, optimizing your models for different hardware and software environments.

Per ulteriori dettagli sull'utilizzo, visita la documentazione ufficiale di PaddlePaddle

Want to explore more ways to integrate your Ultralytics YOLO11 models? Our integration guide page explores various options, equipping you with valuable resources and insights.

DOMANDE FREQUENTI

How do I export Ultralytics YOLO11 models to PaddlePaddle format?

Exporting Ultralytics YOLO11 models to PaddlePaddle format is straightforward. You can use the export della classe YOLO per eseguire questa esportazione. Ecco un esempio che utilizza Python:

Utilizzo

from ultralytics import YOLO

# Load the YOLO11 model
model = YOLO("yolo11n.pt")

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

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

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

# Run inference with the exported model
yolo predict model='./yolo11n_paddle_model' source='https://ultralytics.com/images/bus.jpg'

Per una configurazione più dettagliata e per la risoluzione dei problemi, consulta la Guida all'installazione diUltralytics e la Guida ai problemi comuni.

What are the advantages of using PaddlePaddle for model deployment?

PaddlePaddle offre diversi vantaggi chiave per la distribuzione dei modelli:

  • Ottimizzazione delle prestazioni: PaddlePaddle eccelle per l'efficienza dell'esecuzione dei modelli e la riduzione dell'utilizzo della memoria.
  • Compilazione dinamica-statica dei grafici: Supporta la compilazione da dinamica a statica, consentendo di ottimizzare il tempo di esecuzione.
  • Fusione di operatori: Unendo le operazioni compatibili, riduce l'overhead computazionale.
  • Quantization Techniques: Supports both post-training and quantization-aware training, enabling lower-precision data representations for improved performance.

You can achieve enhanced results by exporting your Ultralytics YOLO11 models to PaddlePaddle, ensuring flexibility and high performance across various applications and hardware platforms. Learn more about PaddlePaddle's features here.

Why should I choose PaddlePaddle for deploying my YOLO11 models?

PaddlePaddle, developed by Baidu, is optimized for industrial and commercial AI deployments. Its large developer community and robust framework provide extensive tools similar to TensorFlow and PyTorch. By exporting your YOLO11 models to PaddlePaddle, you leverage:

  • Prestazioni migliorate: Velocità di esecuzione ottimale e ingombro di memoria ridotto.
  • Flessibilità: Ampia compatibilità con diversi dispositivi, dagli smartphone ai server cloud.
  • Scalabilità: Funzionalità di elaborazione parallela efficienti per ambienti distribuiti.

These features make PaddlePaddle a compelling choice for deploying YOLO11 models in production settings.

In che modo PaddlePaddle migliora le prestazioni dei modelli rispetto ad altri framework?

PaddlePaddle impiega diverse tecniche avanzate per ottimizzare le prestazioni del modello:

  • Grafico dinamico-statico: Converte i modelli in un grafo computazionale statico per le ottimizzazioni di runtime.
  • Fusione di operatori: Combina operazioni compatibili per ridurre al minimo il trasferimento di memoria e aumentare la velocità di inferenza.
  • Quantization: Reduces model size and increases efficiency using lower-precision data while maintaining accuracy.

These techniques prioritize efficient model execution, making PaddlePaddle an excellent option for deploying high-performance YOLO11 models. For more on optimization, see the PaddlePaddle official documentation.

What deployment options does PaddlePaddle offer for YOLO11 models?

PaddlePaddle offre opzioni di distribuzione flessibili:

  • Paddle Serving: Distribuisce i modelli come API RESTful, ideale per la produzione con funzioni come la versionatura dei modelli e i test A/B online.
  • API di inferenza Paddle: Fornisce un controllo di basso livello sull'esecuzione del modello per le applicazioni personalizzate.
  • Paddle Lite: Ottimizza i modelli per le risorse limitate dei dispositivi mobili ed embedded.
  • Paddle.js: consente di distribuire i modelli direttamente nei browser web.

Queste opzioni coprono un'ampia gamma di scenari di implementazione, dall'inferenza sul dispositivo ai servizi cloud scalabili. Scopri altre strategie di distribuzione nella pagina Opzioni di distribuzione del modelloUltralytics .

📅 Created 7 months ago ✏️ Updated 22 days ago

Commenti