İçeriğe geç

YOLOv8 Modellerinden PaddlePaddle Formatına Nasıl Aktarılır

Farklı koşullara sahip gerçek dünya senaryolarında bilgisayarla görme modelleri geliştirmek ve uygulamak arasındaki boşluğu doldurmak zor olabilir. PaddlePaddle esneklik, performans ve dağıtılmış ortamlarda paralel işleme kapasitesine odaklanarak bu süreci kolaylaştırır. Bu, YOLOv8 bilgisayarla görme modellerinizi akıllı telefonlardan bulut tabanlı sunuculara kadar çok çeşitli cihaz ve platformlarda kullanabileceğiniz anlamına gelir.

PaddlePaddle model formatına dışa aktarma yeteneği, aşağıdakileri optimize etmenize olanak tanır Ultralytics YOLOv8PaddlePaddle çerçevesinde kullanım için modeller. PaddlePaddle , endüstriyel dağıtımları kolaylaştırmasıyla bilinir ve çeşitli alanlardaki gerçek dünya ortamlarında bilgisayarla görme uygulamalarını dağıtmak için iyi bir seçimdir.

Neden PaddlePaddle adresine ihracat yapmalısınız?

PaddlePaddle Logo

Baidu tarafından geliştirilmiştir, PaddlePaddle(PArallel Distributed Deep LEarning) Çin'in ilk açık kaynaklı derin öğrenme platformudur. Esas olarak araştırma için oluşturulmuş bazı çerçevelerin aksine, PaddlePaddle kullanım kolaylığına ve sektörler arasında sorunsuz entegrasyona öncelik verir.

TensorFlow ve PyTorch gibi popüler çerçevelere benzer araçlar ve kaynaklar sunarak tüm deneyim seviyelerindeki geliştiriciler için erişilebilir hale getirir. Tarım ve fabrikalardan hizmet işletmelerine kadar, PaddlePaddle'un 4,77 milyonu aşkın geniş geliştirici topluluğu yapay zeka uygulamalarının oluşturulmasına ve dağıtılmasına yardımcı oluyor.

Dışa aktararak Ultralytics YOLOv8 modelleri için PaddlePaddle biçiminde, içine dokunabilirsiniz PaddlePaddle'nin performans optimizasyonundaki güçlü yönleri. PaddlePaddle Verimli model yürütmeye ve daha az bellek kullanımına öncelik verir. Sonuç olarak, YOLOv8 Modeller potansiyel olarak daha da iyi performans elde edebilir ve pratik senaryolarda birinci sınıf sonuçlar sunar.

PaddlePaddle Modellerinin Temel Özellikleri

PaddlePaddle modelleri, çeşitli dağıtım senaryolarında esneklik, performans ve ölçeklenebilirliklerine katkıda bulunan bir dizi temel özellik sunar:

  • Dinamikten Statik Grafiğe: PaddlePaddle , modellerin statik bir hesaplama grafiğine çevrilebildiği dinamikten statik derlemeyi destekler. Bu, çalışma zamanı ek yükünü azaltan ve çıkarım performansını artıran optimizasyonlara olanak tanır.

  • Operatör Füzyonu: PaddlePaddle TensorRT gibi, hesaplamayı kolaylaştırmak ve ek yükü azaltmak için operatör füzyonunu kullanır. Çerçeve, uyumlu işlemleri birleştirerek bellek aktarımlarını ve hesaplama adımlarını en aza indirir ve daha hızlı çıkarım sağlar.

  • Niceleme: PaddlePaddle , eğitim sonrası niceleme ve niceleme farkındalı eğitim dahil olmak üzere niceleme tekniklerini destekler. Bu teknikler, daha düşük hassasiyetli veri temsillerinin kullanılmasına izin vererek performansı etkili bir şekilde artırır ve model boyutunu azaltır.

Dağıtım Seçenekleri PaddlePaddle

YOLOv8 modellerini PaddlePaddle adresine aktarma koduna dalmadan önce, PaddlePaddle modellerinin mükemmel olduğu farklı dağıtım senaryolarına bir göz atalım.

PaddlePaddle her biri farklı bir kullanım kolaylığı, esneklik ve performans dengesi sunan bir dizi seçenek sunar:

  • Paddle Serving: Bu çerçeve, PaddlePaddle modellerinin yüksek performanslı RESTful API'ler olarak dağıtımını basitleştirir. Üretim ortamları için ideal olan Paddle Serving, model sürümleme, çevrimiçi A/B testi ve büyük hacimli istekleri işlemek için ölçeklenebilirlik gibi özellikler sunar.

  • Paddle Çıkarım API'si: Paddle Inference API size model yürütme üzerinde düşük seviyeli kontrol sağlar. Bu seçenek, modeli özel bir uygulamaya sıkıca entegre etmeniz veya belirli bir donanım için performansı optimize etmeniz gereken senaryolar için çok uygundur.

  • Paddle Lite: Paddle Lite, kaynakların sınırlı olduğu mobil ve gömülü cihazlarda kullanılmak üzere tasarlanmıştır. Modelleri daha küçük boyutlar ve ARM CPU'lar, GPU'lar ve diğer özel donanımlarda daha hızlı çıkarım için optimize eder.

  • Paddle.js: Paddle.js, PaddlePaddle modellerini doğrudan web tarayıcılarında dağıtmanıza olanak tanır. Paddle.js, önceden eğitilmiş bir modeli yükleyebilir veya Paddle.js tarafından sağlanan model dönüştürme araçlarıyla paddle-hub 'dan bir modeli dönüştürebilir. WebGL/WebGPU/WebAssembly destekleyen tarayıcılarda çalışabilir.

PaddlePaddle adresine aktarın: YOLOv8 Modelinizi Dönüştürme

YOLOv8 modellerinin PaddlePaddle formatına dönüştürülmesi, yürütme esnekliğini artırabilir ve çeşitli dağıtım senaryoları için performansı optimize edebilir.

Kurulum

Gerekli paketi yüklemek için çalıştırın:

Kurulum

# Install the required package for YOLOv8
pip install ultralytics

Kurulum süreciyle ilgili ayrıntılı talimatlar ve en iyi uygulamalar için Ultralytics Kurulum kılavuzumuza göz atın. YOLOv8 için gerekli paketleri yüklerken herhangi bir zorlukla karşılaşırsanız, çözümler ve ipuçları için Ortak Sorunlar kılavuz umuza başvurun.

Kullanım

Kullanım talimatlarına geçmeden önce, tüm Ultralytics YOLOv8 modellerinin dışa aktarılabildiğini, ancak seçtiğiniz modelin dışa aktarma işlevini desteklediğinden burada emin olabileceğinizi belirtmek önemlidir.

Kullanım

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'

Desteklenen dışa aktarma seçenekleri hakkında daha fazla bilgi için dağıtım seçenekleriyle ilgiliUltralytics belge sayfasını ziyaret edin.

Dışa Aktarılan YOLOv8 PaddlePaddle Modellerini Dağıtma

Ultralytics YOLOv8 modellerinizi PaddlePaddle biçimine başarıyla aktardıktan sonra, artık bunları dağıtabilirsiniz. Bir PaddlePaddle modelini çalıştırmak için birincil ve önerilen ilk adım, önceki kullanım kod parçasında belirtildiği gibi YOLO("./model_paddle_model") yöntemini kullanmaktır.

Bununla birlikte, PaddlePaddle modellerinizi diğer çeşitli ortamlarda dağıtmaya ilişkin ayrıntılı talimatlar için aşağıdaki kaynaklara göz atın:

  • Kürek Servisi: Paddle Serving kullanarak PaddlePaddle modellerinizi performanslı hizmetler olarak nasıl dağıtacağınızı öğrenin.

  • Paddle Lite: Paddle Lite kullanarak mobil ve gömülü cihazlarda modellerin nasıl optimize edileceğini ve dağıtılacağını keşfedin.

  • Paddle.js: Paddle.js kullanarak istemci tarafı yapay zeka için PaddlePaddle modellerini web tarayıcılarında nasıl çalıştıracağınızı keşfedin.

Özet

Bu kılavuzda, Ultralytics YOLOv8 modellerini PaddlePaddle formatına aktarma sürecini inceledik. Bu adımları izleyerek, farklı donanım ve yazılım ortamları için modellerinizi optimize ederek çeşitli dağıtım senaryolarında PaddlePaddle'un güçlü yönlerinden yararlanabilirsiniz.

Kullanım hakkında daha fazla bilgi için PaddlePaddle resmi belgelerini ziyaret edin

Ultralytics YOLOv8 modellerinizi entegre etmenin daha fazla yolunu keşfetmek ister misiniz? Entegrasyon kılavuzu sayfamız çeşitli seçenekleri inceleyerek sizi değerli kaynaklar ve içgörülerle donatıyor.

SSS

Ultralytics YOLOv8 modellerini PaddlePaddle formatına nasıl aktarabilirim?

Ultralytics YOLOv8 modellerini PaddlePaddle formatına aktarmak kolaydır. Kullanabileceğiniz export YOLO yöntemini kullanarak bu dışa aktarımı gerçekleştirebilirsiniz. İşte Python kullanarak bir örnek:

Kullanım

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'

Daha ayrıntılı kurulum ve sorun giderme için Ultralytics Kurulum Kılavuzu ve Yaygın Sorunlar Kılavuzu'na bakın.

Model dağıtımı için PaddlePaddle adresini kullanmanın avantajları nelerdir?

PaddlePaddle model dağıtımı için birkaç önemli avantaj sunar:

  • Performans Optimizasyonu: PaddlePaddle verimli model yürütme ve düşük bellek kullanımı konusunda üstündür.
  • Dinamikten Statik Grafiğe Derleme: Çalışma zamanı optimizasyonlarına izin veren dinamikten statik derlemeyi destekler.
  • Operatör Füzyonu: Uyumlu işlemleri birleştirerek hesaplama yükünü azaltır.
  • Niceleme Teknikleri: Hem eğitim sonrası hem de niceleme farkındalı eğitimi destekleyerek gelişmiş performans için daha düşük hassasiyetli veri temsillerine olanak tanır.

Çeşitli uygulamalar ve donanım platformlarında esneklik ve yüksek performans sağlayan Ultralytics YOLOv8 modellerinizi PaddlePaddle adresine aktararak gelişmiş sonuçlar elde edebilirsiniz. PaddlePaddle 'un özellikleri hakkında daha fazla bilgiyi buradan edinebilirsiniz.

YOLOv8 modellerimi dağıtmak için neden PaddlePaddle adresini seçmeliyim?

PaddlePaddleBaidu tarafından geliştirilmiştir ve endüstriyel ve ticari yapay zeka dağıtımları için optimize edilmiştir. Geniş geliştirici topluluğu ve sağlam çerçevesi TensorFlow ve PyTorch'a benzer kapsamlı araçlar sağlar. YOLOv8 modellerinizi PaddlePaddle adresine aktararak aşağıdaki avantajlardan yararlanabilirsiniz:

  • Geliştirilmiş Performans: Optimum yürütme hızı ve azaltılmış bellek ayak izi.
  • Esneklik: Akıllı telefonlardan bulut sunucularına kadar çeşitli cihazlarla geniş uyumluluk.
  • Ölçeklenebilirlik: Dağıtık ortamlar için verimli paralel işleme yetenekleri.

Bu özellikler PaddlePaddle 'u YOLOv8 modellerini üretim ortamlarında dağıtmak için cazip bir seçim haline getirmektedir.

PaddlePaddle diğer çerçevelere göre model performansını nasıl artırıyor?

PaddlePaddle model performansını optimize etmek için çeşitli gelişmiş teknikler kullanır:

  • Dinamikten Statik Grafiğe: Çalışma zamanı optimizasyonları için modelleri statik bir hesaplama grafiğine dönüştürür.
  • Operatör Füzyonu: Bellek aktarımını en aza indirmek ve çıkarım hızını artırmak için uyumlu işlemleri birleştirir.
  • Niceleme: Model boyutunu azaltır ve doğruluğu korurken daha düşük hassasiyetli veriler kullanarak verimliliği artırır.

Bu teknikler verimli model yürütmeye öncelik vererek PaddlePaddle 'u yüksek performanslı YOLOv8 modellerini dağıtmak için mükemmel bir seçenek haline getirir. Optimizasyon hakkında daha fazla bilgi için PaddlePaddle resmi belgelerine bakın.

PaddlePaddle , YOLOv8 modelleri için hangi dağıtım seçeneklerini sunuyor?

PaddlePaddle esnek dağıtım seçenekleri sunar:

  • Paddle Serving: Modelleri RESTful API'ler olarak dağıtır, model sürümleme ve çevrimiçi A/B testi gibi özelliklerle üretim için idealdir.
  • Paddle Çıkarım API'si: Özel uygulamalar için model yürütme üzerinde düşük seviyeli kontrol sağlar.
  • Paddle Lite: Modelleri mobil ve gömülü cihazların sınırlı kaynakları için optimize eder.
  • Paddle.js: Modellerin doğrudan web tarayıcılarında dağıtılmasını sağlar.

Bu seçenekler, cihaz üzerinde çıkarımdan ölçeklenebilir bulut hizmetlerine kadar çok çeşitli dağıtım senaryolarını kapsar. Ultralytics Model Dağıtım Seçenekleri sayfasında daha fazla dağıtım stratejisi keşfedin.



Oluşturma 2024-03-11, Güncelleme 2024-07-05
Yazarlar: glenn-jocher (5), Burhan-Q (1), abirami-vina (2)

Yorumlar