Sözlük

ONNX (Açık Sinir Ağı Değişimi)

ONNX adresinin yapay zeka modeli taşınabilirliğini ve birlikte çalışabilirliğini nasıl geliştirdiğini ve Ultralytics YOLO modellerinin farklı platformlarda sorunsuz bir şekilde kullanılmasını nasıl sağladığını keşfedin.

YOLO modellerini Ultralytics HUB ile basitçe
eğitin

Daha fazla bilgi edinin

Yapay zeka ve makine öğrenimi alanında birlikte çalışabilirlik, en iyi araçlardan yararlanmanın ve modelleri farklı ortamlara dağıtmanın anahtarıdır. ONNX (Open Neural Network Exchange), makine öğrenimi modellerini temsil etmek için oluşturulmuş açık bir formattır ve yapay zeka geliştiricilerinin tek bir çerçeveye kilitlenmemesini ve modelleri farklı araçlar arasında taşıma sürecini kolaylaştırabilmesini sağlar. Eğitim için kullanılan çerçeveden bağımsız olarak modeller için birleşik bir temsil sağlar ve bu modelleri çeşitli çıkarım motorlarında, donanım platformlarında ve ortamlarda dağıtmayı kolaylaştırır.

Alaka düzeyi ONNX

ONNX 'un birincil önemi, yapay zeka ekosisteminde taşınabilirliği ve birlikte çalışabilirliği teşvik etme kabiliyetinde yatmaktadır. Makine öğrenimi modelleri için ortak bir operatör seti ve standart bir format tanımlayan ONNX , aşağıdaki gibi çerçevelerde eğitilen modellere olanak tanır PyTorch veya TensorFlow gibi farklı çıkarım motorları kullanılarak kolayca aktarılabilir ve çalıştırılabilir. TensorRT veya OpenVINO. Bu, özellikle Ultralytics YOLO modellerini kullanan geliştiriciler için faydalıdır, çünkü ONNX dışa aktarma, bulut sunucularından uç cihazlara kadar çeşitli platformlarda model dağıtımını basitleştirir. Ultralytics dışa aktarmayı kolaylaştırır YOLOv8 modellerini ONNX biçimine dönüştürerek, kullanıcıların gelişmiş performans ve daha hızlı gerçek zamanlı çıkarım için optimize edilmiş çıkarım motorlarından yararlanmasına olanak tanır.

Uygulamaları ONNX

ONNX'nin çerçeveler arası uyumluluğu, onu çok sayıda yapay zeka uygulamasında değerli kılmaktadır. İki somut örnek verilebilir:

  • Uçta Dağıtım: Yapay zeka modellerini uç cihazlara dağıtmak genellikle optimize edilmiş performans ve belirli donanımlarla uyumluluk gerektirir. ONNX , geliştiricilerin PyTorch gibi üst düzey bir çerçeve kullanarak bir modeli eğitmelerine ve ardından bu modeli ONNX gibi çıkarım motorlarını kullanarak uç cihazlarda verimli bir şekilde çalıştırmak için dışa aktarmalarına olanak tanır. TensorRTNVIDIA Jetson veya OpenVINOIntel cihazlarında. Bu da akıllı kameralar veya robotik gibi uygulamaların Ultralytics YOLO modelleriyle nesne algılama görevlerini gerçek zamanlı olarak etkin bir şekilde gerçekleştirebilmesini sağlar.
  • Platformlar Arası Çıkarım: Yapay zeka çözümlerinin farklı işletim sistemleri ve donanımlar arasında çalışması gereken senaryolarda ONNX tutarlı bir model formatı sağlar. Örneğin, bir tıbbi görüntü analizi uygulaması güçlü sunucularda eğitilebilir, ancak hastanelerde veya kliniklerde daha düşük güçlü makinelerde çıkarım yapması gerekebilir. ONNX , aynı modelin farklı ortamlar arasında sorunsuz geçişini ve yürütülmesini sağlayarak dağıtım platformundan bağımsız olarak tutarlı ve güvenilir performans sağlar.

İlgili Kavramlar

ONNX adresini anlamak, model dağıtımı ve optimizasyonunda rol oynayan ilgili kavramları tanımayı da içerir:

  • Çıkarım Motorları: Bunlar, makine öğrenimi modellerini belirli bir donanım üzerinde optimize eden ve çalıştıran yazılım kütüphaneleridir. ONNX modelleri genellikle aşağıdaki gibi çıkarım motorlarıyla kullanılır TensorRT ve OpenVINO çıkarım hızını ve verimliliğini hızlandırmak için.
  • Model İhracatı: Eğitilmiş bir modeli orijinal çerçeve formatından dönüştürme işlemi (örn, PyTorch .pt dosyaları) ONNX formatına dönüştürür. Ultralytics , aşağıdakiler için basit araçlar sağlar YOLO modellerini dışa aktarma ONNX ve diğer formatlara.
  • Çerçeve Birlikte Çalışabilirliği: ONNX , modellerin farklı çerçeveler arasında kullanılmasına izin vererek çerçeve kilitlenmesi sorununu ele almaktadır. Her çerçevenin güçlü yanları olsa da, ONNX geliştiricilerin uyumluluk engelleri olmadan yapay zeka yaşam döngüsünün her aşaması için en iyi aracı seçebilmelerini sağlar.

Geliştiriciler ONNX adresini benimseyerek yapay zeka iş akışlarını önemli ölçüde basitleştirebilir, dağıtım karmaşıklıklarını azaltabilir ve modellerinin çok çeşitli uygulama ve platformlarda çok yönlü ve performanslı olmasını sağlayabilir.

Tümünü okuyun