راز MoE؛ ۷۴۴ میلیارد پارامتر، ۴۰ میلیارد فعال
خلاصهٔ کاملتر
نویسنده اول یادآوری میکنه مدلهای «چگال» مثل نسخههای اولیهٔ GPT-3 یا Llama 2 برای هر توکن تمام پارامترها رو فعال میکنن؛ تمیز و سادهست ولی پرخرج. یه مدل چگال ۷۰ میلیاردی با دقت FP16 حدود ۱۴۰ گیگابایت حافظهٔ GPU میخواد و دو برابر کردن پارامترها یعنی تقریباً دو برابر شدن هزینهٔ هر توکن. ایدهٔ پشت MoE هم سادهست: هر نورون لازم نیست هر ورودی رو پردازش کنه.
مکانیزم MoE داخل لایههای feed-forward میشینه و برای هر توکن چهار قدم داره. اول یه شبکهٔ کوچیک به اسم مسیریاب (که معمولاً فقط یه لایهٔ خطیه) به حالت پنهان توکن نگاه میکنه و روی همهٔ متخصصها توزیع احتمال میده. بعد K متخصص برتر انتخاب میشن که تو بیشتر مدلهای امروزی K برابر ۲ه. خروجیها با همون وزنهای مسیریاب ترکیب میشن و به لایهٔ بعد میرن.
یه خطر شناختهشده تو آموزش MoE «فروپاشی متخصص»ه: مسیریاب یاد میگیره همیشه سراغ یکی دو متخصص ثابت بره و بقیه بیکار بمونن. برای همین یه تابع زیان کمکی برای توازن بار اضافه میشه که استفادهٔ نامتوازن رو جریمه میکنه. به گفتهٔ نویسنده، GLM 5.2 (ساختهٔ THUDM دانشگاه Tsinghua) هم از نسخههایی از همین تکنیک استفاده میکنه.
تو GLM 5.2 نسبت پارامتر کل به فعال حدود ۱۸ به ۱ه. پارامترهای مشترک — امبدینگ، مکانیزم توجه، نرمالسازی لایه و خود مسیریاب — همیشه فعالن، و روی اونها فقط پارامترهای متخصصهای انتخابشده اضافه میشه تا به عدد ۴۰ میلیارد برسیم. نویسنده میگه عدد ۷۴۴ میلیارد بیربط نیست: ظرفیت دانش مدل رو نشون میده، چون تخصصهای مختلف مثل کد، ریاضی و چندزبانگی بین متخصصها پخش شدن.
نکتهٔ عملی مهم اینه که این دو عدد دو چیز متفاوت رو تعیین میکنن: حافظه با پارامتر کل بالا میره و محاسبه با پارامتر فعال. ابزارهای محلی مثل Ollama و llama.cpp همچنان باید کل وزنها رو لود کنن تا مسیریاب بتونه انتخاب کنه، ولی با کوانتیزیشن INT4 نیاز حافظه از حدود ۱۴۸۸ گیگابایت به حدود ۳۷۲ گیگابایت میاد و روی سیستمهای رمبالا با آفلود CPU قابل اجرا میشه.
مقاله محدودیتها رو هم میگه: توان عبوری تو بچهای بزرگ پایینتره چون توکنهای یه بچ به متخصصهای متفاوتی مسیر میخورن، آموزشش پیچیدهتره، و مهمتر از همه مسیریاب به افت دقت حساسه — کوانتیزیشن تهاجمی میتونه انتخاب متخصص رو خراب کنه. به همین خاطر نویسنده توصیه میکنه قبل از تعهد به یه نسخهٔ فشرده، کیفیت رو روی تسک خودت بنچمارک کنی.
نکات کلیدی:
- MoE لایهٔ feed-forward چگال رو با چند متخصص و یه مسیریاب سبک جایگزین میکنه.
- در بیشتر مدلهای امروزی فقط ۲ متخصص برای هر توکن فعال میشن.
- GLM 5.2: حدود ۷۴۴ میلیارد پارامتر کل و حدود ۴۰ میلیارد فعال، یعنی نسبت تقریبی ۱۸ به ۱.
- حافظه تابع پارامتر کله و سرعت و محاسبه تابع پارامتر فعال.
- تابع زیان توازن بار جلوی فروپاشی متخصص رو میگیره.
- مسیریاب به کوانتیزیشن تهاجمی حساسه و کیفیت انتخاب متخصص افت میکنه.




