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

Bilgi Damıtımı

Bilgi damıtmanın, büyük öğretmenlerden kompakt öğrencilere zekayı nasıl aktardığını öğrenin. Hızlı ve verimli uç dağıtımı için Ultralytics optimize edin.

Bilgi damıtma, makine öğreniminde kullanılan sofistike bir tekniktir. Bu teknikte, "öğrenci" olarak adlandırılan kompakt bir sinir ağı, "öğretmen" olarak bilinen daha büyük ve daha karmaşık bir ağın davranışını ve performansını yeniden üretmek üzere eğitilir. Bu sürecin temel amacı, Bu sürecin temel amacı, model optimizasyonudur. Bu sayede geliştiriciler, ağır mimarilerin tahmin yeteneklerini, kaynak kısıtlı donanımlarda kullanıma uygun hafif modellere aktarabilirler. Öğretmenin tahminlerinde kodlanan zengin bilgileri yakalayarak, öğrenci modeli genellikle yalnızca ham verilerle eğitildiğinde elde edilenden çok daha yüksek bir doğruluk oranına ulaşır ve yüksek performans ile verimlilik arasındaki boşluğu etkili bir şekilde doldurur.

Bilgi Aktarımının Mekanizması

Geleneksel denetimli öğrenmede, modeller eğitim verilerinden"sert etiketler" kullanılarak eğitilir; burada bir görüntü kesin olarak kategorize edilir (örneğin, %100 "köpek" ve %0 "kedi"). Ancak, önceden eğitilmiş bir öğretmen modeli, tüm sınıflara olasılıklar atayan bir softmax fonksiyonu aracılığıyla bir çıktı üretir. Bu olasılık dağılımları "yumuşak etiketler" veya "karanlık bilgi" olarak bilinir.

Örneğin, bir öğretmen modeli bir kurt görüntüsünü analiz ederse, %90 kurt, %9 köpek ve %1 kedi tahmininde bulunabilir. Bu dağılım, kurtun köpekle görsel özellikleri paylaştığını ortaya koyar; bu, sabit etiketlerin göz ardı ettiği bir bağlamdır. Damıtma sürecinde öğrenci, tahminlerini öğretmenin yumuşak etiketleriyle uyumlu hale getirmek için Kullback-Leibler sapması gibi bir kayıp fonksiyonunu en aza indirir. Geoffrey Hinton'ın araştırmalarıyla popüler hale gelen bu yöntem, öğrencinin daha iyi genelleme yapmasına yardımcı olur ve daha küçük veri kümelerinde aşırı uyumu azaltır. Öğrenme süreci, öğrencinin öğretmenin etiketlerini öğrenmesi için bir dizi deneme ve hata döngüsünden oluşur.

Gerçek Dünya Uygulamaları

Bilgi damıtma, hesaplama kaynaklarının kısıtlı olduğu ancak yüksek performansın tartışılmaz olduğu sektörlerde çok önemlidir.

  • Edge AI ve Mobil Görme: Akıllı telefonlarda veya IoT cihazlarında karmaşık nesne algılama görevlerini yürütmek, düşük çıkarım gecikmesi olan modeller gerektirir. Mühendisler, devasa ağları YOLO26 (özellikle nano veya küçük varyantları) gibi mobil uyumlu mimarilere dönüştürür. Bu, yüz tanıma veya artırılmış gerçeklik filtreleri gibi gerçek zamanlı uygulamaların pil ömrünü tüketmeden sorunsuz bir şekilde çalışmasını sağlar.
  • Doğal Dil İşleme (NLP): Modern büyük dil modelleri (LLM'ler) muazzam GPU kümeleri gerektirir. Damıtma, geliştiricilerin bu modellerin temel dil modelleme yeteneklerini koruyan daha küçük ve daha hızlı sürümlerini oluşturmasına olanak tanır. Bu, standart tüketici donanımında veya daha basit bulut örneklerinde duyarlı sohbet robotları ve sanal asistanlar dağıtmayı mümkün kılar.

İlgili Optimizasyon Terimlerini Ayırt Etme

Bilgi damıtmayı diğer sıkıştırma stratejilerinden ayırmak önemlidir, çünkü bunlar modelleri temelden farklı şekillerde değiştirirler.

  • Transfer Öğrenimi: Bu teknik, geniş bir karşılaştırma veri setinde önceden eğitilmiş bir modeli alıp onu yeni, belirli bir göreve uyarlamayı içerir (örneğin, detect anomalileri detect için genel bir görüntü sınıflandırıcısını ince ayarlamak ). Damıtma ise, alan değiştirmek yerine aynı bilgiyi daha küçük bir forma sıkıştırmaya odaklanır.
  • Model Budama: Budama, fiziksel olarak mevcut eğitilmiş bir ağdan gereksiz bağlantıları veya nöronları kaldırarak onu seyrekleştirir. Damıtma genellikle öğretmenin rehberliği ile tamamen ayrı, daha küçük bir öğrenci mimarisini sıfırdan eğitmeyi içerir.
  • Model Niceleme: Niceleme, bellek tasarrufu sağlamak ve hesaplamayı hızlandırmak için modelin ağırlıklarının hassasiyetini azaltır (örneğin, 32 bit kayan noktadan 8 bit tamsayıya). Bu, genellikle TensorRT gibi motorlarla uyumlu model dağıtımının son adımıdır. TensorRT veya OpenVINOgibi motorlarla uyumlu model dağıtımının son adımıdır ve maksimum verimlilik için damıtma ile birleştirilebilir .

Öğrenci Modelinin Uygulanması

Pratik bir iş akışında, önce öğrenci olarak hizmet verecek hafif bir mimari seçersiniz. Ultralytics , veri kümelerini yönetmek ve bu verimli modellerin eğitim track için kullanılabilir. Aşağıda, kenar dağıtımı için ideal olan ve öğrenci ağı olarak hizmet veren kompakt bir YOLO26 modelini başlatma örneği verilmiştir: :

from ultralytics import YOLO

# Load a lightweight YOLO26 nano model (acts as the student)
# The 'n' suffix denotes the nano version, optimized for speed
student_model = YOLO("yolo26n.pt")

# Train the model on a dataset
# In a custom distillation loop, the loss would be influenced by a teacher model
results = student_model.train(data="coco8.yaml", epochs=5, imgsz=640)

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