Dağıtım İçin YOLO26'dan TF GraphDef'e Nasıl Dışa Aktarılır#
YOLO26 gibi son teknoloji computer vision modellerini farklı ortamlarda dağıtırken uyumluluk sorunlarıyla karşılaşabilirsin. Google'ın TensorFlow GraphDef veya TF GraphDef modeli, modelinin serileştirilmiş, platformdan bağımsız bir temsilini sağlayarak bir çözüm sunar. TF GraphDef model formatını kullanarak, YOLO26 modelini mobil cihazlar veya özel donanımlar gibi tam TensorFlow ekosisteminin mevcut olmayabileceği ortamlarda dağıtabilirsin.
Bu kılavuzda, Ultralytics YOLO26 modellerini TF GraphDef model formatına nasıl dışarı aktaracağını adım adım anlatacağız. Modelini dönüştürerek dağıtımı kolaylaştırabilir ve YOLO26'nın bilgisayarla görü yeteneklerini çok daha geniş bir uygulama ve platform yelpazesinde kullanabilirsin.
Neden TF GraphDef Formatına Dışa Aktarmalısın?#
TF GraphDef, Google tarafından geliştirilen TensorFlow ekosisteminin güçlü bir bileşenidir. YOLO26 gibi modelleri optimize etmek ve dağıtmak için kullanılabilir. TF GraphDef'e dışa aktarmak, modelleri araştırmadan gerçek dünya uygulamalarına taşımanı sağlar. Modellerin tam TensorFlow çerçevesi olmadan çalışmasına olanak tanır.
GraphDef formatı, modeli serileştirilmiş bir hesaplama grafiği olarak temsil eder. Bu durum, sabit katlama (constant folding), niceleme (quantization) ve grafik dönüşümleri gibi çeşitli optimizasyon tekniklerine olanak sağlar. Bu optimizasyonlar; verimli bir çalışma, düşük bellek kullanımı ve daha hızlı çıkarım hızları sunar.
GraphDef modelleri; GPU'lar, TPU'lar ve yapay zeka çipleri gibi donanım hızlandırıcıları kullanabilir, bu da YOLO26 çıkarım hattı için ciddi performans kazanımları sağlar. TF GraphDef formatı, model ve bağımlılıklarını içeren kendi kendine yeten bir paket oluşturarak çeşitli sistemlere dağıtımı ve entegrasyonu basitleştirir.
TF GraphDef Modellerinin Temel Özellikleri#
TF GraphDef, model deployment ve optimizasyonunu kolaylaştırmak için belirgin özellikler sunar.
İşte temel özellikleri:
-
Model Serileştirme: TF GraphDef, TensorFlow modellerini platformdan bağımsız bir biçimde serileştirmenin ve saklamanın bir yolunu sunar. Bu serileştirilmiş temsil, orijinal Python kod tabanına ihtiyaç duymadan modellerini yüklemeni ve çalıştırmanı sağlar, böylece dağıtımı kolaylaştırır.
-
Grafik Optimizasyonu: TF GraphDef, hesaplama grafiklerinin optimize edilmesini sağlar. Bu optimizasyonlar; yürütme akışını kolaylaştırarak, gereksizlikleri azaltarak ve işlemleri belirli donanımlara göre uyarlayarak performansı artırabilir.
-
Dağıtım Esnekliği: GraphDef formatına dışa aktarılan modeller; kaynak kısıtlı cihazlar, web tarayıcıları ve özel donanımlara sahip sistemler dahil olmak üzere çeşitli ortamlarda kullanılabilir. Bu durum, TensorFlow modellerini daha geniş bir alanda dağıtma imkanı sağlar.
-
Üretim Odaklılık: GraphDef, üretim ortamında dağıtım için tasarlanmıştır. Verimli yürütmeyi, serileştirme özelliklerini ve gerçek dünya kullanım durumlarıyla uyumlu optimizasyonları destekler.
TF GraphDef ile Dağıtım Seçenekleri#
YOLO26 modellerini TF GraphDef'e aktarma sürecine girmeden önce, bu formatın kullanıldığı tipik dağıtım durumlarına bir göz atalım.
TF GraphDef ile çeşitli platformlarda nasıl verimli bir şekilde dağıtım yapabileceğini burada bulabilirsin.
-
TensorFlow Serving: Bu çerçeve, TensorFlow modellerini üretim ortamlarında dağıtmak için tasarlanmıştır. TensorFlow Serving; model yönetimi, sürüm oluşturma ve ölçeklenebilir verimli model sunumu için gereken altyapıyı sunar. GraphDef tabanlı modellerini üretimdeki web servislerine veya API'lere entegre etmenin sorunsuz bir yoludur.
-
Mobil ve Gömülü Cihazlar: LiteRT gibi araçlarla, TF GraphDef modellerini akıllı telefonlar, tabletler ve çeşitli gömülü cihazlar için optimize edilmiş formatlara dönüştürebilirsin. Modellerin daha sonra, yürütmenin yerel olarak gerçekleştirildiği ve genellikle performans artışları ile çevrimdışı yetenekler sağlayan cihaz üzerinde çıkarım (on-device inference) için kullanılabilir.
-
Web Tarayıcıları: TensorFlow.js, TF GraphDef modellerinin doğrudan web tarayıcıları içinde dağıtılmasını sağlar. JavaScript aracılığıyla YOLO26'nın yeteneklerini kullanarak istemci tarafında çalışan gerçek zamanlı nesne tespiti uygulamalarının önünü açar.
-
Özel Donanım: TF GraphDef'in platformdan bağımsız doğası, hızlandırıcılar ve TPU'lar (Tensör İşleme Birimleri) gibi özel donanımları hedeflemesine olanak tanır. Bu cihazlar, hesaplama açısından yoğun modeller için performans avantajları sağlayabilir.
Desteklenen Görevler#
TF GraphDef dışa aktarımı, yedi Ultralytics görevinden altısını destekler. Anlamsal segmentasyon ve derinlik tahmini yalnızca bu başlıklara sahip tek aile olan YOLO26 ile kullanılabilir. Poz modelleri dışa aktarılabilir, ancak Ultralytics GraphDef çıkarımı şu anda bunlar için desteklenmemektedir.
| Görev | YOLOv8 | YOLO11 | YOLO26 |
|---|---|---|---|
| Algıla | ✅ | ✅ | ✅ |
| Segmentlere Ayır | ✅ | ✅ | ✅ |
| Anlamsal | ❌ | ❌ | ✅ |
| Derinlik | ❌ | ❌ | ✅ |
| Sınıflandır | ✅ | ✅ | ✅ |
| Poz | ✅ | ✅ | ✅ |
| OBB | ❌ | ❌ | ❌ |
YOLO26 Modellerini TF GraphDef'e Aktarma#
Platformlar genelinde performansını artırmak için YOLO26 modelini, çeşitli sistemlerle uyumlu olan TF GraphDef formatına dönüştürebilirsin.
Kurulum#
Gerekli paketi yüklemek için şunu çalıştır:
# Install the required package for YOLO26
pip install ultralyticsKurulum sürecine ilişkin ayrıntılı talimatlar ve en iyi uygulamalar için Ultralytics Kurulum kılavuzumuza göz at. YOLO26 için gerekli paketleri kurarken herhangi bir zorlukla karşılaşırsan, çözümler ve ipuçları için Yaygın Sorunlar kılavuzumuza danış.
Kullanım#
Tüm Ultralytics YOLO26 modelleri, kutudan çıktığı gibi dışa aktarmayı destekleyecek şekilde tasarlanmıştır; bu da bunları tercih ettiğin dağıtım iş akışına entegre etmeni kolaylaştırır. Uygulaman için en iyi kurulumu seçmek üzere desteklenen dışa aktarım formatlarının ve yapılandırma seçeneklerinin tam listesini görüntüleyebilirsin.
TF GraphDef formatı, poz modelleri şu anda yalnızca dışarı aktarmayı desteklemesi haricinde Export, Predict ve Validate modlarını destekler. Modelini dışarı aktar, ardından çıkarım çalıştırmak veya doğruluğunu test etmek için dışarı aktarılan modeli yükle.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")from ultralytics import YOLO
# Load the exported TF GraphDef model
model = YOLO("yolo26n.pb")
# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")Dışa Aktarma Argümanları#
| Argüman | Tip | Varsayılan | Açıklama |
|---|---|---|---|
format | str | 'pb' | Çeşitli dağıtım ortamlarıyla uyumluluğu tanımlayan, dışa aktarılan model için hedef format. |
imgsz | int veya tuple | 640 | Model girişi için istenen görüntü boyutu. Kare görüntüler için bir tamsayı veya belirli boyutlar için bir (height, width) demeti (tuple) olabilir. |
quantize | int veya str | None | FP32 dışa aktarımı düzeltildi. GraphDef, dışa aktarma sırasında FP16, INT8 veya W8A16 hassasiyet dönüşümünü desteklemez. |
opset | int | None | Ara ONNX grafiği için ONNX opset sürümünü belirtir. Ayarlanmazsa, desteklenen en son sürümü kullanır. |
batch | int | 1 | Dışa aktarılan modelin toplu çıkarım boyutunu veya dışa aktarılan modelin predict modunda aynı anda işleyeceği maksimum görüntü sayısını belirtir. |
device | str | None | Dışa aktarma için cihazı belirtir: CPU (device=cpu), Apple silikon için MPS (device=mps). |
Dışa aktarım süreci hakkında daha fazla ayrıntı için Ultralytics documentation page on exporting sayfasını ziyaret edin.
Dışa Aktarılan YOLO26 TF GraphDef Modellerini Dağıtma#
YOLO26 modelini TF GraphDef formatına aktardıktan sonraki adım dağıtımdır. Bir TF GraphDef modelini çalıştırmak için birincil ve önerilen ilk adım, daha önce kullanım kod parçacığında gösterildiği gibi YOLO("model.pb") yöntemini kullanmaktır.
Bununla birlikte, TF GraphDef modellerini dağıtma hakkında daha fazla bilgi için şu kaynaklara göz atabilirsin:
-
TensorFlow Serving: machine learning modellerini üretim ortamlarında verimli bir şekilde nasıl dağıtacağını ve sunacağını öğreten bir TensorFlow Serving kılavuzu.
-
TensorFlow Lite: Bu sayfa, makine öğrenimi modellerini TensorFlow Lite ile cihaz üzerinde çıkarım (on-device inference) için optimize edilmiş bir forma nasıl dönüştüreceğini açıklar.
-
TensorFlow.js: Web uygulamalarında kullanılmak üzere TensorFlow veya Keras modellerinin TensorFlow.js formatına nasıl dönüştürüleceğini öğreten bir model dönüştürme kılavuzu.
Özet#
Bu rehberde, Ultralytics YOLO26 modellerini TF GraphDef formatına nasıl aktaracağını keşfettik. Bunu yaparak, optimize edilmiş YOLO26 modellerini farklı ortamlarda esnek bir şekilde dağıtabilirsin.
Kullanım hakkında daha fazla ayrıntı için TF GraphDef official documentation adresini ziyaret et.
Ultralytics YOLO26'yı diğer platformlar ve çerçevelerle entegre etme hakkında daha fazla bilgi için integration guide page sayfamıza bak.
SSS#
Bir YOLO26 modelini TF GraphDef formatına nasıl dışa aktarırım?#
Ultralytics YOLO26 modelleri, TensorFlow GraphDef (TF GraphDef) formatına sorunsuz bir şekilde aktarılabilir. Bu format, mobil ve web gibi çeşitli ortamlarda dağıtım için ideal olan, serileştirilmiş ve platformdan bağımsız bir model temsili sunar. Bir YOLO26 modelini TF GraphDef'e aktarmak için şu adımları izle:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF GraphDef format
model.export(format="pb") # creates 'yolo26n.pb'
# Load the exported TF GraphDef model
tf_graphdef_model = YOLO("yolo26n.pb")
# Run inference
results = tf_graphdef_model("https://ultralytics.com/images/bus.jpg")Farklı dışarı aktarma seçenekleri hakkında daha fazla bilgi için Ultralytics documentation on model export sayfasını ziyaret et.
YOLO26 model dağıtımı için TF GraphDef kullanmanın faydaları nelerdir?#
YOLO26 modellerini TF GraphDef formatına aktarmak, aşağıdakiler dahil olmak üzere birçok avantaj sunar:
- Platform Bağımsızlığı: TF GraphDef, platformdan bağımsız bir biçim sağlar ve modellerin mobil cihazlar ve web tarayıcıları dahil olmak üzere çeşitli ortamlarda dağıtılmasına olanak tanır.
- Optimizasyonlar: Bu format; sabit katlama, niceleme ve grafik dönüşümleri gibi, yürütme verimliliğini artıran ve bellek kullanımını azaltan çeşitli optimizasyonları mümkün kılar.
- Donanım Hızlandırma: TF GraphDef formatındaki modeller, performans artışı için GPU'lar, TPU'lar ve yapay zeka çipleri gibi donanım hızlandırıcılarından yararlanabilir.
Avantajlar hakkında daha fazla bilgi edinmek için belgelerimizdeki TF GraphDef section bölümünü oku.
Neden diğer object detection modelleri yerine Ultralytics YOLO26 kullanmalıyım?#
Ultralytics YOLO26, YOLOv5 ve YOLOv7 gibi diğer modellere kıyasla sayısız avantaj sunar. Bazı temel faydalar şunlardır:
- Son Teknoloji Performans: YOLO26, gerçek zamanlı nesne tespiti, örnek bölütleme, anlamsal bölütleme ve sınıflandırma için olağanüstü hız ve doğruluk sağlar.
- Kullanım Kolaylığı: Model eğitimi, doğrulama, tahmin ve dışa aktarma için kullanıcı dostu bir API sunar, bu da onu hem yeni başlayanlar hem de uzmanlar için erişilebilir kılar.
- Geniş Uyumluluk: Çok yönlü dağıtım seçenekleri için ONNX, TensorRT, CoreML ve TensorFlow dahil olmak üzere birden fazla dışa aktarma formatını destekler.
Daha fazla ayrıntıyı introduction to YOLO26 bölümümüzde keşfet.
TF GraphDef kullanarak özel donanım üzerinde YOLO26 modelini nasıl dağıtabilirim?#
YOLO26 modeli TF GraphDef formatına aktarıldıktan sonra, onu çeşitli özel donanım platformlarında dağıtabilirsin. Tipik dağıtım senaryoları şunları içerir:
- TensorFlow Serving: Üretim ortamlarında ölçeklenebilir model dağıtımı için TensorFlow Serving kullan. Model yönetimini ve verimli sunumu destekler.
- Mobil Cihazlar: TF GraphDef modellerini mobil ve gömülü cihazlar için optimize edilmiş TensorFlow Lite'a dönüştürerek cihaz üstü çıkarımı mümkün kıl.
- Web Tarayıcıları: Web uygulamalarında istemci tarafı çıkarımı için TensorFlow.js kullanarak modelleri dağıt.
- Yapay Zeka Hızlandırıcıları: Hızlandırılmış çıkarım için TPU'lardan ve özel yapay zeka çiplerinden yararlan.
Ayrıntılı bilgi için deployment options bölümünü kontrol et.
YOLO26 modellerini dışa aktarırken karşılaşılan yaygın sorunlar için çözümleri nerede bulabilirim?#
YOLO26 modellerini dışa aktarırken karşılaşılan yaygın sorunları gidermek için Ultralytics kapsamlı rehberler ve kaynaklar sağlar. Kurulum veya model dışa aktarma sırasında sorun yaşarsan şunlara başvur:
- Common Issues Guide: Sık karşılaşılan sorunlara çözümler sunar.
- Installation Guide: Gerekli paketleri kurmak için adım adım talimatlar.
Bu kaynaklar, YOLO26 model dışa aktarma ve dağıtımıyla ilgili çoğu sorunu çözmene yardımcı olacaktır.