التكميم: تقليل حجم النموذج
تعرف على تقنيات التكميم وافهم كيف تقلل من حجم النموذج.
شهد الذكاء الاصطناعي التوليدي ثورةً في السنوات الأخيرة، حيث تطورت نماذج اللغة الكبيرة (LLMs) بسرعة لتصبح أكثر قوةً من أي وقت مضى. باتت هذه النماذج قادرةً على فهم استفسارات المستخدمين والاستجابة لها بطريقةٍ تُحاكي البشر. كما أنها قادرة على أداء مهام معقدة مثل الإجابة على الأسئلة، وتوليد النصوص، وتحليل المشاعر، وتوليد الأكواد، وتوليد الصور، وغير ذلك الكثير. ومع كل هذا الذكاء والتقدم، أصبحت هذه النماذج أكبر حجمًا وأكثر تعقيدًا من حيث عدد المعاملات. على سبيل المثال، فيما يلي عدد المعاملات لبعض نماذج اللغة الكبيرة واسعة الانتشار:
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 بتات ( ...