YOLO Vision 2025'i kaçırmayın!
25 Eylül 2025
10:00 — 18:00 BST
Hibrit etkinlik
Yolo Vision 2024

PaddlePaddle entegrasyonunu kullanarak Ultralytics YOLO11'i dışa aktarma

Abirami Vina

5 dakikalık okuma

16 Mayıs 2025

Uç, mobil ve bulut platformlarında verimli dağıtım için Ultralytics YOLO11 gibi Ultralytics YOLO modellerini PaddlePaddle ile nasıl dışa aktaracağınızı öğrenin.

Yapay zeka (AI) ilerledikçe, makineler çevrelerindeki dünyayı anlama konusunda daha iyi hale geliyor. Bu ilerlemeyi yönlendiren önemli bir alan, makinelerin görsel verilere dayanarak yorumlama ve karar verme yeteneği sağlayan bir yapay zeka dalı olan bilgisayarlı görü 'dür.

Arabaların trafik işaretlerini tanımasına yardımcı olmaktan, perakende mağazalarındaki rafları kontrol etmeye kadar, bilgisayarlı görü artık birçok günlük aracın bir parçası. Bu görevler, bir fotoğrafı veya videoyu hızla tarayabilen ve neyin önemli olduğunu belirleyebilen Görüntüleme Yapay Zeka modellerine dayanır.

Zamanla, bu modeller daha hızlı ve daha doğru hale geldi ve bu da onları tarım, sağlık, güvenlik ve perakende gibi alanlarda faydalı hale getirdi. Örneğin, Ultralytics YOLO11, çeşitli bilgisayarlı görü görevlerini hız ve hassasiyetle işlemek için oluşturulmuş bir modeldir. Nesneleri algılayıp sınıflandırabilir, hareketi izleyebilir ve vücut pozlarını tahmin edebilir.

Bilgisayarlı görüyü araştırmadan gerçek dünya uygulamalarına taşımanın hayati bir parçası dağıtımdır. Bir model eğitildikten sonra, bir sonraki adım onu telefonlar, uç donanımlar veya bulut sunucuları gibi cihazlarda çalıştırmaktır. 

Şekil 1. Model dağıtımı, herhangi bir bilgisayarlı görü projesinin önemli bir parçasıdır.

Bunu desteklemek için, YOLO11 gibi Ultralytics YOLO modelleri, hedef platforma bağlı olarak çeşitli formatlara aktarılabilir. Bu formatlardan biri, çok çeşitli cihaz ve sistemlerde verimli model dağıtımını ve çıkarımını sağlayan açık kaynaklı bir yapay zeka çerçevesi olan PaddlePaddle'dır.

Bu makalede, çeşitli platformlarda verimli dağıtımı sağlamak için Ultralytics YOLO11'in Ultralytics tarafından desteklenen PaddlePaddle entegrasyonu aracılığıyla nasıl dışa aktarılabileceğini inceleyeceğiz.

PaddlePaddle nedir? 

Yapay zeka modellerini araştırma ortamları dışında, örneğin mobil cihazlarda veya uç donanımlarda dağıtmak, özellikle verimli bir şekilde çalıştırmanız ve minimum kaynak kullanmanız gerektiğinde zaman zaman zor olabilir. PaddlePaddle, tam olarak bu konuda yardımcı olmak için tasarlanmış bir derin öğrenme çerçevesidir.

Paralel Dağıtılmış Derin Öğrenme anlamına gelen adı ile Çinli bir açık kaynak platformudur. Yapay zeka ve yazılım altyapısındaki çalışmalarıyla tanınan bir şirket olan Baidu tarafından geliştirilen PaddlePaddle, özellikle sadece araştırma için değil, gerçek dünya uygulamaları için oluşturulmuştur.

Geliştiriciler, PaddlePaddle formatındaki modelleri sunucularda, uç cihazlarda ve hatta mobil donanımlarda çalıştırabilir. Ayrıca, düşük kodlu ve kodsuz seçenekler de dahil olmak üzere yapay zeka geliştirmeyi basitleştiren araçları da destekler. Platform, 4,7 milyondan fazla kullanıcısı olan güçlü bir geliştirici topluluğuna sahiptir ve sağlık, tarım, üretim ve finans dahil olmak üzere çeşitli sektörlerde kullanılmaktadır.

PaddlePaddle'ın temel özellikleri

İşte PaddlePaddle'ın modelleri gerçek dünya cihazlarında daha verimli çalıştırmasına yardımcı olan bazı temel özellikler:

  • Dinamikten statik grafiğe dönüştürme: Bu özellik, esnek bir modeli daha sorunsuz ve öngörülebilir şekilde çalışan sabit bir sürüme dönüştürür. Sabit bir modelin optimize edilmesi daha kolaydır ve tahmin yaparken daha hızlıdır.
  • Operatör füzyonu: PaddlePaddle, modeldeki birden çok adımı tek bir adımda birleştirebilir. Bu, modelin ne kadar bellek kullandığını azaltır ve daha hızlı çalışmasına yardımcı olur. Zamandan tasarruf etmek için birkaç görevi tek bir eylemde birleştirmek gibi düşünün.
  • Kuantalama: Bu, daha basit sayılar (daha az ondalık basamağa yuvarlama gibi) kullanarak modeli küçültür. Modelin, çok fazla doğruluk kaybetmeden telefonlar veya akıllı kameralar gibi sınırlı güce sahip cihazlarda çalışmasına yardımcı olur.
Şekil 2. PaddlePaddle kullanmanın avantajları. Yazarın görseli.

PaddlePaddle ile YOLO11 dağıtımına genel bir bakış

Ultralytics tarafından desteklenen PaddlePaddle entegrasyonu, eğitimden dağıtıma geçişi kolaylaştırır. Zaten PaddlePaddle araçlarını kullanan geliştiriciler, YOLO11'i iş akışlarına daha kolay getirebilir.

Ultralytics Python paketi, YOLO11 modellerinin doğrudan PaddlePaddle formatına aktarılmasını destekleyerek, geliştiricilerin eğitilmiş modelleri ek araçlara veya manuel dönüştürme adımlarına gerek kalmadan dağıtmasına olanak tanır. 

Dışa aktarma işlemi, komut satırı veya Python kodu kullanılarak yapılabilir, böylece geliştiriciler iş akışlarına en uygun yöntemi seçebilirler. Bu, işleri basit tutmaya yardımcı olur ve kurulum sorunları olasılığını azaltır. Dışa aktarıldıktan sonra, model nesne tespiti, görüntü sınıflandırması, poz tahmini ve örnek segmentasyonu gibi bilgisayarla görü görevleri için kullanılabilir.

Cihazların sınırlı belleğe sahip olduğu veya hızlı işlem gerektirdiği dağıtım senaryoları için harika bir seçenektir. Dışa aktarılan modeller, kaynak kısıtlamalı sistemlerde bile verimli çalışacak şekilde optimize edilmiştir. 

YOLO11 modelleri PaddlePaddle formatına nasıl aktarılır?

YOLO11'i PaddlePaddle model formatına aktarmak yalnızca birkaç adım sürer.

İlk adım, ‘pip’ gibi bir paket yöneticisi kullanarak Ultralytics Python paketini yüklemektir. Başlamak için komut isteminizde veya terminalinizde “pip install ultralytics” komutunu çalıştırarak bu yapılabilir.

Ultralytics paketi, çeşitli bilgisayarla görü görevleri için modelleri eğitmek, değerlendirmek, ince ayar yapmak, dışa aktarmak ve dağıtmak için araçlar sağlar. Kurulum sırasında herhangi bir sorunla karşılaşırsanız, sorun giderme ipuçları için Sık Karşılaşılan Sorunlar kılavuzuna bakın.

Ortamınız kurulduktan sonra, aşağıda gösterildiği gibi “yolo11n.pt” gibi önceden eğitilmiş bir YOLO11 modelini yükleyebilir ve dışa aktarabilirsiniz. Kendi özel eğitilmiş YOLO11 modelinizi de dışa aktarabilirsiniz.

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="paddle")

Modeliniz PaddlePaddle formatına dönüştürüldükten sonra, farklı donanım türlerinde çeşitli senaryolarda dağıtılabilir.

Örneğin, aşağıdaki örnekte, PaddlePaddle formatına aktarılmış bir YOLO11 modelini yüklüyor ve bir tahminde bulunmak için kullanıyoruz. Bir çıkarım çalıştırmak olarak bilinen bu işlem, basitçe modeli yeni verileri analiz etmek için kullanmak anlamına gelir. Burada, iki köpeğin görüntüsüyle test ediyoruz.

paddle_model = YOLO("./yolo11n_paddle_model")

paddle_model("https://images.pexels.com/photos/33287/dog-viszla-close.jpg", save=True)

Kodu çalıştırdıktan sonra, modelin tahminlerini içeren çıktı görüntüsü otomatik olarak “runs/detect/predict” klasörüne kaydedilecektir.

Şekil 3. Dışa aktarılmış YOLO11 modelini bir görüntüdeki nesneleri tespit etmek için kullanma. Görüntü: Yazar.

PaddlePaddle çerçevesini kullanarak YOLO11'i dağıtma

PaddlePaddle, bulut ortamları, gömülü sistemler ve web uygulamaları gibi farklı cihazlar ve kullanım durumları için uygun çeşitli dağıtım araçları sunar. İşte bazı ana dağıtım seçenekleri:

  • Paddle Serving: Modelleri REST API'leri olarak dağıtmaya yardımcı olur, bu da onu sürüm kontrolü ve çevrimiçi test gibi özelliklere ihtiyaç duyan bulut veya sunucu ortamları için iyi bir seçim haline getirir.
  • Paddle Inference API: Modellerin nasıl çalıştığı üzerinde daha fazla kontrol sağlar; bu da performansı ince ayarlamanız veya özel uygulama mantığı oluşturmanız gerektiğinde faydalıdır.
  • Paddle Lite: Mobil cihazlarda, tabletlerde ve gömülü sistemlerde hafif dağıtım için tasarlanmıştır. Daha küçük modeller ve sınırlı kaynaklara sahip donanımlarda daha hızlı çıkarım için optimize edilmiştir.
  • Paddle.js: WebGL ve WebAssembly gibi teknolojileri kullanarak web tarayıcılarında yapay zeka modelleri çalıştırmanıza olanak tanır; bu da etkileşimli demolar ve tarayıcı tabanlı araçlar için kullanışlıdır.
Şekil 4. PaddlePaddle tarafından etkinleştirilen dağıtım seçenekleri. Görüntü: Yazar.

Kurulumunuz için doğru aracı seçtikten sonra, dışa aktarılan modeli yükleyebilirsiniz. PaddlePaddle motoru sonraki adımlarla ilgilenir. Modeli yükler, giriş görüntüsünü işler ve sonuçları geri verir.

PaddlePaddle entegrasyonunu ne zaman seçmelisiniz?

Ultralytics Python paketi ayrıca çeşitli diğer dışa aktarma formatlarını da destekler, bu nedenle kendinize şunu sorabilirsiniz: PaddlePaddle ne zaman doğru seçimdir?

PaddlePaddle, akıllı telefonlar, gömülü sistemler veya uç donanımı gibi sınırlı kaynaklara sahip cihazlarda modelleri dağıtmak istediğinizde güvenilir bir seçenektir. Ayrıca, mobil uygulamalarda nesne tespiti, akıllı kameralarda görsel tabanlı izleme veya doğrudan cihaz üzerinde bulut desteği olmadan çalışan poz tahmini gibi hızlı, verimli performansa ihtiyaç duyan gerçek zamanlı uygulamalar için de harikadır.

Bunun ötesinde, projenin çevrimdışı veya düşük bağlantılı ortamlarda çalışması gerekiyorsa, PaddlePaddle entegrasyonunu kullanmayı düşünebilirsiniz. Üretimde görsel inceleme araçları, saha araştırmaları için el cihazları veya yapay zeka özellikli perakende tarayıcıları gibi uygulamalar, PaddlePaddle'ın hafif çalışma zamanından ve esnek dağıtım seçeneklerinden yararlanabilir. 

Göz önünde bulundurulması gereken PaddlePaddle sınırlamaları

PaddlePaddle ilginç dağıtım yetenekleri sunarken, dikkat edilmesi gereken bazı kısıtlayıcı faktörler şunlardır:

  • Daha küçük küresel topluluk: Çin dışında, kullanıcı ve katkıda bulunan kişi sayısı nispeten azdır. Bu durum, topluluk desteği bulmayı, çözülmüş GitHub sorunlarını veya Stack Overflow yanıtlarını bulmayı zorlaştırabilir.
  • Baidu araçları haricinde daha dik öğrenme eğrisi: PaddlePaddle, Baidu'nun ekosistemiyle sorunsuz bir şekilde entegre olur, ancak bu bağlamın dışında kullanmak ek yapılandırma ve kurulum adımları gerektirebilir.
  • Ana akım ML araçlarıyla daha az entegrasyon: PaddlePaddle'ın Hugging Face Transformers, MLflow veya Kubernetes tabanlı AI hizmetleri gibi yaygın araçlarla sınırlı uyumluluğu vardır.

Önemli çıkarımlar

Ultralytics tarafından desteklenen PaddlePaddle entegrasyonu, YOLOv8 modellerini çeşitli cihazlara aktarmayı ve dağıtmayı kolaylaştırır. Özellikle mobil uygulamalar, akıllı kameralar veya gömülü sistemler gibi verimli, cihaz üzerinde performans gerektiren projeler için kullanışlıdır.

Sadece birkaç adımda, güçlü görüntü işleme modellerini gerçek dünya uygulamalarına taşıyabilirsiniz. Bilgisayarlı görü giderek ilerledikçe, YOLO ve PaddlePaddle gibi araçlar, tüketici cihazlarından endüstriyel araçlara kadar her şeyde hızlı, akıllı sistemler oluşturmayı her zamankinden daha kolay hale getiriyor.

Büyüyen topluluğumuza bugün katılın! GitHub depomuzu keşfederek yapay zekaya daha derinlemesine dalın. Kendi bilgisayarlı görü projelerinizi mi oluşturmak istiyorsunuz? Lisanslama seçeneklerimizi inceleyin. Sağlık hizmetlerinde bilgisayarlı görünün verimliliği nasıl artırdığını öğrenin ve çözümler sayfalarımızı ziyaret ederek yapay zekanın perakendedeki etkisini keşfedin!

Gelin, yapay zekanın geleceğini
birlikte inşa edelim!

Makine öğreniminin geleceği ile yolculuğunuza başlayın

Ücretsiz başlayın
Bağlantı panoya kopyalandı