التكميم: تقليل حجم النموذج
تعرف على تقنيات التكميم وفهم كيفية تقليل حجم النموذج.
سنغطي ما يلي...
شهد الذكاء الاصطناعي التوليدي ثورةً في السنوات الأخيرة، حيث تطورت نماذج اللغات الكبيرة بسرعة لتصبح أكثر قوةً من أي وقت مضى. تستطيع هذه النماذج الآن فهم استفسارات المستخدم والرد عليها بأسلوبٍ يُشبه أسلوب البشر. وهي قادرة على أداء مهام معقدة مثل الإجابة على الأسئلة، وتوليد النصوص، وتحليل المشاعر، وتوليد الأكواد، وتوليد الصور، وغيرها الكثير. ومع كل هذا الذكاء والتطور، تزداد هذه النماذج حجمًا وتعقيدًا من حيث عدد المعلمات. على سبيل المثال، فيما يلي عدد معلمات بعض نماذج اللغات الكبيرة المستخدمة على نطاق واسع:
Model | Number of Parameters |
ChatGPT-4 | 1.7 trillion |
Llama 3.1 | 405 billion |
Gemini 1.0 ultra | 175 billion |
Mistral | 7 billion |
Bloom | 176 billion |
يُثير هذا التعقيد المتزايد تحديات، مثل حجم الذاكرة اللازمة لتدريب هذه النماذج واسعة النطاق نشر . ومع توسع النماذج، يزداد الطلب على الموارد الحاسوبية، مما يُصعّب إدارتها نشر بكفاءة. وهذا يُثير سؤالاً جوهرياً: كيف يُمكننا إذًا ضبط نماذج واسعة النطاق مثل GPT وLlama بدقة على بيانات مُحددة المهام؟
وهنا يأتي دور التكميم، مقدمًا حلاً لهذه التحديات. دعونا نتناول تفاصيل عملية التكميم وكيف تُسهّل الضبط الدقيق.
التكميم
التكميم هو تقنية لتقليل حجم النموذج عن طريق ضغط أوزانه من قيمة عالية الدقة إلى قيمة منخفضة الدقة. أوزان نموذج اللغة هي المتجهات التي يمكن تمثيلها بأنواع بيانات مختلفة بناءً على توافر الموارد الحاسوبية والدقة المطلوبة. نوع البيانات الافتراضي لمعظم النماذج هو عدد عائم 32 بت ( float32
)، مما يعني أن كل وزن من هذه النماذج يأخذ 4
تقلل التكمية عدد البتات المطلوبة لكل وزن في النموذج عن طريق تغيير نوع البيانات من رقم عائم مكون من 32 بت ( float32
)، والذي يحمل المزيد من المعلومات، إلى عدد صحيح مكون من 8 بت ( int8
) أو 4 بت ( ...