English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

ضيف
1 / ?

ما الذي يتنبأ به نموذج اللغة

محرك استمرار احتمالي

يأخذ نموذج اللغة تسلسلًا من الرموز & يعين توزيعًا احتماليًا للرمز التالي. أطعمه the cat sat on the & يخرج احتماليات عبر مفردات كاملة: كتلة عالية على mat، floor، couch؛ كتلة منخفضة على xylophone، Tuesday.


عينة ذلك التوزيع، إلحاق رمز، & إعادة تغذيته: تلك الحلقة تولد نصًا رمزًا واحدًا في كل مرة. توليد أوتوريغريسيف، مسمى كذلك لأن كل خطوة تعتمد على إخراجها السابق الخاص.


ثلاثة أرقام تحدد نموذج اللغة


حجم المفردات (V). عدد الرموز المميزة التي يمكن للنموذج إنتاجها. استخدم ANDREA-12M 4,353 رمزًا؛ ANDREA-120M يستخدم 8,449.


نافذة السياق (T). عدد الرموز التي تتناسب في تمريرة أمامية واحدة. تستخدم نماذج ANDREA T = 1,024.


عدد المعاملات (P). عدد الأوزان المُتَعَلَّمَة الموجودة داخل النموذج. 12M، 120M، & 480M تُسَمِّي عائلة بـ P.


عائلة من ثلاثة


النسخةd_modelرؤوسطبقاتالسياقالمعاملات
ANDREA-12M384126102412.8M
ANDREA-120M76812121024~120M
ANDREA-480M153624161024~480M

ثلاثة مقاييس للتوسع: d_model (عرض كل متجه داخلي)، n_layer (عمق كتل الـtransformer المتراكمة)، n_head (إسقاطات الانتباه المتوازية). يبقى حجم المفردات والسياق ثابتًا عبر العائلة.

قراءة جدول العائلة

قارن ANDREA-12M (d_model=384، 6 طبقات، 12 رأس) مع ANDREA-120M (d_model=768، 12 طبقة، 12 رأس). سمِّ محورين معماريين يتوسعان من 12M إلى 120M، وواحد يبقى ثابتًا. سبب بجملة واحدة لكل خيار توسع يساعد.

لماذا الصغير مهم

القيد كتحرير

تتطلب نماذج اللغة الكبيرة التي تحتوي على مئات المليارات من المعاملات آلاف وحدات معالجة الرسوميات، ومجموعات بيانات خاصة، وميزانيات شركات. قلة من الناس يمكنهم تدريب واحدة. قلة من الناس يمكنهم إصلاح واحدة.


نموذج لغة صغير على وحدة معالجة رسوميات واحدة يقلب ذلك. يمكن لأي شخص لديه 4090 (أو 3060) إعادة إنتاج ANDREA من بيانات مفتوحة. وصفة التدريب تعمل كبطاقة النموذج. كود مفتوح، أوزان مفتوحة، بيانات مفتوحة؛ أصل كامل في 72 ساعة من الحوسبة.


السعة مقابل الجودة

لا يمكن للنماذج الأصغر حفظ مجموعة بيانات التدريب الخاصة بها. ANDREA-12M، بـ12.8 مليون معامل، يفتقر إلى السعة لتخزين المحتوى الواقعي؛ يتعلم هيكل الدور، توزيع المفردات، وشكل الرد. ANDREA-120M، بسعة 10 أضعاف، يتعلم استرجاع الحقائق، التماسك متعدد الفقرات، وعرض المجال (مُثبت من خلال التقييم الخارجي بـ9.5/10 على عينات البيولوجيا ومعالجة الإشارات).


النقطة الرئيسية: السعة تحدد السقف. المنهج يحدد ما إذا تم الوصول إلى هذا السقف. الأنشطة 14-23 تغطي المنهج. [TITLE decoder_only/]

ثلاث نكهات من المحول

المشفر، المفكك، كلاهما

المحول الأصلي (Vaswani et al., 2017) جاء مع مشفر ومفكك، ملتصقين معًا للترجمة. ثلاث سلالات معمارية تنحدر من ذلك الورقة:


المشفر فقط (سلالة BERT). انتباه ثنائي الاتجاه، بدون قناع سببي. مُحسَّن للتصنيف، لا للتوليد. يرى الرمز كلاً من ماضيه ومستقبله أثناء التدريب.


المشفر-المفكك (T5، BART). يقرأ المشفر المدخلات؛ يولد المفكك المخرجات، مع الالتفات إلى المشفر عبر الاهتمام المتقاطع. يُستخدم للترجمة والتلخيص.


المفكك فقط (GPT، ANDREA). قناع سببي: كل رمز يرى الماضي فقط. يُدرب للتنبؤ بالرمز التالي. الإنتاج يأتي مجانًا؛ التدريب والاستدلال يشتركان في نفس المرور الأمامي.


لماذا يفوز المفكك-فقط على وحدة معالجة رسوميات واحدة

ثلاثة أسباب:


1. هدف واحد. تنبؤ الرمز التالي يعمل على أي نص. لا حاجة لمصدر/هدف متزاوج.

2. تماثل التدريب والاستدلال. نفس المرور الأمامي، لا منطق توليد خاص.

3. بساطة الذاكرة. لا انتباه متقاطع؛ مكدس واحد من الطبقات؛ تدفق واحد للتفعيلات.


يُرث ANDREA خيار الـ decoder-only من microGPT، الذي ورثه من nanoGPT، الذي ورثه من GPT-2. السلسلة تبقى قياسية؛ ما يتغير يعيش في التوكنايزر، وبنية التدريب، والمنهج.

لماذا Decoder-Only لـ ANDREA

أعطِ سبباً واحداً من منظور بيانات التدريب وسبباً واحداً من منظور سلوك الاستدلال لماذا يستخدم ANDREA محول decoder-only بدلاً من encoder-decoder مثل T5.

ما الذي يتناسب مع 24 جيجابايت

البايتات لكل معلمة

يأتي RTX 4090 مع 24 جيجابايت من VRAM. استخدم تدريب ANDREA-12M 1.4 جيجابايت. استخدم ANDREA-120M كمية أكبر بكثير. يعود الفارق إلى تمرين محاسبي بسيط: كل معلمة تظهر عدة مرات في الذاكرة أثناء التدريب.


لكل معلمة، يحتفظ التدريب بـ:

- الوزن نفسه (1× وزن)

- أول لحظة آدم (m): نفس شكل الوزن (1× وزن)

- ثاني لحظة آدم (v): نفس شكل الوزن (1× وزن)

- التدرجات: نفس شكل الوزن (1× وزن)

- التنشيطات والمؤقتات: ~2-4× وزن (يختلف حسب الدفعة والسياق)


الإجمالي: ~6-8× عدد الوزن، بالبايتات المحددة حسب الدقة.


الدقة تضاعف كل شيء


الدقةبايت/معاملالإجمالي لـ 120M معاململاحظات
FP324480 ميجابايتالأساسي؛ الأكثر أمانًا، الأبطأ
FP162240 ميجابايتcuBLAS، نصف الذاكرة
FP8 E4M31120 ميجابايتنوى التنسور، خطر NaN

اضرب في 6-8× للحصول على الحجم الكامل أثناء التدريب. ANDREA-120M تتدرب بسهولة في FP16 (~2 جيجابايت للمعاملات + المحسن + التدرجات)؛ FP8 E4M3 يقلل وقت التدريب إلى النصف على نوى التنسور في RTX 4090.


النشاط 13 (grow_a_language_model_precision) يتناول بالتفصيل التوازنات في دقة FP.

تحديد حجم حالة المحسن لـ ANDREA-120M

تحتوي ANDREA-120M على ~120,000,000 معامل. يشغل كل وزن FP32 4 بايتات. يخزن AdamW معاملين إضافيين لحالة المحسن لكل وزن (m, v). احسب: (أ) الأوزان فقط في FP32، بالميجابايت؛ (ب) الأوزان + حالة المحسن في FP32، بالميجابايت؛ (ج) الأوزان + حالة المحسن في FP16، بالميجابايت. أظهر حساباتك.

خمسة وعشرون نشاطًا

نصفان

ينقسم هذا الكورس بشكل واضح. النصف الأول يغطي ما علّمه microGPT للمجال: محول يعمل على وحدة معالجة رسوميات واحدة. النصف الثاني يغطي مساهمة ANDREA الحقيقية: منهج يتعلم.


النصف الأول: محول على وحدة معالجة رسوميات واحدة (الأنشطة 2-13)


#النشاطالإنجاز
2مقسم مورفيم هاريستقسيم توزيعي، مفردات 256+N+1
3محاذاة نظام توكنايزرنقطة التشبع، لماذا 12M هدر 63.6%
4تضمينات وموضعتضمين تعلم + بحث موضع
5انتباه المنتج النقطي المقياسQ·Kᵀ/√d، قناع سببي، softmax
6انتباه متعدد الرؤوستقسيم الرؤوس، إسقاطات متوازية
7كتلة المحولMLP، بقايا، تطبيع الطبقة
8الإنتروبيا العابرة & الحيرةاحتمالية لوغاريتمية، خسارة SMMA
9الانتشار العكسي في CUDA مخصصقاعدة السلسلة عبر microgpt_cuda.cu
10AdamWانحلال الوزن المفصول؛ لماذا مات آدم العادي
11تسخين LR + انحلال كوساينوسمنحدر 2000 خطوة؛ لماذا القمة الفورية تدمر 120M
12قص التدرجمعيار L2 عالمي؛ 3 نوى CUDA
13FP32 / FP16 / FP8 E4M3توازنات الدقة؛ نوى التنسور

الشطر الثاني: منهج يتعلم (أنشطة 14-24)


#النشاطالضربة
14اللصوص ذوو الأذرع المتعددةUCB1، الاستكشاف مقابل الاستغلال
15التحكم في النرد بناءً على المراحلمراحل 7/14/21/28/42، نرد 1d3/1d4
16نسب المكافآت و EMAEMA للخسارة لكل مصدر، تدرج 1000×
17أرضيات المصادر وعقوبة الحقبة1/(1+epochs) يمنع الحفظ عن ظهر قلب
18مكافأة التغطيةتتبع على مستوى الوثيقة، 1.3× الانتعاش
19الإحماء المنهجي7 مصادر دردشة/نثر في أول 20 ألف خطوة
20التصفية حسب الشكل، لا الأحرفhas_system_prompt_shape()
21التوقف المبكر المُدار بالتماسكتوقف تلقائي ثنائي/ثلاثي/كلمة/حرف
22نقطة التفتيش، الاستئناف، الإشاراتتنسيق، SIGTERM/SIGUSR1، استمرارية loss.json
23تدقيق العينة & التقييم الخارجيقراءة تشغيل، منطقة 9.5/10
24من microGPT إلى ANDREA-120Mانهيار v1، إصلاحات v2، تصحيح v2.5، تلميع v3

بالإضافة إلى رفيق: geometry_of_andrea يُعامل كل طبقة كهندسة (مساحة التضمين، الاهتمام كإسقاط، سطح الخسارة، البانديت كمشي على مثلث منفصل).


الترتيب المقترح

الأنشطة 2-13 تبني محولًا عاملًا. تقدم إلى النصف الثاني إذا كنت قد دربت محولات من قبل؛ عُد عندما يثير الفضول.


كل نشاط يقف بمفرده قدر الإمكان. الرياضيات تشير إلى أنشطة سابقة بالاسم (انظر النشاط 5: الانتباه بنقطة-منتج متدرج). إشارات الكود تشير إلى microgpt/microgpt_cuda.cu & microgpt/training_proxy.py في ~/git/uncloseai-cli/.

من أين ستبدأ؟

بالنظر إلى 24 نشاطًا + مرافق الهندسة، سمِّ نشاطًا واحدًا تريد البدء به & سببًا واحدًا: فجوة معرفة سابقة، صلة مهنية، أو فضول بحت. لا يوجد إجابة خاطئة؛ المسار عبر الدورة يخصك.