الذكاء الاصطناعي
LoRa و QLoRA و QA-LoRA: تعديل كفء في نماذج اللغة الكبيرة من خلال تحليل Матриكس منخفض الرتبة

تميزت نماذج اللغة الكبيرة (LLMs) بمكانة فريدة، حيث تقدم قدرات غير مسبوقة في فهم وإنشاء نصوص تشبه تلك التي ينتجها الإنسان. يمكن إرجاع قوة نماذج LLMs إلى حجمها الهائل، حيث غالبًا ما تحتوي على مليارات المعلمات. بينما يغذي هذا الحجم الكبير أدائها، فإنه يولد أيضًا تحديات، خاصة عندما يتعلق الأمر بتعديل النموذج لمهام أو مجالات محددة. تعتبر الطرق التقليدية لإدارة نماذج LLMs، مثل التعديل الدقيق لجميع المعلمات، باهظة الثمن من الناحية الحاسوبية والمالية، وبالتالي تشكل حاجزًا كبيرًا أمام انتشارها الواسع في التطبيقات العملية.
في مقال سابق، غامرنا في تعديل نماذج اللغة الكبيرة (LLMs) لتناسب متطلبات معينة. استكشفنا مختلف منهجيات التعديل الدقيق مثل التعديل الدقيق القائم على الإرشادات، التعديل الدقيق لمهمة واحدة، والتعديل الدقيق الفعال لل매개طة (PEFT)، كل منها يتبنى نهجًا فريدًا لتحسين أداء نماذج LLMs لمهام مختلفة. كان بناء المتحول (Transformer) هو العمود الفقري لنماذج LLMs، والتحديات التي تطرحها المتطلبات الحاسوبية والذاكرة لتعامل مع عدد هائل من المعلمات أثناء التعديل الدقيق.
تُظهر الصورة أعلاه حجم مختلف نماذج اللغة الكبيرة، المصنفة حسب عدد معلماتها. ومن الجدير بالذكر: PaLM، BLOOM، وغيرها.
في هذا العام، تم إحراز تقدم يؤدي إلى نماذج أكبر. ومع ذلك، فإن تعديل مثل هذه النماذج الهائلة والمفتوحة المصدر على أنظمة قياسية يعتبر أمرًا غير قابل للتحقيق بدون تقنيات تحسين متخصصة.
دخلت طريقة التكيف منخفض الرتبة (LoRA) التي قدمتها مايكروسوفت في هذا الورقة، بهدف التغلب على هذه التحديات وجعل نماذج LLMs أكثر إمكانية الوصول والتعديل.
تتمثل جوهر LoRA في نهجها تجاه تعديل النموذج دون الخوض في تفاصيل إعادة تدريب النموذج بالكامل. على عكس التعديل الدقيق التقليدي، حيث يتم تعديل كل معلمة، تعتمد LoRA على مسار أكثر ذكاءً. يتم تجميد أوزان النموذج المُتدرب مسبقًا وتroduced إلى كل طبقة من بنية المتحول معاملات تركيبية قابلة للتدريب. هذا النهج يقلل بشكل كبير من عدد المعلمات القابلة للتعديل، مما يضمن عملية تعديل أكثر كفاءة.
تطور استراتيجيات تعديل LLM
عندما ننظر إلى رحلة تعديل LLM، يمكننا تحديد العديد من الاستراتيجيات التي استخدمها الممارسون على مر السنين. في البداية، كان الضوء مركزًا على تعديل النماذج المُتدربة مسبقًا، وهي استراتيجية تتضمن تعديل شامل للمعلمات النموذجية لتناسب المهمة المحددة. ومع نمو حجم النماذج وتعقيداتها، زادت أيضًا المتطلبات الحاسوبية لهذا النهج.
الاستراتيجية التالية التي اكتسبت زخمًا كانت تعديل فرعي، وهو نسخة أكثر تقييدًا من سلفها. هنا، يتم تعديل فقط جزء من معلمات النموذج، مما يقلل من العبء الحاسوبي إلى حد ما. على الرغم من مزاياه، لم يكن تعديل الفرعي قادرًا على مواكبة معدل نمو حجم نماذج LLMs.
随着 تقدم الممارسين لاستكشاف طرق أكثر كفاءة، ظهر التعديل الدقيق الكامل كنهج صارم ومجزي.
مقدمة إلى LoRA
يمنحنا رتبة المصفوفة نظرة على الأبعاد التي تم إنشاؤها بواسطة أعمدتها، وتحدد بواسطة عدد الصفوف أو الأعمدة الفريدة التي تحتويها.
- مصفوفة كاملة الرتبة: تتوافق رتبتها مع العدد الأصغر بين صفوفها وأعمدتها.
- مصفوفة منخفضة الرتبة: برتبة أقل بكثير من كلا عددي الصفوف والأعمدة، مما يؤدي إلى.capture ميزات أقل.
النماذج الكبيرة تكتسب فهمًا واسعًا لمنطقتها، مثل اللغة في نماذج اللغة. ولكن عند تعديلها لمهام محددة، غالبًا ما يكون فقط جزء صغير من هذه الفهم ضروريًا. هنا يبرز LoRA. يُقترح أن المصفوفة التي تظهر هذه التعديلات على الأوزان يمكن أن تكون مصفوفة منخفضة الرتبة، مما يؤدي إلى.capture ميزات أقل.
تحدد LoRA رتبة مصفوفة التحديث عن طريق تقسيمها إلى مصفوفين أصغر، مما يقلل من عدد المعلمات القابلة للتعديل، وبالتالي يجعل عملية التعديل أكثر كفاءة.
تطبيق LoRA على المتحولات
تساعد LoRA في تقليل عبء التدريب في الشبكات العصبية من خلال التركيز على مصفوفات الأوزان المحددة. في بنية المتحول، هناك مصفوفات أوزان مرتبطة بآلية الانتباه الذاتي، وهي Wq و Wk و Wv و Wo، بالإضافة إلى مصفوفتين أخريين في وحدة MLP.
الشرح الرياضي ل LoRA
دعونا نناقش الرياضيات وراء LoRA:
- مصفوفة الأوزان المُتدربة مسبقًا W0:
- تبدأ بمصفوفة أوزان مُتدربة مسبقًا W0 بأبعاد d×k. هذا يعني أن المصفوفة لها d صفوف و k أعمدة.
- التحليل منخفض الرتبة:
- بدلاً من تحديث المصفوفة الكاملة W0 مباشرةً، والتي يمكن أن تكون باهظة الثمن حاسوبيًا، يُقترح نهج التحليل منخفض الرتبة.
- التحديث ΔW إلى W0 يمكن تمثيله كمنتج لمصفوفين: B و A.
- B لها أبعاد d×r
- A لها أبعاد r×k
- النقطة الرئيسية هنا هي أن الرتبة r أقل بكثير من كلا d و k, مما يسمح بتمثيل أكثر كفاءة حاسوبيًا.
- التدريب:
- خلال عملية التدريب، يبقى W0 غير متغير. هذا يُسمى “تجميد” الأوزان.
- من ناحية أخرى، A و B هي المعلمات القابلة للتعديل. هذا يعني أن التعديلات يتم إجراؤها على مصفوفات A و B لتحسين أداء النموذج.
- الضرب والإضافة:
- كلا W0 والتحديث ΔW (الذي هو منتج B و A) يتم ضربها بنفس الإدخال (المُشار إليه بواسطة x).
- مخرجات هذه عمليات الضرب يتم إضافتها معًا.
- تُختصر هذه العملية في المعادلة: h=W0x+ΔWx=W0x+BAx. هنا، h يمثل الإخراج النهائي بعد تطبيق التحديثات على الإدخال x.
باختصار، يسمح هذا الأسلوب بتحديث مصفوفة كبيرة للأوزان بطريقة أكثر كفاءة من خلال تمثيل التحديثات باستخدام تحليل منخفض الرتبة، مما يمكن أن يكون مفيدًا من حيث الكفاءة الحاسوبية واستخدام الذاكرة.
التحديث والتمييز:
عندما نقوم بتدريب النماذج، يمكن أن يؤثر كيفية تهيئة المعلمات بشكل كبير على كفاءة وفعالية عملية التعلم. في سياق تحديث مصفوفة الأوزان باستخدام A و B:
- تهيئة المصفوفات A و B:
- مصفوفة A: يتم تهيئة هذه المصفوفة بقيم غاوسية عشوائية، المعروفة أيضًا باسم التوزيع الطبيعي. السبب وراء استخدام التهيئة الغاوسية هو كسر التناظر: سيتمكن العصبونات المختلفة في نفس الطبقة من تعلم ميزات مختلفة عندما يكون لها أوزان ابتدائية مختلفة.
- مصفوفة B: يتم تهيئة هذه المصفوفة بقيم صفرية. من خلال القيام بذلك، يبدأ التحديث ΔW=BA كصفر في بداية التدريب. يضمن ذلك عدم حدوث تغيير مفاجئ في سلوك النموذج في البداية، مما يسمح للنموذج بالتكيف تدريجيًا مع تعلم B لقيم مناسبة خلال التدريب.
- تمييز الإخراج من ΔW:
- بعد حساب التحديث ΔW, يتم تمييز إخراجها بواسطة عامل rα حيث α هو ثابت. من خلال التمييز، يتم التحكم في величينة التحديثات.
- التمييز مهم بشكل خاص عند تغيير الرتبة r. على سبيل المثال، إذا قررت زيادة الرتبة للحصول على دقة أكبر (على حساب الحسابات)، فإن التمييز يضمن عدم الحاجة إلى تعديل العديد من المعلمات الأخرى في العملية. يوفر مستوى من الاستقرار للنموذج.
تأثير LoRA العملي
أثبتت LoRA إمكاناتها في تعديل نماذج LLMs لتناسب أنماط فنية محددة بكفاءة من قبل الأشخاص في مجتمع الذكاء الاصطناعي. تم التأكيد على ذلك بشكل ملحوظ في تعديل نموذج لتقليده أسلوب الفنان غريغ روتكووسكي.
كما هو موضح في الورقة باستخدام GPT-3 175B كمثال. أن يكون لديك مثيلات منفصلة من نماذج مُعدلة بدقة مع 175 مليار معلمة لكل منها أمر مكلف للغاية. ومع LoRA، تقلل المعلمات القابلة للتعديل بنسبة 10 آلاف مرة، ويتقلص استخدام الذاكرة إلى ثلثه.
تجسد منهجية LoRA خطوة كبيرة نحو جعل نماذج LLMs أكثر إمكانية الوصول، كما تبرز الإمكانية لجسر الفجوة بين التقدم النظري والتطبيقات العملية في مجال الذكاء الاصطناعي. من خلال التغلب على العوائق الحاسوبية وتعزيز كفاءة عملية تعديل النموذج، تتمتع LoRA بمكانة محورية في تبني وتنفيذ نماذج LLMs على نطاق واسع في السيناريوهات الواقعية.
QLoRA (مكمّلة)
بينما تُعد LoRA خطوة هامة في تقليل احتياجات التخزين، لا تزال تتطلب كمبيوترًا قويًا لتحميل النموذج للتدريب. هنا يأتي دور QLoRA، أو LoRA المكمّلة، الذي يدمج LoRA مع التكميم لنهج أكثر ذكاءً.
عادةً ما يتم تخزين معلمات الأوزان في تنسيق 32 بت (FP32)، مما يعني أن كل عنصر في المصفوفة يأخذ 32 بت من المساحة. تخيل لو استطعنا ضغط نفس المعلومات في 8 بت أو حتى 4 بت. هذا هو جوهر التكميم.
هنا يأتي تلخيص QLoRA:
- التكميم الأولي: أولاً، يتم تقليل نموذج اللغة الكبير إلى 4 بت، مما يقلل بشكل كبير من بصمة الذاكرة.
- تدريب LoRA: ثم يتم إجراء تدريب LoRA، ولكن في دقة 32 بت (FP32).
الآن، قد تتساءل، لماذا العودة إلى 32 بت للتدريب بعد تقليلها إلى 4 بت؟ حسنًا، لتدريب محولات LoRA بشكل فعال في FP32، يتعين على أوزان النموذج العودة إلى FP32 أيضًا. يتم هذا التبديل ذهابًا وعودة بين FP32 و 4 بت بطريقة ذكية وخطوة بخطوة لتجنب إرهاق ذاكرة الكمبيوتر.
تجد LoRA تطبيقها العملي في مكتبة Unite.AI التهيئة الفعالة للمعلمات (PEFT)، مما يسهل استخدامها. لأولئك الذين يرغبون في استخدام QLoRA، يمكن الوصول إليها من خلال مزيج من مكتبات bitsandbytes و PEFT. بالإضافة إلى ذلك، توفر مكتبة Unite.AI التعلم المعزز للمتحولات (TRL) تعديلًا إشرافيًا مدعومًا بدعم مدمج ل LoRA. معًا، توفر هذه المكتبات الثلاث الأدوات الأساسية للتعديل الدقيق لنموذج مُتدرب مسبقًا، مما يسمح بإنشاء описания منتجات مقنعة ومتسقة عند تزويد الإرشادات المحددة.
بعد التعديل الدقيق بواسطة QLoRA، يجب أن تعود الأوزان إلى تنسيق دقيق عالي، مما قد يؤدي إلى فقدان الدقة وعدم تحسين سرعة العملية.
تم اقتراح حل يعتمد على تقسيم مصفوفة الأوزان إلى أقسام أصغر وتطبيق التكميم وتحليل منخفض الرتبة على كل قسم على حدة. يُحاول أسلوب جديد يُسمى QA-LoRA الجمع بين مزايا التكميم وتحليل منخفض الرتبة مع الحفاظ على كفاءة العملية وفعالية النموذج للمهام المطلوبة.
الختام
في هذه المقالة، تناولنا التحديات التي تطرحها نماذج اللغة الكبيرة بسبب حجمها الهائل. غامرنا في ممارسات التعديل الدقيق التقليدية ومتطلباتها الحاسوبية والمالية. تتمثل جوهر LoRA في قدرتها على تعديل النماذج المُتدربة مسبقًا دون إعادة تدريبها بالكامل، مما يقلل من المعلمات القابلة للتعديل ويجعل عملية التعديل أكثر كفاءة.
كما تناولنا بشكل موجز تقنية QLoRA (الكممية)، وهي مزيج من LoRA والتكميم، والتي تقلل من بصمة الذاكرة للنموذج مع الحفاظ على الدقة الأساسية للتدريب. مع هذه التقنيات المتقدمة، يمتلك الممارسون الآن مكتبات قوية، مما يسهل تبني وتنفيذ نماذج LLMs في مجموعة واسعة من السيناريوهات الواقعية.
تم تصميم هذه الاستراتيجيات لتحقيق توازن بين جعل نماذج LLMs قابلة للتكيف لمهام محددة وضمان أن تكون عمليات التعديل الدقيق والتنفيذ ليست باهظة الثمن من حيث الحسابات وذاكرة التخزين.


















