PaddlePaddle entegrasyonunu kullanarak Ultralytics YOLO11'i aktarmak
Uç, mobil ve bulut platformlarında verimli dağıtım için Ultralytics YOLO11 gibi Ultralytics YOLO modellerini PaddlePaddle ile nasıl aktaracağını öğren.

Yapay zeka (AI) geliştikçe makineler çevrelerindeki dünyayı anlamada daha iyi hale geliyor. Bu ilerlemeyi yönlendiren temel alanlardan biri, makinelerin görsel verilere dayanarak yorum yapmasını ve kararlar almasını sağlayan bir yapay zeka dalı olan computer vision alanı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ı haline geldi. Bu görevler, bir fotoğrafı veya videoyu hızlıca tarayıp neyin önemli olduğunu tanımlayabilen görme odaklı YZ modellerine dayanır.
Zaman içinde bu modeller daha hızlı ve daha doğru hale gelerek tarım, sağlık, güvenlik ve perakende gibi alanlarda yararlı olmalarını sağladı. Örneğin, Ultralytics YOLO11 çeşitli computer vision görevlerini hız ve hassasiyetle ele almak için oluşturulmuş bir modeldir. Nesneleri tespit edebilir ve sınıflandırabilir, hareketi takip edebilir ve vücut duruşları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 (deployment). Bir model eğitildikten sonra, bir sonraki adım onu telefonlar, uç cihazlar (edge hardware) veya bulut sunucuları gibi cihazlarda çalıştırmaktır.

Şekil 1. Model dağıtımı herhangi bir bilgisayarlı görü projesinin kilit bir parçasıdır.
Bunu desteklemek için, YOLO11 gibi Ultralytics YOLO models hedef platforma bağlı olarak çeşitli formatlara aktarılabilir. Bu formatlardan biri, çok çeşitli cihaz ve sistemlerde verimli model deployment ve çıkarımı sağlayan açık kaynaklı bir yapay zeka çerçevesi olan PaddlePaddle'dır.
Bu makalede, çeşitli platformlarda verimli deployment sağlamak amacıyla Ultralytics tarafından desteklenen PaddlePaddle integration aracılığıyla Ultralytics YOLO11'in nasıl dışa aktarılabileceğini inceleyeceğiz.
PaddlePaddle nedir?#
Yapay zeka modellerini mobil cihazlar veya uç donanımlar gibi araştırma ortamlarının dışında dağıtmak, özellikle verimli çalışmaları ve minimum kaynak kullanmaları gerektiğinde bazen zor olabilir. PaddlePaddle, tam olarak bu konuda yardımcı olmak için tasarlanmış bir deep learning framework sistemidir.
Bu, adı Paralel Dağıtık Derin Öğrenme (Parallel Distributed Deep Learning) anlamına gelen Çin merkezli açık kaynaklı bir platformdur. YZ ve yazılım altyapısındaki çalışmalarıyla tanınan Baidu tarafından geliştirilen PaddlePaddle, sadece araştırma için değil, özellikle gerçek dünya uygulamaları için yaratılmıştır.
Geliştiriciler, PaddlePaddle formatındaki modelleri sunucularda, uç cihazlarda ve hatta mobil donanımlarda çalıştırabilirler. Ayrıca, düşük kodlu ve kodsuz seçenekler dahil olmak üzere YZ geliştirmeyi basitleştiren araçları da destekler. Platform, 4,7 milyondan fazla kullanıcıdan oluşan güçlü bir geliştirici topluluğuna sahiptir ve sağlık, tarım, üretim ve finans dahil olmak üzere çeşitli endüstrilerde kullanılmaktadır.
PaddlePaddle'ın temel özellikleri#
İşte PaddlePaddle'ın modelleri gerçek dünya cihazlarında daha verimli bir şekilde çalıştırmasına yardımcı olan temel özelliklerden bazıları:
- Dinamikten statiğe grafik 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 birleştirme: PaddlePaddle, modeldeki birden fazla 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. Bunu, zamandan tasarruf etmek için birkaç görevi tek bir eylemde birleştirmek gibi düşünebilirsin.
- Quantization: Bu, daha basit sayılar kullanarak (daha az ondalık basamağa yuvarlama gibi) modeli daha küçücük yapar. Modelin, doğruluktan çok fazla ödün vermeden 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ı. Görsel yazar tarafından hazırlanmıştır.
PaddlePaddle ile Ultralytics YOLO11 dağıtımına genel bakış#
Ultralytics tarafından desteklenen PaddlePaddle entegrasyonu, eğitimden dağıtıma geçişi kolaylaştırır. Halihazırda PaddlePaddle araçlarını kullanan geliştiriciler, YOLO11'i iş akışlarına daha kolay dahil edebilirler.
Ultralytics Python paketi, YOLO11 modellerinin doğrudan PaddlePaddle formatına aktarılmasını destekleyerek geliştiricilerin ek araçlara veya manuel dönüştürme adımlarına gerek kalmadan trained models 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çebilir. 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ırma, poz tahmini ve örnek segmentasyonu gibi computer vision tasks için kullanılabilir.
Cihazların belleğinin sınırlı olduğu veya hızlı işleme gerektiren dağıtım senaryoları için harika bir seçenektir. Dışa aktarılan modeller, kaynak kısıtlı sistemlerde bile verimli çalışacak şekilde optimize edilmiştir.
Ultralytics YOLO11 modellerini PaddlePaddle formatına nasıl dışarı aktarabilirsin#
Ultralytics YOLO11 modelini PaddlePaddle formatına dışarı aktarmak yalnızca birkaç adım sürer.
İlk adım, 'pip' gibi bir paket yöneticisi kullanarak Ultralytics Python package paketini kurmaktır. Başlamak için komut isteminizde veya terminalinizde “pip install ultralytics” komutunu çalıştırarak bunu yapabilirsin.
Ultralytics paketi, bir dizi computer vision görevi için modelleri eğitmek, değerlendirmek, ince ayarlamak, dışa aktarmak ve dağıtmak için araçlar sağlar. Kurulum sırasında herhangi bir sorunla karşılaşırsan, sorun giderme ipuçları için Common Issues guide sayfasına göz at.
Ortamın ayarlandıktan sonra, aşağıda gösterildiği gibi “yolo11n.pt” gibi önceden eğitilmiş bir YOLO11 modelini yükleyebilir ve dışa aktarabilirsin. Ayrıca kendi özel eğitilmiş YOLO11 modelini de dışa aktarabilirsin.
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="paddle")Modelin 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 Ultralytics YOLO11 modelini yüklüyor ve bunu bir tahmin yapmak için kullanıyoruz. Çıkarım çalıştırmak olarak bilinen bu işlem, kısaca modelin yeni verileri analiz etmesini sağlamaktır. Burada, modeli iki köpek içeren bir görüntü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ışarı aktarılan Ultralytics YOLO11 modelini kullanarak bir görüntüdeki nesneleri tespit etme. Görsel yazarındır.
PaddlePaddle çerçevesini kullanarak Ultralytics YOLO11 modelini dağıtma#
PaddlePaddle, her biri bulut ortamları, gömülü sistemler ve web uygulamaları gibi farklı cihazlar ve kullanım durumları için uygun olan çeşitli deployment araçları sunar. İşte ana deployment options seçeneklerinden bazıları:
- 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çenek haline getirir.
- Paddle Inference API: Modellerin nasıl çalışacağı üzerinde sana daha fazla kontrol sağlar; bu, performansa ince ayar yapman veya özel uygulama mantığı oluşturman gerektiğinde yardımcı olur.
- 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 YZ modellerini web tarayıcılarında çalıştırmanı sağlar; bu, etkileşimli demolar ve tarayıcı tabanlı araçlar için kullanışlıdır.

Şekil 4. PaddlePaddle tarafından sağlanan dağıtım seçenekleri. Görsel yazar tarafından hazırlanmıştır.
Kurulumun için doğru aracı seçtikten sonra, dışa aktarılan modeli yükleyebilirsin. PaddlePaddle motoru sonraki adımları halleder. Modeli yükler, girdi görüntüsünü işler ve sonuçları geri verir.
PaddlePaddle entegrasyonunu ne zaman seçmelisin?#
Ultralytics Python paketi ayrıca çeşitli diğer export formats formatlarını da destekler, bu nedenle şu soruyu sorabilirsin: PaddlePaddle ne zaman doğru seçimdir?
PaddlePaddle, akıllı telefonlar, gömülü sistemler veya uç donanımlar gibi sınırlı kaynaklara sahip cihazlarda modelleri dağıtmak istediğinde güvenilir bir seçenektir. Ayrıca, mobil uygulamalarda nesne tespiti, akıllı kameralarda görme tabanlı izleme veya bulut desteği olmadan doğrudan cihaz üzerinde çalışan poz tahmini gibi hızlı ve verimli performans gerektiren gerçek zamanlı uygulamalar için de harikadır.
Bunun ötesinde, proje çevrimdışı veya düşük bağlantılı ortamlarda çalışması gerekiyorsa, PaddlePaddle entegrasyonunu kullanmayı düşünebilirsin. Üretimde görsel denetim araçları, saha araştırmaları için el tipi cihazlar veya YZ özellikli perakende tarayıcıları gibi uygulamalar, PaddlePaddle'ın hafif çalışma zamanı ve esnek dağıtım seçeneklerinden faydalanabilir.
Dikkate alınması gereken PaddlePaddle sınırlamaları#
PaddlePaddle ilginç dağıtım yetenekleri sunsa da, farkında olman 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 tabanı nispeten küçüktür. Bu, topluluk desteği, çözülmüş GitHub sorunları veya Stack Overflow cevapları bulmayı zorlaştırabilir.
- Baidu dışı araçlar için daha dik öğrenme eğrisi: PaddlePaddle, Baidu'nun ekosistemiyle sorunsuz bir şekilde bütünleşir, ancak bu bağlamın dışında kullanmak ekstra yapılandırma ve kurulum adımları içerebilir.
- Ana akım ML araçlarıyla daha az entegrasyon: PaddlePaddle, Hugging Face Transformers, MLflow veya Kubernetes tabanlı yapay zeka hizmetleri gibi yaygın araçlarla sınırlı uyumluluğa sahiptir.
Öne çıkanlar#
Ultralytics tarafından desteklenen PaddlePaddle entegrasyonu, YOLO11 modellerini çeşitli cihazlarda dışa 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ımla güçlü görme modellerini gerçek dünya uygulamalarına getirebilirsin. Bilgisayarlı görü ilerlemeye devam ettikçe, YOLO ve PaddlePaddle gibi araçlar tüketici cihazlarından endüstriyel araçlara kadar her şeyde hızlı, akıllı sistemler kurmayı her zamankinden daha kolay hale getiriyor.
Büyüyen community topluluğumuza bugün katıl! GitHub repository depomuzu inceleyerek yapay zekanın derinliklerine in. Kendi computer vision projelerini oluşturmak mı istiyorsun? licensing options seçeneklerimizi keşfet. Çözüm sayfalarımızı ziyaret ederek computer vision in healthcare alanındaki bilgisayarla görmenin verimliliği nasıl artırdığını öğren ve AI in retail yapay zekanın perakendedeki etkisini keşfet!






