Link to this sectionBir YOLO26 Model Formatından TF.js Model Formatına Dışa Aktarma#
Ultralytics 8.4.83 itibarıyla, tfjs (TensorFlow.js) dışa aktarma formatı kaldırılmış ve yerini birleşik Google LiteRT formatına bırakmıştır. LiteRT, tarayıcı içinde LiteRT.js aracılığıyla (WebGPU hızlandırmasıyla) çalışır ve TF.js'in karşıladığı tarayıcı içi ve Node.js kullanım durumlarının yanı sıra mobil, gömülü ve uç cihaz senaryolarını tek bir .tflite modeliyle kapsar.
format="tfjs" hâlâ çalışır ancak bir kullanımdan kaldırma uyarısı verir ve bunun yerine bir LiteRT modeli dışa aktarır. Bundan sonra format="litert" kullan; güncel dışa aktarma talimatları ve tarayıcıda dağıtım yolu için LiteRT dışa aktarma kılavuzuna bak.
Makine öğrenimi modellerini doğrudan tarayıcıda veya Node.js üzerinde dağıtmak zor olabilir. Modelin kullanıcının cihazında etkileşimli uygulamaları yerel olarak çalıştırması için model formatınızın daha hızlı performans için optimize edildiğinden emin olmanız gerekir. TensorFlow.js veya TF.js model formatı, hızlı performans sunarken minimum güç kullanacak şekilde tasarlanmıştır.
'TF.js model formatına dışa aktar' özelliği, Ultralytics YOLO26 modellerinizi yüksek hızlı ve yerel olarak çalışan nesne algılama çıkarımı için optimize etmenize olanak tanır. Bu kılavuzda, modellerinizi TF.js formatına dönüştürme sürecini adım adım açıklayarak modellerinizin çeşitli yerel tarayıcılarda ve Node.js uygulamalarında iyi performans göstermesini kolaylaştıracağız.
Link to this sectionNeden TF.js Formatına Dışa Aktarmalısın?#
Makine öğrenimi modellerinizi, daha geniş TensorFlow ekosisteminin bir parçası olarak TensorFlow ekibi tarafından geliştirilen TensorFlow.js'ye aktarmak, makine öğrenimi uygulamalarını dağıtmak için çok sayıda avantaj sunar. Hassas verileri cihazda tutarak kullanıcı gizliliğini ve güvenliğini artırmaya yardımcı olur. Aşağıdaki resim TensorFlow.js mimarisini ve makine öğrenimi modellerinin nasıl dönüştürülüp hem web tarayıcılarında hem de Node.js üzerinde dağıtıldığını göstermektedir.
Modelleri yerel olarak çalıştırmak ayrıca gecikmeyi azaltır ve daha duyarlı bir kullanıcı deneyimi sağlar. TensorFlow.js ayrıca çevrimdışı özelliklerle birlikte gelir, bu sayede kullanıcılar uygulamanızı internet bağlantısı olmasa bile kullanabilir. TF.js, GPU hızlandırma desteğiyle ölçeklenebilirlik için tasarlandığından, sınırlı kaynaklara sahip cihazlarda karmaşık modellerin verimli bir şekilde yürütülmesi için tasarlanmıştır.
Link to this sectionTF.js'nin Temel Özellikleri#
İşte TF.js'yi geliştiriciler için güçlü bir araç haline getiren temel özellikler:
-
Çapraz Platform Desteği: TensorFlow.js hem tarayıcı hem de Node.js ortamlarında kullanılabilir, bu da farklı platformlarda dağıtımda esneklik sağlar. Geliştiricilerin uygulamaları daha kolay oluşturmasını ve dağıtmasını sağlar.
-
Çoklu Arka Uç Desteği: TensorFlow.js, CPU, GPU hızlandırması için WebGL, neredeyse yerel yürütme hızı için WebAssembly (WASM) ve gelişmiş tarayıcı tabanlı makine öğrenimi yetenekleri için WebGPU dahil olmak üzere hesaplama için çeşitli arka uçları destekler.
-
Çevrimdışı Özellikler: TensorFlow.js ile modeller internet bağlantısına ihtiyaç duymadan tarayıcıda çalışabilir, bu da çevrimdışı çalışabilen uygulamalar geliştirmeyi mümkün kılar.
Link to this sectionTensorFlow.js ile Dağıtım Seçenekleri#
YOLO26 modellerini TF.js formatına aktarma işlemine girmeden önce, bu formatın kullanıldığı bazı tipik dağıtım senaryolarını inceleyelim.
TF.js, makine öğrenimi modellerinizi dağıtmak için bir dizi seçenek sunar:
-
Tarayıcı İçi ML Uygulamaları: Makine öğrenimi modellerini doğrudan tarayıcıda çalıştıran web uygulamaları oluşturabilirsin. Sunucu tarafı hesaplama ihtiyacı ortadan kalkar ve sunucu yükü azalır.
-
Node.js Uygulamaları: TensorFlow.js, Node.js ortamlarında dağıtımı da destekleyerek sunucu tarafı makine öğrenimi uygulamalarının geliştirilmesini sağlar. Özellikle bir sunucunun işlem gücüne veya sunucu tarafı verilerine erişim gerektiren uygulamalar için kullanışlıdır.
-
Chrome Uzantıları: İlginç bir dağıtım senaryosu, TensorFlow.js ile Chrome uzantıları oluşturmaktır. Örneğin, kullanıcıların herhangi bir web sayfasındaki bir resme sağ tıklayarak onu önceden eğitilmiş bir ML modeli kullanarak sınıflandırmasına olanak tanıyan bir uzantı geliştirebilirsin. TensorFlow.js, makine öğrenimine dayalı anlık içgörüler sağlamak veya geliştirmeler yapmak için günlük web tarama deneyimlerine entegre edilebilir.
Link to this sectionYOLO26 Modellerini TensorFlow.js'ye Dışa Aktarma#
YOLO26 modellerini TF.js'ye dönüştürerek model uyumluluğunu ve dağıtım esnekliğini artırabilirsin.
Link to this sectionKurulum#
Gerekli paketi yüklemek için şunu çalıştır:
# Install the required package for YOLO26
pip install ultralyticsKurulum süreci ile ilgili 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 başvur.
Link to this sectionKullanım#
Tüm Ultralytics YOLO26 modelleri, kutudan çıktığı gibi dışa aktarımı destekleyecek şekilde tasarlanmıştır, bu da onları tercih ettiğin dağıtım iş akışına entegre etmeyi kolaylaştırır. Uygulaman için en iyi kurulumu seçmek üzere desteklenen dışa aktarma formatlarının ve yapılandırma seçeneklerinin tam listesini görüntüleyebilirsin.
tfjs argümanı artık LiteRT .tflite modelini dışa aktarır; bu model Export, Predict ve Validate modlarını yerel olarak destekler ve tarayıcıda LiteRT.js aracılığıyla çalışır. Güncel tarayıcı ve cihaz üzerinde dağıtım yolu için LiteRT dışa aktarma kılavuzuna bakabilirsin.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF.js format
model.export(format="litert") # creates 'yolo26n.tflite'Dışa aktarılan LiteRT .tflite modeli doğrudan yolo predict ve yolo val ile yüklenir ve tarayıcıda LiteRT.js üzerinden çalışır. LiteRT dışa aktarma kılavuzuna göz atabilirsin.
Link to this sectionDışa Aktarma Argümanları#
| Argüman | Tip | Varsayılan | Açıklama |
|---|---|---|---|
format | str | 'tfjs' | Ç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 (height, width) şeklinde bir demet olabilir. |
quantize | int veya str | None | Kuantizasyon hassasiyeti: 8 (statik INT8, int8 ağırlıklar + int8 aktivasyonlar; kalibrasyon data/fraction gerektirir), 'w8a16' (statik, int8 ağırlıklar + int16 aktivasyonlar; kalibrasyon data/fraction gerektirir), 'w8a32' (dinamik INT8, int8 ağırlıklar + FP32 aktivasyonlar; kalibrasyon gerektirmez) veya 32/ayarlanmamış (FP32). FP16 ayrı olarak dışa aktarılmaz — bir FP32 modeli, GPU temsilcilerinde otomatik olarak FP16'da çalışır. Kullanımdan kaldırılan half/int8 bayraklarının yerini alır. |
batch | int | 1 | Dışa aktarılan modelin toplu çıkarım boyutunu veya dışa aktarılan modelin predict modunda eşzamanlı olarak işleyeceği maksimum görüntü sayısını belirtir. |
data | str | 'coco8.yaml' | dataset yapılandırma dosyasına giden yol (varsayılan: coco8.yaml), nicelleştirme (quantization) için gereklidir. |
fraction | float | 1.0 | INT8 nicemleme kalibrasyonu için kullanılacak veri kümesi oranını belirtir. Deneyler veya kaynakların sınırlı olduğu durumlar için yararlı olan tam veri kümesinin bir alt kümesinde kalibrasyona izin verir. INT8 etkinleştirildiğinde belirtilmezse, veri kümesinin tamamı kullanılır. |
device | str | None | Dışa aktarma için cihazı belirtir: CPU (device=cpu), Apple silicon için MPS (device=mps). |
Dışa aktarma süreci hakkında daha fazla ayrıntı için dışa aktarma hakkındaki Ultralytics dokümantasyon sayfasına git.
Link to this sectionDışa Aktarılan YOLO26 TensorFlow.js Modellerini Dağıtma#
Now that you have exported your YOLO26 model, the next step is to deploy it. The export produces a LiteRT .tflite model that runs on-device and in the browser via LiteRT.js — see the LiteRT export guide for the current path.
Referans olması amacıyla, eski TensorFlow.js çalışma zamanı kaynakları aşağıdadır:
-
Chrome Uzantısı: TF.js modellerinizi bir Chrome uzantısına nasıl dağıtacağınıza dair geliştirici belgeleri burada.
-
Node.js'de TensorFlow.js Çalıştırma: TensorFlow.js'yi doğrudan Node.js'de çalıştırma üzerine bir TensorFlow blog gönderisi.
-
TensorFlow.js Dağıtımı - Bulut Platformunda Node Projesi: Bir Bulut Platformunda TensorFlow.js modeli dağıtma üzerine bir TensorFlow blog gönderisi.
Link to this sectionÖzet#
Bu kılavuzda Ultralytics YOLO26 modellerini TensorFlow.js formatına nasıl aktaracağımızı öğrendik. TF.js'ye dışa aktararak, YOLO26 modellerinizi çok çeşitli platformlarda optimize etme, dağıtma ve ölçeklendirme esnekliği kazanırsınız.
Kullanımla ilgili daha fazla ayrıntı için TensorFlow.js resmi belgelerini ziyaret edin.
Ultralytics YOLO26'yı diğer platformlar ve çerçevelerle entegre etme hakkında daha fazla bilgi için entegrasyon kılavuzu sayfamıza göz atmayı unutma. YOLO26'dan projelerinde en iyi şekilde yararlanmana yardımcı olacak harika kaynaklarla doludur.
Link to this sectionSSS#
Link to this sectionUltralytics YOLO26 modellerini TensorFlow.js formatına nasıl dışa aktarırım?#
Ultralytics YOLO26 modellerini TensorFlow.js (TF.js) formatına dışa aktarmak basittir. Şu adımları takip edebilirsin:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF.js format
model.export(format="litert") # creates 'yolo26n.tflite'
# The exported '.tflite' model runs in the browser via LiteRT.js or locally with yolo predict/val.Desteklenen dışa aktarma seçenekleri hakkında daha fazla ayrıntı için dağıtım seçenekleri hakkındaki Ultralytics dokümantasyon sayfasını ziyaret edin.
Link to this sectionNeden YOLO26 modellerimi TensorFlow.js'ye dışa aktarmalıyım?#
YOLO26 modellerini TensorFlow.js'ye dışa aktarmak aşağıdakiler dahil birçok avantaj sunar:
- Yerel Yürütme: Modeller doğrudan tarayıcıda veya Node.js'de çalışabilir, bu da gecikmeyi azaltır ve kullanıcı deneyimini iyileştirir.
- Çapraz Platform Desteği: TF.js birden fazla ortamı destekler ve dağıtımda esneklik sağlar.
- Çevrimdışı Özellikler: Uygulamaların internet bağlantısı olmadan çalışmasını sağlayarak güvenilirlik ve gizlilik sağlar.
- GPU Hızlandırma: GPU hızlandırması için WebGL'den yararlanır ve sınırlı kaynaklara sahip cihazlarda performansı optimize eder.
Link to this sectionTensorFlow.js tarayıcı tabanlı makine öğrenimi uygulamalarına nasıl fayda sağlar?#
TensorFlow.js, ML modellerinin tarayıcılarda ve Node.js ortamlarında verimli bir şekilde yürütülmesi için özel olarak tasarlanmıştır. Tarayıcı tabanlı uygulamalara sağladığı faydalar şunlardır:
- Gecikmeyi Azaltır: Makine öğrenimi modellerini yerel olarak çalıştırır, sunucu tarafı hesaplamalara güvenmeden anında sonuç sağlar.
- Gizliliği Artırır: Hassas verileri kullanıcının cihazında tutar, güvenlik risklerini en aza indirir.
- Çevrimdışı Kullanımı Etkinleştirir: Modeller internet bağlantısı olmadan çalışabilir, bu da tutarlı işlevsellik sağlar.
- Çoklu Arka Uçları Destekler: Farklı hesaplama ihtiyaçları için CPU, WebGL, WebAssembly (WASM) ve WebGPU gibi arka uçlarla esneklik sunar.
TF.js hakkında daha fazla bilgi edinmek ister misin? Resmi TensorFlow.js kılavuzuna göz at.
Link to this sectionYOLO26 modellerini dağıtmak için TensorFlow.js'nin temel özellikleri nelerdir?#
TensorFlow.js'nin temel özellikleri şunlardır:
- Çapraz Platform Desteği: TF.js hem web tarayıcılarında hem de Node.js'de kullanılabilir, geniş bir dağıtım esnekliği sağlar.
- Çoklu Arka Uçlar: CPU, GPU hızlandırma için WebGL, WebAssembly (WASM) ve gelişmiş işlemler için WebGPU desteği sağlar.
- Çevrimdışı Özellikler: Modeller internet bağlantısı olmadan doğrudan tarayıcıda çalışabilir, bu da duyarlı web uygulamaları geliştirmek için idealdir.
Dağıtım senaryoları ve daha derinlemesine bilgi için, TensorFlow.js ile Dağıtım Seçenekleri bölümümüze bakın.
Link to this sectionTensorFlow.js kullanarak sunucu tarafı Node.js uygulamalarında bir YOLO26 modeli dağıtabilir miyim?#
Evet, TensorFlow.js, YOLO26 modellerinin Node.js ortamlarında dağıtılmasına izin verir. Bu, bir sunucunun işlem gücünden ve sunucu tarafı verilerine erişimden yararlanan sunucu tarafı makine öğrenimi uygulamalarını mümkün kılar. Tipik kullanım durumları, arka uç sunucularında gerçek zamanlı veri işleme ve makine öğrenimi hatlarını içerir.
Node.js dağıtımına başlamak için TensorFlow'un Node.js'de TensorFlow.js Çalıştırma kılavuzuna bakın.