İçeriğe geç

CoreML YOLOv8 Modelleri için Dışa Aktarma

Bilgisayarlı görü modellerini iPhone ve Mac gibi Apple cihazlarına dağıtmak için sorunsuz performans sağlayan bir format gerekir.

CoreML dışa aktarma formatı, aşağıdakileri optimize etmenize olanak tanır Ultralytics YOLOv8iOS ve macOS uygulamalarında verimli nesne algılama için modeller. Bu kılavuzda, modellerinizi CoreML formatına dönüştürme adımlarında size yol göstererek modellerinizin Apple cihazlarında iyi performans göstermesini kolaylaştıracağız.

CoreML

CoreML Genel Bakış

CoreML Apple'ın Accelerate, BNNS ve Metal Performance Shaders üzerine inşa edilen temel makine öğrenimi çerçevesidir. iOS uygulamalarına sorunsuz bir şekilde entegre olan ve görüntü analizi, doğal dil işleme, sesten metne dönüştürme ve ses analizi gibi görevleri destekleyen bir makine öğrenimi modeli formatı sağlar.

Core ML çerçevesi cihaz üzerinde bilgi işlem kullanarak çalıştığı için uygulamalar ağ bağlantısına veya API çağrılarına ihtiyaç duymadan Core ML'den faydalanabilir. Bu, model çıkarımının kullanıcının cihazında yerel olarak gerçekleştirilebileceği anlamına gelir.

CoreML Modellerinin Temel Özellikleri

Apple'ın CoreML çerçevesi, cihaz üzerinde makine öğrenimi için güçlü özellikler sunuyor. İşte CoreML 'u geliştiriciler için güçlü bir araç haline getiren temel özellikler:

  • Kapsamlı Model Desteği: TensorFlow , PyTorch, scikit-learn, XGBoost ve LibSVM gibi popüler çerçevelerden modelleri dönüştürür ve çalıştırır.

CoreML Desteklenen Modeller

  • Cihaz Üzerinde Makine Öğrenimi: Modelleri doğrudan kullanıcının cihazında çalıştırarak ve ağ bağlantısı ihtiyacını ortadan kaldırarak veri gizliliği ve hızlı işleme sağlar.

  • Performans ve Optimizasyon: Minimum güç ve bellek kullanımı ile optimum performans için cihazın CPU, GPU ve Neural Engine'ini kullanır. Doğruluğu korurken model sıkıştırma ve optimizasyon için araçlar sunar.

  • Entegrasyon Kolaylığı: Çeşitli model türleri için birleşik bir format ve uygulamalara sorunsuz entegrasyon için kullanıcı dostu bir API sağlar. Görme ve Doğal Dil gibi çerçeveler aracılığıyla alana özgü görevleri destekler.

  • Gelişmiş Özellikler: Kişiselleştirilmiş deneyimler için cihaz üzerinde eğitim yetenekleri, etkileşimli makine öğrenimi deneyimleri için eşzamansız tahminler ve model inceleme ve doğrulama araçları içerir.

CoreML Dağıtım Seçenekleri

Dışa aktarma koduna bakmadan önce YOLOv8 modellerine CoreML formatı, nerede olduğunu anlayalım CoreML modeller genellikle kullanılır.

CoreML dahil olmak üzere makine öğrenimi modelleri için çeşitli dağıtım seçenekleri sunar:

  • Cihaz Üzerinde Dağıtım: Bu yöntem CoreML modellerini doğrudan iOS uygulamanıza entegre eder. Düşük gecikme süresi, gelişmiş gizlilik (veriler cihazda kaldığı için) ve çevrimdışı işlevsellik sağlamak için özellikle avantajlıdır. Ancak bu yaklaşım, özellikle daha büyük ve daha karmaşık modeller için cihazın donanım özellikleriyle sınırlı olabilir. Cihaz üzerinde dağıtım aşağıdaki iki şekilde gerçekleştirilebilir.

    • Gömülü Modeller: Bu modeller uygulama paketine dahil edilir ve hemen erişilebilir. Sık güncelleme gerektirmeyen küçük modeller için idealdir.

    • İndirilen Modeller: Bu modeller gerektiğinde bir sunucudan alınır. Bu yaklaşım, daha büyük modeller veya düzenli güncellemelere ihtiyaç duyanlar için uygundur. Uygulama paketi boyutunun daha küçük tutulmasına yardımcı olur.

  • Bulut Tabanlı Dağıtım: CoreML modelleri sunucularda barındırılır ve API istekleri aracılığıyla iOS uygulaması tarafından erişilir. Bu ölçeklenebilir ve esnek seçenek, uygulama revizyonları olmadan kolay model güncellemeleri sağlar. Düzenli güncelleme gerektiren karmaşık modeller veya büyük ölçekli uygulamalar için idealdir. Ancak, internet bağlantısı gerektirir ve gecikme ve güvenlik sorunları oluşturabilir.

YOLOv8 Modellerini Dışa Aktarma CoreML

YOLOv8 adresinin CoreML adresine aktarılması, Apple'ın ekosisteminde optimize edilmiş, aygıt üzerinde makine öğrenimi performansı sağlayarak verimlilik, güvenlik ve iOS, macOS, watchOS ve tvOS platformlarıyla sorunsuz entegrasyon açısından avantajlar sunuyor.

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 YOLOv8 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, Ultralytics tarafından sunulanYOLOv8 model yelpazesine göz attığınızdan emin olun. Bu, proje gereksinimleriniz için en uygun modeli seçmenize yardımcı olacaktır.

Kullanım

from ultralytics import YOLO

# Load the YOLOv8 model
model = YOLO("yolov8n.pt")

# Export the model to CoreML format
model.export(format="coreml")  # creates 'yolov8n.mlpackage'

# Load the exported CoreML model
coreml_model = YOLO("yolov8n.mlpackage")

# Run inference
results = coreml_model("https://ultralytics.com/images/bus.jpg")
# Export a YOLOv8n PyTorch model to CoreML format
yolo export model=yolov8n.pt format=coreml  # creates 'yolov8n.mlpackage''

# Run inference with the exported model
yolo predict model=yolov8n.mlpackage source='https://ultralytics.com/images/bus.jpg'

Dışa aktarma işlemi hakkında daha fazla bilgi için, dışa aktarma ile ilgiliUltralytics dokümantasyon sayfasını ziyaret edin.

Dışa Aktarılan YOLOv8 CoreML Modellerini Dağıtma

Ultralytics YOLOv8 modellerinizi CoreML adresine başarıyla aktardıktan sonra, bir sonraki kritik aşama bu modelleri etkili bir şekilde dağıtmaktır. CoreML modellerini çeşitli ortamlarda dağıtma konusunda ayrıntılı rehberlik için bu kaynaklara göz atın:

  • CoreML Araçlar: Bu kılavuz, TensorFlow, PyTorch ve diğer kütüphanelerdeki modelleri Core ML'ye dönüştürmek için talimatlar ve örnekler içerir.

  • Makine Öğrenimi ve Vizyon: CoreML modellerini kullanmanın ve uygulamanın çeşitli yönlerini kapsayan kapsamlı bir video koleksiyonu.

  • Uygulamanıza Temel Makine Öğrenimi Modeli Entegre Etme: Bir CoreML modelinin bir iOS uygulamasına entegre edilmesine ilişkin, modelin hazırlanmasından çeşitli işlevler için uygulamada uygulanmasına kadar adımları detaylandıran kapsamlı bir kılavuz.

Özet

Bu kılavuzda, Ultralytics YOLOv8 modellerinin CoreML formatına nasıl aktarılacağını ele aldık. Bu kılavuzda özetlenen adımları izleyerek, YOLOv8 modellerini CoreML formatına aktarırken maksimum uyumluluk ve performans sağlayabilirsiniz.

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

Ayrıca, diğerleri hakkında daha fazla bilgi edinmek isterseniz Ultralytics YOLOv8 Entegrasyonlar için entegrasyon kılavuzu sayfamızı ziyaret edin. Orada çok sayıda değerli kaynak ve içgörü bulacaksınız.

SSS

YOLOv8 modellerini CoreML formatına nasıl aktarabilirim?

Dışa aktarmak için Ultralytics YOLOv8 modellerini CoreML biçimine dönüştürmek için, öncelikle aşağıdaki özelliklere sahip olduğunuzdan emin olmanız gerekir ultralytics paketi yüklü. Kullanarak yükleyebilirsiniz:

Kurulum

pip install ultralytics

Daha sonra, aşağıdaki Python veya CLI komutlarını kullanarak modeli dışa aktarabilirsiniz:

Kullanım

from ultralytics import YOLO

model = YOLO("yolov8n.pt")
model.export(format="coreml")
yolo export model=yolov8n.pt format=coreml

Daha fazla ayrıntı için belgelerimizin YOLOv8 Modellerini CoreML adresine Aktarma bölümüne bakın.

YOLOv8 modellerini dağıtmak için CoreML kullanmanın faydaları nelerdir?

CoreML dağıtım için çok sayıda avantaj sağlar Ultralytics YOLOv8 Apple cihazlarındaki modeller:

  • Cihaz Üzerinde İşleme: Cihazlarda yerel model çıkarımını etkinleştirerek veri gizliliğini sağlar ve gecikmeyi en aza indirir.
  • Performans Optimizasyonu: Cihazın CPU, GPU ve Neural Engine'inin tüm potansiyelinden yararlanarak hem hızı hem de verimliliği optimize eder.
  • Entegrasyon Kolaylığı: iOS , macOS, watchOS ve tvOS dahil olmak üzere Apple'ın ekosistemleriyle sorunsuz bir entegrasyon deneyimi sunar.
  • Çok yönlülük: CoreML çerçevesini kullanarak görüntü analizi, ses işleme ve doğal dil işleme gibi çok çeşitli makine öğrenimi görevlerini destekler.

CoreML modelinizi bir iOS uygulamasına entegre etme hakkında daha fazla bilgi için Temel Makine Öğrenimi Modelini Uygulamanıza Entegre Etme kılavuzuna göz atın.

CoreML adresine aktarılan YOLOv8 modelleri için dağıtım seçenekleri nelerdir?

YOLOv8 modelinizi CoreML formatına aktardıktan sonra, birden fazla dağıtım seçeneğiniz vardır:

  1. Cihaz Üzerinde Dağıtım: Gelişmiş gizlilik ve çevrimdışı işlevsellik için CoreML modellerini doğrudan uygulamanıza entegre edin. Bu şu şekilde yapılabilir:

    • Gömülü Modeller: Uygulama paketine dahildir, hemen erişilebilir.
    • İndirilen Modeller: Gerektiğinde bir sunucudan alınır ve uygulama paketinin boyutunu daha küçük tutar.
  2. Bulut Tabanlı Dağıtım: CoreML modellerini sunucularda barındırın ve bunlara API istekleri aracılığıyla erişin. Bu yaklaşım daha kolay güncellemeleri destekler ve daha karmaşık modellerin üstesinden gelebilir.

CoreML modellerinin dağıtımı hakkında ayrıntılı bilgi için CoreML Dağıtım Seçenekleri bölümüne bakın.

CoreML , YOLOv8 modelleri için optimize edilmiş performansı nasıl sağlar?

CoreML için optimize edilmiş performans sağlar Ultralytics YOLOv8 çeşitli optimizasyon teknikleri kullanarak modeller:

  • Donanım Hızlandırma: Verimli hesaplama için cihazın CPU, GPU ve Neural Engine'ini kullanır.
  • Model Sıkıştırma: Doğruluktan ödün vermeden ayak izlerini azaltmak için modelleri sıkıştırmaya yönelik araçlar sağlar.
  • Uyarlanabilir Çıkarım: Hız ve performans arasında bir denge sağlamak için cihazın yeteneklerine göre çıkarımı ayarlar.

Performans optimizasyonu hakkında daha fazla bilgi için CoreML resmi belgelerini ziyaret edin.

Dışa aktarılan CoreML modeli ile doğrudan çıkarım yapabilir miyim?

Evet, dışa aktarılan CoreML modelini kullanarak doğrudan çıkarım yapabilirsiniz. Aşağıda Python ve CLI için komutlar verilmiştir:

Çalışan Çıkarım

from ultralytics import YOLO

coreml_model = YOLO("yolov8n.mlpackage")
results = coreml_model("https://ultralytics.com/images/bus.jpg")
yolo predict model=yolov8n.mlpackage source='https://ultralytics.com/images/bus.jpg'

Daha fazla bilgi için CoreML ihracat kılavuzunun Kullanım bölümüne bakın.



Oluşturma 2024-02-07, Güncelleme 2024-07-05
Yazarlar: glenn-jocher (6), RizwanMunawar (1), abirami-vina (1)

Yorumlar