Sözlük

Karışık Hassasiyet

Karma hassasiyet eğitimi ile derin öğrenme verimliliğini artırın! Doğruluktan ödün vermeden daha yüksek hızlar, daha az bellek kullanımı ve enerji tasarrufu elde edin.

YOLO modellerini Ultralytics HUB ile basitçe
eğitin

Daha fazla bilgi edinin

Karma hassasiyetli eğitim, model performansından önemli ölçüde ödün vermeden hesaplamayı hızlandırmak ve bellek gereksinimlerini azaltmak için derin öğrenmede kullanılan bir tekniktir. Bunu, eğitim ve çıkarım sırasında modelin farklı bölümleri için stratejik olarak farklı sayısal hassasiyet formatları (özellikle 16 bit kayan nokta (FP16 veya yarım hassasiyet) ve 32 bit kayan nokta (FP32 veya tek hassasiyet) kullanarak başarır. Bu yaklaşım, düşük hassasiyetin hız ve bellek verimliliği ile yüksek hassasiyetin sunduğu sayısal kararlılık ve doğruluğu dengeler.

Sayısal Hassasiyeti Anlama

Derin öğrenme modelleri geleneksel olarak ağırlıkları, aktivasyonları ve gradyanları depolamak için IEEE 754 standardı tek hassasiyetli kayan nokta formatını (FP32) kullanır. FP32 geniş bir dinamik aralık ve hassasiyet sunar, bu da onu karmaşık hesaplamalar için sağlam hale getirir. Bununla birlikte, FP32 işlemleri önemli ölçüde hesaplama gücü ve bellek bant genişliği gerektirir. FP16 gibi daha düşük hassasiyetli formatlar yalnızca 16 bit kullanır, bellek ayak izini yarıya indirir ve genellikle NVIDIA Tensor Çekirdekleri ile donatılmış modern GPU 'lar gibi uyumlu donanımlarda çok daha hızlı hesaplamalara olanak tanır.

Karma Hassasiyet Nasıl Çalışır?

Karışık hassasiyetli eğitim, FP16 ve FP32'yi akıllıca birleştirir. Ana fikir, modelin katmanları içinde konvolüsyonlar ve matris çarpımları gibi hesaplama açısından yoğun işlemleri daha hızlı olan FP16 formatını kullanarak gerçekleştirmektir. Ancak, bazı işlemler FP16'nın azaltılmış aralığına ve hassasiyetine duyarlıdır. Model kararlılığını ve doğruluğunu korumak için eğitim sürecinin kayıp hesaplama ve gradyan güncellemeleri gibi kritik kısımları genellikle daha sağlam olan FP32 formatında tutulur. Dinamik kayıp ölçeklendirme gibi teknikler, gradyanların FP16 temsili için çok küçük veya çok büyük olduğu durumlarda sayısal düşük akış veya taşma sorunlarını önlemek için kullanılır. PyTorch (Automatic Mixed Precision - AMP aracılığıyla) ve TensorFlow ( tf.keras.mixed_precision API aracılığıyla) gibi çerçeveler, karışık hassasiyetli eğitimin uygulanması için otomatik destek sağlar.

Karma Hassasiyetin Faydaları

Karma hassasiyet uygulamak birkaç önemli avantaj sunar:

  • Daha Hızlı Eğitim: FP16 işlemleri desteklenen donanımlarda önemli ölçüde daha hızlı olabilir ve bu da eğitim sürelerinin kısalmasını sağlar.
  • Azaltılmış Bellek Kullanımı: Model ağırlıklarını ve aktivasyonlarını FP16'da depolamak bellek gereksinimini yarıya indirerek daha büyük modellere veya eğitim dinamiklerini iyileştirebilecek artan parti boyutlarına izin verir.
  • Enerji Verimliliği: Daha hızlı hesaplama ve daha az veri hareketi, eğitim ve çıkarım sırasında daha düşük güç tüketimine yol açar.
  • Korunan Doğruluk: Kayıp ölçeklendirme gibi tekniklerle doğru şekilde uygulandığında, karma hassasiyet tipik olarak tam FP32 eğitimiyle karşılaştırılabilir doğruluk elde eder. Eğitimi optimize etme hakkında daha fazla bilgi için bu model eğitimi ipuçlarına bakın.

Gerçek Dünya Uygulamaları

Karma hassasiyet, çeşitli yapay zeka alanlarında yaygın olarak kullanılmaktadır:

  1. Bilgisayarla Görme: Aşağıdakiler dahil olmak üzere son teknoloji nesne algılama modelleri Ultralytics YOLO gibi modeller YOLOv8 ve YOLO11eğitim sırasında genellikle karma hassasiyetten yararlanır. Bu sayede daha hızlı eğitilebilir ve COCO veya Objects365 gibi daha büyük veri kümelerinin üstesinden gelinebilir, sonuçta bulut sunucularından NVIDIA Jetson gibi uç cihazlara kadar çeşitli platformlarda verimli dağıtım sağlanabilir.
  2. Doğal Dil İşleme (NLP): GPT-3 ve BERT gibi devasa Büyük Dil Modellerini (LLM 'ler) eğitmek hesaplama açısından yoğundur. Karışık hassasiyetli eğitim, bellek ve hesaplama gereksinimlerini yönetmek için çok önemlidir ve bu modelleri metin oluşturma, makine çevirisi ve duygu analizi gibi görevler için eğitmeyi mümkün kılar.

Değerlendirmeler ve İlgili Kavramlar

Oldukça faydalı olsa da, başarılı karma hassasiyet uygulaması şunları gerektirir:

  • Donanım Desteği: Optimum hızlandırmalar, hızlandırılmış FP16 hesaplaması için özel olarak tasarlanmış donanım gerektirir (örneğin, NVIDIA Volta, Turing, Ampere veya daha yeni GPU'lar).
  • Sayısal Kararlılık: FP16'nın sınırlı aralığıyla ilgili sorunlardan kaçınmak için genellikle otomatik çerçeve araçları ve kayıp ölçeklendirme yoluyla dikkatli kullanım gereklidir.
  • Çerçeve Entegrasyonu: Gibi derin öğrenme çerçevelerindeki yerleşik destekten yararlanma PyTorch veya TensorFlow uygulamayı basitleştirir.

Karışık hassasiyetli eğitimi model niceleme işleminden ayırmak önemlidir. Her ikisi de daha düşük hassasiyet kullanmayı içerirken, niceleme tipik olarak, genellikle ilk eğitimden sonra, çıkarım hızını optimize etmek ve kaynak kısıtlı cihazlarda dağıtım için model boyutunu azaltmak için modelleri daha düşük bit formatlarına (INT8 gibi) dönüştürür. Karma hassasiyet, FP16 ve FP32'yi birleştirerek eğitim sürecinin kendisini hızlandırmaya odaklanır.

Karma hassasiyet, derin öğrenme araç setinde standart bir teknik haline gelmiştir ve daha büyük, daha karmaşık modellerin daha hızlı ve daha verimli bir şekilde geliştirilmesini ve eğitilmesini sağlar.

Tümünü okuyun