Yolo Vision Shenzhen
Shenzhen
Şimdi katılın
Sözlük

Çıkarım Motoru

Bir çıkarım motorunun Ultralytics gibi makine öğrenimi modellerini gerçek zamanlı dağıtım için nasıl optimize ettiğini keşfedin. Edge AI için performans ipuçlarını bugün keşfedin.

Çıkarım motoru, eğitilmiş makine öğrenimi modellerini yürütmek ve yeni verilerden tahminler üretmek için tasarlanmış özel bir yazılım bileşenidir. Geri yayılım gibi hesaplama açısından yoğun süreçler yoluyla öğrenme modellerine odaklanan eğitim aşamasından farklı olarak, çıkarım motoru, model dağıtımı olarak bilinen operasyonel aşama için sıkı bir şekilde optimize edilmiştir. Temel amacı, hesaplamaları mümkün olduğunca verimli bir şekilde çalıştırmak, çıkarım gecikmesini en aza indirmek ve hedef donanımda, ister ölçeklenebilir bir bulut sunucusu ister pille çalışan bir Edge AI cihazı olsun, verimi en üst düzeye çıkarmaktır. Eğitim için gereken ek yükü ortadan kaldırarak, bu motorlar karmaşık sinir ağlarının gerçek zamanlı uygulamalarda çalışmasını sağlar.

Çıkarım Motorları Performansı Nasıl Optimize Eder?

Eğitim ortamından çıkarım motoruna geçiş, genellikle modelin yapısını düzene sokmak için birkaç optimizasyon adımını içerir. Model artık öğrenmeye ihtiyaç duymadığından, motor gradyan güncellemeleri için gerekli verileri atabilir ve model ağırlıklarını etkili bir şekilde dondurur. Çıkarım motorları tarafından kullanılan yaygın teknikler arasında, bellek erişimini azaltmak için birden fazla işlemi tek bir adımda birleştiren katman birleştirme ve Çıkarım motorları tarafından kullanılan yaygın teknikler arasında bellek erişimini azaltmak için birden fazla işlemin tek bir adımda birleştirildiği katman birleştirme ve ağırlıkları yüksek hassasiyetli kayan nokta formatlarından daha düşük hassasiyetli tamsayılara (ör. INT8) dönüştüren model niceleme yer alır.

Bu optimizasyonlar, Ultralytics gibi gelişmiş mimarilerin, doğrulukta önemli bir kayıp olmadan inanılmaz derecede yüksek hızlarda çalışmasını sağlar. Farklı motorlar genellikle maksimum performansı ortaya çıkarmak için belirli donanım ekosistemlerine göre uyarlanır:

  • NVIDIA TensorRT: Donanım özel çekirdekleri kullanarak ve ağ grafiğini optimize ederek NVIDIA GPU'larda yüksek performanslı çıkarım sağlar.
  • Intel OpenVINO: CPU'lar ve entegre grafikler dahil olmak üzere Intel mimarisinde derin öğrenme performansını optimize ederek kenar bilgi işlem için ideal hale getirir.
  • ONNX : ONNX farklı çerçeveler ve donanım arka uçları arasında bir köprü görevi görür.

Gerçek Dünya Uygulamaları

Çıkarım motorları, birçok modern yapay zeka kolaylığının arkasındaki sessiz itici güçlerdir ve bilgisayar görme sistemlerinin çevrelerine anında tepki vermesini sağlar.

  1. Otonom Araçlar: Otonom araçlarda, nesne algılama modelleri yayaları, trafik işaretlerini ve diğer araçları milisaniyeler içinde tanımlamalıdır. Araç donanımında yerel olarak çalışan bir çıkarım motoru, bu işlemenin gerçek zamanlı çıkarım hızlarında gerçekleşmesini sağlar, çünkü bulut bağlantısına güvenmek tehlikeli gecikmelere yol açabilir.
  2. Akıllı Üretim: Fabrikalar, montaj hatlarındaki ürünleri incelemek için endüstriyelIoT kameralar kullanır. Bir çıkarım motoru, video akışlarını işleyerek anormallik tespiti yapar ve kusurları anında işaretler. Bu otomasyon, üretimi yavaşlatmadan israfı azaltır ve sıkı kalite kontrolünü sağlar.

Çıkarım Motoru ve Eğitim Çerçevesi

Modeli oluşturmak için kullanılan yazılım ile modeli çalıştırmak için kullanılan motoru birbirinden ayırmak faydalıdır. Bir Eğitim Çerçevesi ( PyTorch veya TensorFlowgibi) mimarileri tasarlamak, kaybı hesaplamak ve denetimli öğrenme yoluyla parametreleri güncellemek için araçlar sağlar. Esneklik ve hata ayıklama yeteneklerine öncelik verir.

Buna karşılık, Çıkarım Motoru, eğitim çerçevesinden bitmiş yapıyı alır ve yürütme hızı ve bellek verimliliğine öncelik verir. Eğitim çerçevesi içinde çıkarım çalıştırabilirsiniz, ancak bu özellikle TensorFlow veya Apple Core ML gibi araçlar aracılığıyla cep telefonlarına veya gömülü cihazlara dağıtım için özel bir motor kullanmak kadar verimli değildir. Apple Core ML.

YOLO26 ile Bir Çıkarım Motoru Kullanma

Bu ultralytics paket, çıkarım motorlarının karmaşıklığının çoğunu özetleyerek kullanıcıların tahminleri sorunsuz bir şekilde çalıştırmasına olanak tanır. Arka planda, görüntülerin ön işlenmesini ve modelin yürütülmesini yönetir. Ölçeklendirme isteyen kullanıcılar için, Ultralytics Platformu eğitim ve modelleri çeşitli çıkarım motorlarıyla uyumlu optimize edilmiş formatlara aktarma sürecini basitleştirir.

Aşağıdaki örnek, önceden eğitilmiş bir YOLO26 modelini yüklemeyi ve bir görüntü üzerinde çıkarım yapmayı gösterir:

from ultralytics import YOLO

# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")

# Run inference on an image from a URL
# The 'predict' method acts as the interface to the inference process
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

Ultralytics topluluğuna katılın

Yapay zekanın geleceğine katılın. Küresel yenilikçilerle bağlantı kurun, işbirliği yapın ve birlikte büyüyün

Şimdi katılın