Araştırma

LoRA Nedir? Büyük Yapay Zekâ Modelleri Daha Az Parametre Eğitilerek Nasıl Özelleştiriliyor?

LoRA (Low-Rank Adaptation), bu maliyeti azaltmaya yönelik bir ince ayar yöntemidir. Temel modelin ağırlıkları dondurulur; seçilen katmanlara eklenen küçük parametre grupları eğitilir.

Burada önemli bir ayrım vardır: LoRA da eğitim gerektirir. Model, ana ağırlıklarının tamamı güncellenmeden özelleştirilir. Ayrıca tam ince ayar da sıfırdan model eğitmekle aynı işlem değildir; mevcut model üzerinden devam eder.

LoRA Nedir?

LoRA, PEFT (Parameter-Efficient Fine-Tuning) olarak adlandırılan, parametre açısından verimli ince ayar yöntemlerinden biridir.

Microsoft araştırmacılarının da yer aldığı ekip tarafından 2021 yılında yayımlanan çalışma, büyük ağırlık matrislerine uygulanacak güncellemelerin düşük ranklı matrislerle temsil edilebileceğini göstermiştir. Böylece belirli görevlerde çok daha az parametre eğitilerek başarılı uyarlamalar yapılabilir.

Standart LoRA uygulamasında:

  • Temel modelin ağırlıkları sabit tutulur.

  • Seçilen modüllere eğitilebilir matrisler eklenir.

  • Eğitim sırasında bu ek parametreler güncellenir.

  • Öğrenilen değişiklikler bir adaptör dosyası olarak saklanabilir.

Temel ağırlıkların korunması, modelin davranışının değişmediği anlamına gelmez. Adaptör etkinleştirildiğinde modelin ürettiği sonuçlar değişebilir.

LoRA Nasıl Çalışır?

Bir model katmanındaki büyük ağırlık matrisinin tamamını güncellemek yerine, LoRA bu matrise eklenecek değişikliği iki küçük matrisin çarpımıyla öğrenir.

Bu nedenle LoRA’yı yalnızca modelin sonuna eklenen küçük bir katman gibi düşünmek eksik kalır. Güncellemeler, modelin içinde seçilen ağırlık matrislerine uygulanır.

Süreç genellikle şu adımlardan oluşur:

  1. Temel model seçilir: Görevin diline, kapsamına ve donanım koşullarına uygun model belirlenir.

  2. Veri hazırlanır: Modelin öğrenmesi istenen davranışı gösteren örnekler oluşturulur.

  3. Ana ağırlıklar dondurulur: Standart yapılandırmada temel model parametreleri güncellenmez.

  4. Hedef modüller belirlenir: Dikkat mekanizmasındaki projeksiyonlar veya diğer doğrusal katmanlar seçilebilir.

  5. LoRA parametreleri eğitilir: Öğrenilen değişiklikler küçük matrislerde tutulur.

  6. Sonuç değerlendirilir: Adaptör, eğitimde kullanılmayan örneklerle test edilir.

Uygulama araçları, LoRA matrislerine ek olarak bazı başka parametrelerin de eğitilmesine izin verebilir. Bu nedenle gerçekte hangi ağırlıkların güncellendiği yapılandırmadan kontrol edilmelidir.

Rank Değeri Neden Önemlidir?

Rank (r), LoRA güncellemesinin kapasitesini ve eğitilebilir parametre sayısını etkiler.

Örneğin 4.096 × 4.096 boyutundaki bir ağırlık matrisi yaklaşık 16,8 milyon parametre içerir. Bu matrise rank değeri 8 olan standart bir LoRA güncellemesi uygulanırsa iki ek matris toplam 65.536 parametre içerir.

Bu, tek bir matris için açıklayıcı bir hesaplamadır. Modelin toplam bellek tüketiminin aynı oranda azalacağını göstermez.

Daha yüksek rank, daha fazla uyarlama kapasitesi sağlayabilir; ancak her zaman daha iyi sonuç üretmez. Veri miktarı, öğrenme oranı, hedef modüller ve eğitim süresi de birlikte değerlendirilmelidir.

LoRA Neden Daha Az Bellek Kullanabilir?

Tam ince ayarda bütün eğitilebilir ağırlıklar için gradyanlar ve kullanılan optimizasyon algoritmasına bağlı ek durum bilgileri tutulur.

LoRA, eğitilebilir parametre sayısını azaltarak bu alanlarda tasarruf sağlar. Ancak temel modelin ağırlıkları ve eğitim sırasında kullanılan ara aktivasyonlar hâlâ bellek gerektirir.

Bu nedenle:

  • Küçük adaptör dosyası, küçük temel model anlamına gelmez.

  • Uzun eğitim örnekleri bellek ihtiyacını artırabilir.

  • Batch boyutu ve veri türleri donanım gereksinimini etkiler.

  • Daha az parametre eğitmek, eğitim süresini aynı oranda kısaltmaz.

Orijinal LoRA araştırmasındaki bellek ve hız kazanımları, belirli modeller ve deney koşulları için raporlanmıştır. Her uygulamada aynı oranlar beklenmemelidir.

LoRA ile Full Fine-Tuning Arasındaki Fark

Özellik Full Fine-Tuning LoRA
Güncellenen ağırlıklar Modelin bütün ağırlıkları Standart kullanımda eklenen LoRA parametreleri
Eğitim belleği Genellikle daha yüksek Genellikle daha düşük
Göreve özel kayıt Tam model ağırlıkları Adaptör ağırlıkları ve yapılandırması
Uyarlama kapsamı Bütün model değiştirilebilir Seçilen modüller ve rank ile sınırlandırılır
Başarı düzeyi Göreve ve eğitim koşullarına bağlıdır Göreve ve eğitim koşullarına bağlıdır

Tam ince ayarın mutlaka büyük GPU kümeleri gerektirdiği söylenemez. Küçük modeller daha sınırlı donanımla eğitilebilir. LoRA’nın avantajı da model büyüklüğüne ve kullanılan eğitime göre değişir.

LoRA ile QLoRA Arasındaki Fark

LoRA, ağırlık güncellemelerinin nasıl öğrenileceğini belirleyen yöntemdir. Tek başına temel modelin hangi hassasiyette saklanacağını zorunlu kılmaz.

QLoRA, LoRA’yı kuantize edilmiş temel modelle birleştirir. Orijinal yöntemde temel model ağırlıkları 4 bit olarak saklanırken, dondurulmuş model üzerinden LoRA parametreleri eğitilir.

Böylece temel ağırlıkların bellek ihtiyacı da azaltılabilir. Ancak bütün hesaplamaların 4 bit yapıldığı anlamına gelmez; saklama biçimi ve hesaplama hassasiyeti farklı olabilir.

LoRA Adaptörü Tek Başına Çalışır mı?

Hayır. Adaptör dosyası genellikle temel modelin bütün ağırlıklarını içermez. Kullanılabilmesi için uyumlu temel modelin de yüklenmesi gerekir.

Aynı temel model için farklı adaptörler hazırlanabilir. Örneğin bir adaptör müşteri mesajlarını sınıflandırmaya, diğeri belirli bir rapor biçiminde yanıt üretmeye yönelik olabilir.

Adaptörün hangi temel model, model sürümü ve yapılandırmayla eğitildiği kaydedilmelidir. Bir model için hazırlanmış LoRA dosyasının başka bir modelde aynı şekilde çalışması beklenmemelidir.

Desteklenen yapılandırmalarda LoRA güncellemesi ana ağırlıklarla birleştirilebilir. Bu durumda ayrı adaptör hesaplaması kaldırılabilir; ancak birleştirilen modelin etkin ağırlıkları artık başlangıçtaki ağırlıklarla aynı değildir.

Nerelerde Kullanılabilir?

Kurumsal yapay zekâda, yanıt üslubunu, çıktı biçimini ve belirli görevlerin uygulanışını uyarlamak için kullanılabilir.

Kod modellerinde, belirli programlama görevlerine veya kurumun kod örneklerine yönelik eğitim yapılabilir.

Belge işlemede, sınıflandırma, yapılandırılmış bilgi çıkarımı ve alan terminolojisine uyum gibi görevler için değerlendirilebilir.

Görsel üretimde, belirli stil ve kavramların öğretilmesinde uygulanabilir. LoRA yalnızca dil modelleriyle sınırlı değildir; Diffusers gibi araçlar görsel üretim modelleri için de LoRA eğitimini destekler.

Bununla birlikte bir adaptöre şirket belgelerini öğretmek, bütün bilgilerin eksiksiz ve güncel biçimde hatırlanacağını garanti etmez. Güncel belgelere erişim ile modelin davranışını uyarlama ihtiyacı ayrı değerlendirilmelidir.

Karşılaşılan Zorluklar

Veri kalitesi, LoRA’nın başarısını doğrudan etkiler. Hatalı veya birbirleriyle çelişen örnekler, istenmeyen davranışların öğrenilmesine neden olabilir.

Aşırı öğrenme riski de vardır. Eğitim örneklerinde başarılı olan adaptör, farklı sorular karşısında aynı performansı göstermeyebilir.

Adaptör yönetimi ise sürüm, uyumluluk ve değerlendirme kayıtları gerektirir. Aynı temel model için hazırlanmış farklı adaptörlerin gelişigüzel birleştirilmesi, yeteneklerinin sorunsuz biçimde birleşeceği anlamına gelmez.

Sık Sorulan Sorular

LoRA eğitim gerektirmiyor mu?

Gerektirir. Temel modelin bütün ağırlıkları yerine daha küçük bir parametre grubu eğitilir.

LoRA modeli küçültür mü?

Temel modeli küçültmez. Eğitilebilir parametre miktarını ve göreve özel adaptör dosyasının boyutunu azaltır.

Kişisel bilgisayarda LoRA eğitilebilir mi?

Uygun model ve ayarlarla mümkün olabilir. Her modelin her bilgisayarda eğitilebileceği anlamına gelmez.

LoRA yanıt üretimini hızlandırır mı?

Eğitimde sağlanan tasarruf, çıkarım hızında aynı kazancı garanti etmez. Temel model ve adaptörün nasıl çalıştırıldığı belirleyicidir.

LoRA, model uyarlama maliyetini azaltmak için güçlü bir seçenektir. Sağladığı avantajın ölçüsü, küçük adaptör dosyasından çok gerçek görevlerde elde edilen kalite ve kaynak tasarrufuyla değerlendirilmelidir.

Kaynaklar: Hu ve diğerleri — LoRA: Low-Rank Adaptation of Large Language Models; Dettmers ve diğerleri — QLoRA: Efficient Finetuning of Quantized LLMs; Hugging Face PEFT — LoRA ve PEFT Checkpoint Format dokümantasyonu; Hugging Face Diffusers — LoRA eğitim rehberi.

Editör Notu

Bu içerik, kamuya açık yapay zekâ araştırmaları ve resmî teknik dokümantasyonlardan yararlanılarak hazırlanmış bir araştırma ve değerlendirme yazısıdır. İçerikte yer alan değerlendirmeler editoryal yorum niteliğindedir. LoRA’nın performansı ve kaynak tasarrufu; temel modele, eğitim verisine, donanıma ve yapılandırmaya göre değişebilir.