Sözlük

Model Niceleme

Model niceleme ile yapay zeka performansını optimize edin. Gerçek dünya dağıtımları için boyutu azaltın, hızı artırın ve enerji verimliliğini iyileştirin.

YOLO modellerini Ultralytics HUB ile basitçe
eğitin

Daha fazla bilgi edinin

Model niceleme, yapay zeka modellerinin dağıtımında hesaplama ve bellek maliyetlerini azaltmak için makine öğreniminde kullanılan önemli bir optimizasyon tekniğidir. Bir sinir ağının ağırlıklarını ve aktivasyonlarını yüksek hassasiyetli kayan noktalı sayılardan (32 bit kayan noktalı sayılar gibi) 8 bit tam sayılar gibi daha düşük hassasiyetli formatlara dönüştürerek çalışır. Bu işlem model boyutunu önemli ölçüde azaltır ve çıkarım hızını artırır, bu da onu kaynak kısıtlı cihazlarda dağıtım için ideal hale getirir.

Model Nicelemeyi Anlama

Model nicelemenin arkasındaki temel fikir, bir modeldeki sayısal değerleri daha az bit ile temsil etmektir. Çoğu derin öğrenme modeli, yüksek hassasiyet sunan ancak önemli miktarda hesaplama gücü ve bellek gerektiren kayan noktalı sayılar kullanılarak eğitilir ve çalıştırılır. Niceleme, sürekli kayan nokta değerleri aralığını daha küçük bir ayrık tamsayı değerleri kümesine eşleyerek bu talebi azaltır. Bu, bir görüntünün renk paletini küçültmeye benzetilebilir; bazı ayrıntılar kaybolsa da temel bilgiler kalır ve dosya boyutu çok daha küçük olur.

Model niceleme için çeşitli teknikler vardır. Eğitim sonrası niceleme, bir model tamamen eğitildikten sonra uygulanır ve daha fazla eğitim olmadan ağırlıklarını ve aktivasyonlarını daha düşük bir hassasiyete dönüştürür. Bu basit bir yöntemdir ancak bazen doğrulukta hafif bir düşüşe neden olabilir. Niceleme farkındalı eğitim (QAT) ise niceleme işlemini eğitim aşamasının kendisine dahil eder. Bu, modelin daha düşük hassasiyet kısıtlamalarını öğrenmesini ve bunlara uyum sağlamasını sağlar ve genellikle eğitim sonrası niceleme işlemine kıyasla daha iyi doğrulukla sonuçlanır. Karma hassasiyetli eğitim gibi teknikler de eğitim sürecinde doğruluk ve verimliliği dengelemek için kullanılabilir.

Model Nicelemenin Faydaları

Model nicelleştirme, özellikle yapay zeka modellerinin gerçek dünya uygulamalarına yerleştirilmesi için çeşitli önemli avantajlar sunar:

  • Azaltılmış Model Boyutu: Niceleme, model dosyasının boyutunu büyük ölçüde azaltır. Örneğin, bir modeli 32 bit kayan değerlerden 8 bit tam sayılara dönüştürmek model boyutunu dört kata kadar küçültebilir. Bu, özellikle cep telefonları veya cihazlar gibi sınırlı depolama alanına sahip cihazlarda model dağıtımı için faydalıdır.
  • Daha Hızlı Çıkarım Hızı: Düşük hassasiyetli hesaplamalar, özellikle tamsayı aritmetiği için optimize edilmiş donanımlarda önemli ölçüde daha hızlıdır. Bu da Ultralytics YOLO modellerini kullanarak gerçek zamanlı nesne algılama gibi uygulamalar için çok önemli olan çıkarım gecikmesinin azalmasını ve gerçek zamanlı performansın artmasını sağlar.
  • Daha Düşük Hesaplama Maliyeti: Daha düşük hassasiyetle hesaplama yapmak daha az hesaplama gücü ve enerji gerektirir. Bu, pille çalışan cihazlar için hayati önem taşır ve yapay zeka uygulamaları için gereken genel hesaplama kaynaklarını azaltır.
  • Artan Enerji Verimliliği: Daha düşük hesaplama talepleri, daha düşük enerji tüketimi anlamına gelir ve nicelenmiş modelleri daha enerji verimli hale getirir. Bu özellikle mobil ve gömülü sistemler için önemlidir.

Gerçek Dünya Uygulamaları

Model nicelleştirme, özellikle kaynakların sınırlı olduğu veya hızın kritik olduğu çok çeşitli uygulamalarda yapay zeka modellerini dağıtmak için gereklidir. İşte birkaç örnek:

  1. Mobil Cihazlar: Akıllı telefonlar genellikle görüntü tanıma ve doğal dil işleme gibi cihaz içi yapay zeka özellikleri için nicelleştirilmiş modeller kullanır. Niceleme, bu karmaşık modellerin mobil GPU 'larda veya Raspberry Pi gibi cihazlarda bulunan Edge TPU 'lar gibi özel donanımlarda pil ömrünü tüketmeden veya performans sorunlarına neden olmadan verimli bir şekilde çalışmasını sağlar. Örneğin, bir Ultralytics YOLO modelini bir Android veya iOS uygulamasında çalıştırmak, gerçek zamanlı nesne algılama için nicelleştirmeden büyük ölçüde yararlanır.
  2. Uç Bilişim ve IoT Cihazları: Akıllı şehirler veya endüstriyel otomasyon gibi senaryolarda, AI modelleri gerçek zamanlı veri işleme için çok sayıda uç cihaza yerleştirilir. Kuantizasyon, genellikle sınırlı işlem gücü ve belleğe sahip olan bu cihazlarda verimli model sunumu sağlamak için hayati önem taşır. Güvenlik alarm sistemleri için Ultralytics YOLO adresini kullanan bir akıllı kamera düşünün; niceleme, donanım gereksinimlerini en aza indirirken zamanında tespit ve yanıt sağlar.

Niceleme ve Model Budama

Hem model niceleme hem de model budama, model boyutunu azaltmayı ve verimliliği artırmayı amaçlayan model optimizasyon teknikleri olsa da, farklı şekilde çalışırlar. Niceleme sayısal temsillerin hassasiyetini azaltırken, budama daha az önemli bağlantıları veya nöronları kaldırarak bir modeldeki parametre sayısını azaltır. Her iki teknik de optimum model performansı ve boyutu elde etmek için bağımsız olarak veya birlikte kullanılabilir. Gibi araçlar TensorRT ve OpenVINO genellikle optimizasyon işlem hatlarının bir parçası olarak niceleme ve budama işlemlerini içerir.

Özetle, model nicelleştirme, önemli bir doğruluk kaybı olmadan verimliliği artırarak yapay zekayı daha geniş bir cihaz ve uygulama yelpazesinde daha erişilebilir ve dağıtılabilir hale getiren güçlü bir tekniktir.

Tümünü okuyun