İçeriğe geç
parazade
Yapay Zeka

QLoRA Nedir?

Yayın: · Son güncelleme:

QLoRA Nedir? Kısaca

QLoRA, büyük bir dil modelini 4 bitlik hassasiyete nicelendirip dondurduktan sonra üzerine küçük LoRA adaptörleri eğiten bir ince ayar yöntemidir. Amaç, büyük modelleri çok daha az ekran kartı belleğiyle uyarlayabilmektir.

QLoRA nedir?
İçindekiler
  1. QLoRA nedir, nasıl çalışır?
  2. Ne işe yarar?
  3. Nelere dikkat etmeli?

QLoRA, "Quantized LoRA" yani nicelenmiş LoRA anlamına gelir. 2023'te yayımlanan bir akademik çalışmayla tanıtıldı ve büyük modellerin tek bir güçlü ekran kartında ince ayarını mümkün kılmasıyla dikkat çekti.

QLoRA nedir, nasıl çalışır?

Yöntem iki fikri birleştirir: niceleme ve LoRA.

  1. Temel modelin ağırlıkları 4 bitlik bir biçime dönüştürülür ve dondurulur. Bu, modelin bellekte kapladığı alanı 16 bitlik sürüme göre kabaca dörtte birine indirir.
  2. Modelin üzerine küçük LoRA adaptörleri eklenir. Eğitim sırasında yalnızca bu adaptörler, daha yüksek hassasiyette güncellenir.
  3. Hesaplama anında 4 bitlik ağırlıklar geçici olarak daha yüksek hassasiyete açılır, işlem yapılır.

Çalışmada ayrıca normal dağılımlı ağırlıklar için tasarlanmış "NF4" veri tipi, niceleme sabitlerini de sıkıştıran "çift niceleme" ve bellek taşmalarını yöneten sayfalanmış optimizasyon gibi teknikler önerildi.

Ne işe yarar?

QLoRA sayesinde araştırmacılar ve küçük ekipler, normalde büyük sunucu kümeleri gerektiren modelleri sınırlı VRAM ile uyarlayabilir. Eğitilen adaptör dosyası küçüktür ve kolayca paylaşılabilir.

Nelere dikkat etmeli?

4 bitlik niceleme bir miktar bilgi kaybına yol açabilir; sonuç kalitesi göreve göre değişir. Eğitim, tam hassasiyetli LoRA'ya göre biraz daha yavaş olabilir çünkü ağırlıklar sürekli açılıp sıkıştırılır. Son modeli yayına almadan önce kendi değerlendirme verinle test etmen gerekir.

Sıkça Sorulan Sorular

QLoRA ile LoRA arasındaki fark nedir?

LoRA'da temel model genellikle 16 bitlik hassasiyette tutulur. QLoRA'da ise temel model 4 bite nicelenir, bu da bellek ihtiyacını büyük ölçüde azaltır; adaptör eğitimi mantığı aynıdır.

QLoRA kaliteyi düşürür mü?

Tanıtıldığı çalışmada pek çok görevde 16 bitlik ince ayara yakın sonuçlar raporlandı. Yine de niceleme bilgi kaybı yaratabileceği için sonucu kendi görevinde ölçmek gerekir.

İlgili terimler

LoRA(Low-Rank Adaptation)LoRA (Low-Rank Adaptation), büyük bir yapay zekâ modelinin ağırlıklarını değiştirmeden, üzerine eklenen küçük bir dosyayla modele yeni bir tarz, karakter ya da görev öğretme yöntemidir. Tam eğitime göre çok daha az bellek ve süre gerektirir.PEFT(Parameter-Efficient Fine-Tuning)PEFT (Parameter-Efficient Fine-Tuning), büyük bir yapay zekâ modelini tüm ağırlıklarını yeniden eğitmeden, yalnızca küçük bir parametre kümesini güncelleyerek ya da modele küçük ek parçalar ekleyerek yeni bir göreve uyarlayan ince ayar yöntemlerinin genel adıdır.Niceleme(Quantization)Niceleme (quantization), bir yapay zekâ modelinin ağırlıklarını 16 bit yerine 8 ya da 4 bit gibi daha düşük hassasiyetle saklayarak model dosyasını küçültme yöntemidir. Böylece model daha az bellekle çalışır; karşılığında kalitede genellikle küçük bir kayıp olur.VRAM(Video RAM)VRAM (Video RAM), ekran kartının üzerinde bulunan ve grafik işlemcisinin doğrudan kullandığı bellektir. Yerel yapay zekâda bir modelin ekran kartında çalışıp çalışamayacağını ve ne kadar hızlı çalışacağını büyük ölçüde VRAM miktarı belirler.Harf Çevirisi(Transliteration)Harf çevirisi (transliterasyon), bir yazı sistemindeki metnin, anlamı çevrilmeden başka bir yazı sisteminin harfleriyle yazılmasıdır. Örneğin Kiril alfabesiyle yazılmış bir ismin Latin harflerine aktarılması harf çevirisidir.Dil Tespiti(Language Detection)Dil tespiti (language detection), bir metnin ya da ses kaydının hangi dilde olduğunu otomatik olarak belirleyen doğal dil işleme görevidir. Çeviri, arama motorları ve içerik moderasyonu gibi pek çok sistemin ilk adımıdır.