Low-Rank Adaptation (LoRA) (UR)
Low-Rank Adaptation (LoRA) — یہ پیرامیٹر-موثر دوبارہ تربیت (PEFT) کا ایک طریقہ ہے جو بڑے لسانی ماڈلز (LLM) کو کم سے کم حسابی وسائل کے ساتھ نئے کاموں کے لیے موافق بنانے کی سہولت دیتا ہے۔ یہ تکنیک پہلی بار ایڈورڈ ہو (Edward Hu) اور ان کے ساتھیوں کے تحقیقی مقالے میں سنہ 2021ء میں پیش کی گئی تھی[1]۔
بڑے ماڈلز، جیسے LLaMA یا GPT، کی مکمل دوبارہ تربیت (full fine-tuning) کے لیے بے پناہ وسائل درکار ہوتے ہیں، جو اسے اکثر محققین اور ڈویلپرز کی پہنچ سے باہر کر دیتا ہے۔ LoRA اس مسئلے کو حل کرتا ہے، کیونکہ یہ ماڈل کے محض چند پیرامیٹرز کی تربیت کرتا ہے، اور بیک وقت معیار اور کارکردگی کو مکمل دوبارہ تربیت کے برابر سطح پر برقرار رکھتا ہے[2]۔
کام کرنے کا اصول
LoRA کا بنیادی خیال یہ ہے کہ پہلے سے تربیت یافتہ ماڈل کے اصل وزن کو تبدیل کرنے کی بجائے، ان میں ایک چھوٹی "اصلاحی" میٹرکس شامل کی جائے۔ وزن کی بڑی میٹرکس `W` کو براہِ راست تربیت دینے کی بجائے، LoRA اس کی تبدیلی کو دو چھوٹی کم رینک میٹرکسز کے حاصلِ ضرب کے طور پر پیش کرتا ہے۔
باضابطہ طور پر، اگر کسی پرت کی اصل وزن میٹرکس `W_0` کا سائز `d × k` ہے، تو اس کی تازہ کاری کو `ΔW = BA` کے طور پر ظاہر کیا جاتا ہے، جہاں `B` ایک `d × r` جہتی میٹرکس ہے، اور `A` ایک `r × k` جہتی میٹرکس ہے۔ رینک `r` ایک ہائپرپیرامیٹر ہے اور یہ نمایاں طور پر چھوٹا ہوتا ہے (`r << d, k`)۔ دوبارہ تربیت کے دوران اصل وزن `W_0` کو منجمد کر دیا جاتا ہے، اور صرف میٹرکسز `A` اور `B` کی تربیت کی جاتی ہے۔ حتمی وزن میٹرکس `W = W_0 + BA` کے طور پر حساب کی جاتی ہے۔
اس سے قابلِ تربیت پیرامیٹرز کی تعداد ہزاروں گنا کم ہو جاتی ہے۔ مثال کے طور پر، GPT-3 (175 ارب پیرامیٹرز) کی دوبارہ تربیت کے وقت LoRA قابلِ تربیت پیرامیٹرز کی تعداد 10,000 گنا کم کر دیتا ہے اور GPU میموری کی ضرورت 3 گنا کم ہو جاتی ہے[1]۔
اہم فوائد
- وسائل کی بچت: قابلِ تربیت پیرامیٹرز کی تعداد میں نمایاں کمی (90 فیصد یا اس سے زیادہ) ہوتی ہے، جس سے ویڈیو میموری (VRAM) کا استعمال کافی کم ہو جاتا ہے اور تربیت کا عمل تیز ہو جاتا ہے۔
- inference میں تاخیر کا نہ ہونا: تربیت کے بعد میٹرکسز `B` اور `A` کو اصل میٹرکس `W_0` میں "ضم" کیا جا سکتا ہے، یعنی `W = W_0 + BA` حساب کرکے۔ اس طرح ماڈل کے استعمال کے دوران کوئی اضافی حساب یا تاخیر شامل نہیں ہوتی[1]۔
- ماڈیولریت اور فوری کام کی تبدیلی: تربیت یافتہ LoRA adapters چھوٹی فائلوں (چند میگابائٹس) کی صورت میں ہوتے ہیں۔ یہ مختلف کاموں کے لیے درجنوں adapters آسانی سے محفوظ کرنے اور بنیادی ماڈل کو تبدیل کیے بغیر ان کے درمیان فوری طور پر سوئچ کرنے کی سہولت دیتا ہے[3]۔
حدود اور ترامیم
اگرچہ LoRA انتہائی مؤثر ہے، لیکن اس کی کم رینک نوعیت ان کاموں کے لیے محدودیت بن سکتی ہے جن میں بڑی مقدار میں نئی معلومات یاد رکھنا ضروری ہو۔ اس اور دیگر مسائل کے حل کے لیے مختلف ترامیم تجویز کی گئی ہیں۔
QLoRA
QLoRA (Quantized Low-Rank Adaptation) — سنہ 2023ء میں تجویز کردہ سب سے مقبول ترامیم میں سے ایک ہے۔ یہ LoRA کو بنیادی ماڈل کی 4-بٹ quantization کے ساتھ یکجا کرتی ہے[4]۔ اس سے میموری کی ضرورت مزید کم ہو جاتی ہے، جو ایک صارفی GPU پر دسیوں ارب پیرامیٹرز (مثلاً 65B ماڈل) والے ماڈلز کی دوبارہ تربیت ممکن بناتی ہے۔ QLoRA کی بنیاد پر خاص طور پر Guanaco ماڈل بنایا گیا، جس نے ChatGPT کے برابر نتائج دکھائے۔
دیگر ترامیم
- MoRA (High-Rank Updating): یہ ان کاموں کے لیے تجویز کی گئی ہے جہاں LoRA رینک کی قید کی وجہ سے ناکافی کارکردگی دکھاتا ہے۔ MoRA ایسے طریقے استعمال کرتا ہے جو پیرامیٹر-موثر رہتے ہوئے اعلی رینک کے ساتھ وزن کی تازہ کاری کی اجازت دیتے ہیں[5]۔
نفاذ اور اطلاق
LoRA تکنیک اپنی مؤثریت اور آسان انضمام کی وجہ سے وسیع پیمانے پر مقبول ہوئی ہے۔ اس کی مقبولیت میں Hugging Face کمپنی کی PEFT (Parameter-Efficient Fine-Tuning) لائبریری نے کلیدی کردار ادا کیا۔ PEFT، Transformers ایکو سسٹم کے ماڈلز پر LoRA اور دیگر PEFT طریقوں کے اطلاق کے لیے ایک متحد انٹرفیس فراہم کرتا ہے[6]۔
LoRA فعال طور پر درج ذیل مقاصد کے لیے استعمال ہوتا ہے:
- چیٹ بوٹس اور مکالماتی نظاموں کی موافقت کے لیے (مثلاً LLaMA، Mistral کی دوبارہ تربیت)۔
- انتہائی مخصوص شعبوں میں متن کی درجہ بندی اور تخلیق کے لیے ماڈلز بنانا۔
- ماڈلز کو مخصوص انداز یا ڈیٹا فارمیٹ کے مطابق ذاتی بنانا۔
روابط
- Hugging Face کی PEFT لائبریری کی سرکاری دستاویزات
کتابیات
- Hu, E.J. et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models. arXiv:2106.09685.
- Dettmers, T. et al. (2023). QLoRA: Efficient Finetuning of Quantized LLMs. arXiv:2305.14314.
- Zhang, Q. et al. (2023). AdaLoRA: Adaptive Budget Allocation for Parameter-Efficient Fine-Tuning. arXiv:2303.10512.
- Chen, Y. et al. (2023). LongLoRA: Efficient Fine-Tuning of Long-Context Large Language Models. arXiv:2309.12307.
- Mao, K. et al. (2024). A Survey on LoRA of Large Language Models. arXiv:2407.11046.
- Jiang, T. et al. (2024). MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning. arXiv:2405.12130.
- Liu, Z. et al. (2024). ALoRA: Allocating Low-Rank Adaptation for Fine-Tuning Large Language Models. arXiv:2403.16187.
- Liu, J. et al. (2025). RoRA: Efficient Fine-Tuning of LLM with Reliability Optimization for Rank Adaptation. arXiv:2501.04315.
- Albert, P. et al. (2025). RandLoRA: Full-Rank Parameter-Efficient Fine-Tuning of Large Models. arXiv:2502.00987.
- Tastan, N. et al. (2025). LoFT: Low-Rank Adaptation That Behaves Like Full Fine-Tuning. arXiv:2505.21289.
حواشی
- ↑ 1.0 1.1 1.2 Hu, E.J., et al. «LoRA: Low-Rank Adaptation of Large Language Models». arXiv:2106.09685. [1]
- ↑ Mao, K., et al. «A Survey on LoRA of Large Language Models». arXiv:2407.11046. [2]
- ↑ Noble, Joshua. «What is LoRA (Low-Rank Adaption)?». IBM Technology. [3]
- ↑ Dettmers, T., et al. «QLoRA: Efficient Finetuning of Quantized LLMs». arXiv:2305.14314. [4]
- ↑ Jiang, Z., et al. «MoRA: High-Rank Updating for Parameter-Efficient Fine-Tuning». arXiv:2405.12130. [5]
- ↑ «LoRA (Low-Rank Adaptation)». Hugging Face LLM Course. [6]