İçeriğe geç

TF SavedModel Formatından Nasıl Dışa Aktarılacağını Anlayın YOLOv8

Makine öğrenimi modellerini dağıtmak zor olabilir. Ancak verimli ve esnek bir model formatı kullanmak işinizi kolaylaştırabilir. TF SavedModel , TensorFlow tarafından makine öğrenimi modellerini tutarlı bir şekilde yüklemek için kullanılan açık kaynaklı bir makine öğrenimi çerçevesidir. TensorFlow modelleri için bir bavul gibidir ve farklı cihazlarda ve sistemlerde taşınmalarını ve kullanılmalarını kolaylaştırır.

TF SavedModel adresinden nasıl dışa aktarılacağını öğrenme Ultralytics YOLOv8 modelleri farklı platformlara ve ortamlara kolayca dağıtmanıza yardımcı olabilir. Bu kılavuzda, modellerinizi TF SavedModel formatına nasıl dönüştüreceğinizi anlatarak, modellerinizle farklı cihazlarda çıkarım yapma sürecini basitleştireceğiz.

Neden TF SavedModel adresine İhracat Yapmalısınız?

TensorFlow SavedModel formatı, aşağıda gösterildiği gibi Google tarafından geliştirilen TensorFlow ekosisteminin bir parçasıdır. TensorFlow modellerini sorunsuz bir şekilde kaydetmek ve serileştirmek için tasarlanmıştır. Mimari, ağırlıklar ve hatta derleme bilgileri gibi modellerin tüm ayrıntılarını kapsüller. Bu, farklı ortamlarda paylaşmayı, dağıtmayı ve eğitime devam etmeyi kolaylaştırır.

TF SavedModel

TF SavedModel önemli bir avantaja sahiptir: uyumluluğu. TensorFlow Serving, TensorFlow Lite ve TensorFlow.js ile iyi çalışır. Bu uyumluluk, modellerin web ve mobil uygulamalar da dahil olmak üzere çeşitli platformlarda paylaşılmasını ve dağıtılmasını kolaylaştırır. TF SavedModel formatı hem araştırma hem de üretim için kullanışlıdır. Modellerinizi yönetmek için birleşik bir yol sunarak her türlü uygulama için hazır olmalarını sağlar.

TF SavedModels'in Temel Özellikleri

İşte TF SavedModel adresini yapay zeka geliştiricileri için harika bir seçenek haline getiren temel özellikler:

  • Taşınabilirlik: TF SavedModel dilden bağımsız, kurtarılabilir, hermetik bir serileştirme formatı sağlar. Üst düzey sistemlerin ve araçların TensorFlow modellerini üretmesini, tüketmesini ve dönüştürmesini sağlar. SavedModels farklı platformlar ve ortamlar arasında kolayca paylaşılabilir ve dağıtılabilir.

  • Dağıtım Kolaylığı: TF SavedModel hesaplama grafiğini, eğitilmiş parametreleri ve gerekli meta verileri tek bir pakette toplar. Modeli oluşturan orijinal koda ihtiyaç duymadan kolayca yüklenebilir ve çıkarım için kullanılabilirler. Bu, TensorFlow modellerinin çeşitli üretim ortamlarında dağıtımını basit ve verimli hale getirir.

  • Varlık Yönetimi: TF SavedModel sözlükler, yerleştirmeler veya arama tabloları gibi harici varlıkların dahil edilmesini destekler. Bu varlıklar, grafik tanımı ve değişkenlerle birlikte depolanarak model yüklendiğinde kullanılabilir olmaları sağlanır. Bu özellik, harici kaynaklara dayanan modellerin yönetimini ve dağıtımını basitleştirir.

ile Dağıtım Seçenekleri TF SavedModel

YOLOv8 modellerini TF SavedModel formatına aktarma sürecine geçmeden önce, bu formatın kullanıldığı bazı tipik dağıtım senaryolarını inceleyelim.

TF SavedModel makine öğrenimi modellerinizi dağıtmak için bir dizi seçenek sunar:

  • TensorFlow Servis: TensorFlow Serving, üretim ortamları için tasarlanmış esnek, yüksek performanslı bir servis sistemidir. Yerel olarak TF SavedModels'i destekleyerek modellerinizi bulut platformlarına, şirket içi sunuculara veya uç cihazlara dağıtmayı ve sunmayı kolaylaştırır.

  • Bulut Platformları: Google Cloud Platform (GCP), Amazon Web Services (AWS) ve Microsoft Azure gibi büyük bulut sağlayıcıları, TF SavedModels dahil olmak üzere TensorFlow modellerini dağıtmak ve çalıştırmak için hizmetler sunar. Bu hizmetler ölçeklenebilir ve yönetilen altyapı sağlayarak modellerinizi kolayca dağıtmanıza ve ölçeklendirmenize olanak tanır.

  • Mobil ve Gömülü Cihazlar: TensorFlow Mobil, gömülü ve IoT cihazlarında makine öğrenimi modellerini çalıştırmak için hafif bir çözüm olan Lite, TF SavedModels'in TensorFlow Lite formatına dönüştürülmesini destekler. Bu, modellerinizi akıllı telefonlar ve tabletlerden mikro denetleyicilere ve uç cihazlara kadar çok çeşitli cihazlara dağıtmanıza olanak tanır.

  • TensorFlow Çalışma Zamanı: TensorFlow Çalışma Zamanı (tfrt) TensorFlow grafiklerini çalıştırmak için yüksek performanslı bir çalışma zamanıdır. C++ ortamlarında TF SavedModels'i yüklemek ve çalıştırmak için alt düzey API'ler sağlar. TensorFlow Runtime, standart TensorFlow çalışma zamanına kıyasla daha iyi performans sunar. Düşük gecikmeli çıkarım ve mevcut C++ kod tabanları ile sıkı entegrasyon gerektiren dağıtım senaryoları için uygundur.

YOLOv8 Modellerini Dışa Aktarma TF SavedModel

YOLOv8 modellerini TF SavedModel formatına aktararak, çeşitli platformlarda uyarlanabilirliklerini ve dağıtım kolaylıklarını artırırsınız.

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 TF SavedModel format
model.export(format='saved_model')  # creates '/yolov8n_saved_model'

# Load the exported TF SavedModel model
tf_savedmodel_model = YOLO('./yolov8n_saved_model')

# Run inference
results = tf_savedmodel_model('https://ultralytics.com/images/bus.jpg')
# Export a YOLOv8n PyTorch model to TF SavedModel format
yolo export model=yolov8n.pt format=saved_model  # creates '/yolov8n_saved_model'

# Run inference with the exported model
yolo predict model='./yolov8n_saved_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 TF SavedModel Modellerini Dağıtma

Artık YOLOv8 modelinizi TF SavedModel biçiminde dışa aktardığınıza göre, bir sonraki adım onu dağıtmaktır. Bir TF GraphDef modelini çalıştırmak için birincil ve önerilen ilk adım, daha önce kullanım kodu parçacığında gösterildiği gibi YOLO("./yolov8n_saved_model") yöntemini kullanmaktır.

Bununla birlikte, TF SavedModel modellerinizin dağıtımına ilişkin ayrıntılı talimatlar için aşağıdaki kaynaklara göz atın:

  • TensorFlow Servis: TF SavedModel modellerinizi TensorFlow Serving kullanarak nasıl dağıtacağınıza ilişkin geliştirici belgelerini burada bulabilirsiniz.

  • Node.js'de bir TensorFlow SavedModel çalıştırın: Node.js'de dönüştürme yapmadan doğrudan bir TensorFlow SavedModel çalıştırma üzerine bir TensorFlow blog yazısı.

  • Bulut Üzerinde Dağıtım: Cloud AI Platformunda bir TensorFlow SavedModel modelinin dağıtımına ilişkin bir TensorFlow blog yazısı.

Özet

Bu kılavuzda, Ultralytics YOLOv8 modellerinin TF SavedModel formatına nasıl aktarılacağını inceledik. TF SavedModel biçiminde dışa aktararak, YOLOv8 modellerinizi çok çeşitli platformlarda optimize etme, dağıtma ve ölçeklendirme esnekliği kazanırsınız.

Kullanım hakkında daha fazla bilgi için TF SavedModel resmi belgelerini ziyaret edin.

Ultralytics YOLOv8 adresini diğer platformlar ve çerçevelerle entegre etme hakkında daha fazla bilgi için entegrasyon kılavuzu sayfamıza göz atmayı unutmayın. Projelerinizde YOLOv8 'dan en iyi şekilde yararlanmanıza yardımcı olacak harika kaynaklarla doludur.



Oluşturuldu 2024-03-23, Güncellendi 2024-04-02
Yazarlar: Burhan-Q (1), abirami-vina (1)

Yorumlar