قانونهای مقیاس
جواب کوتاه
قانونهای مقیاس میگن خطای یه مدل زبانی، با بزرگتر شدن مدل، دادهی آموزش و محاسبه، به شکلی خیلی منظم و قابل پیشبینی کم میشه. یه پژوهش ۲۰۲۰ دید هر بار که مدل ده برابر بزرگتر بشه، خطا تقریبا به یه نسبت ثابت کم میشه، حدود ۱۶ درصد؛ پس هر بار، بهای ده برابر برای بهبود مشابه. یه پژوهش ۲۰۲۲ هم نشون داد برای بهترین استفاده از محاسبه، مدل و داده باید با هم بزرگ بشن؛ با دو برابر شدن مدل، داده هم دو برابر.
یه الگوی منظم
چرا شرکتها هر سال مدلهای بزرگتر میسازن، با این همه هزینه؟ چون یه الگوی خیلی منظم پیدا کردن: بزرگتر، تقریبا همیشه بهتر؛ و به اندازهای که میشه از قبل حدس زد.
یه پژوهش ۲۰۲۰ مدلهای زبانی زیادی با اندازههای مختلف ساخت و خطاشون رو اندازه گرفت. همون خطای کراسانتروپی که توی درس پیشآموزش دیدیم. بعد روی یه کاغذ مخصوص کشیدشون، که محورش با گامهای دهبرابری جلو میره: ۱۰ میلیون، ۱۰۰ میلیون، ۱ میلیارد و همینطور. نتیجه یه خط تقریبا صاف بود.
خط صاف روی این کاغذ یعنی یه چیز ساده: هر بار که مدل ده برابر بشه، خطا به یه نسبت ثابت کم میشه. به این میگن قانون توانی، و همینها رو «قانونهای مقیاس» صدا میزنن. این الگو نه فقط برای اندازهی مدل، که برای مقدار داده و مقدار محاسبه هم دیده شد؛ بعضیهاش روی بیش از هفت مرتبهی بزرگی، یعنی از یه چیز تا ده میلیون برابرش.
با عدد
اون پژوهش برای اندازهی مدل یه فرمول هم داد. ما فرمولش رو برداشتیم و برای چهار اندازه حساب کردیم:
فرمولش اینه: یه عدد ثابت خیلی بزرگ (۸۸ هزار میلیارد) رو تقسیم بر تعداد پارامترها کن، و جواب رو به توان ۰٫۰۷۶ برسون. برای یه مدل ۸۵ میلیون پارامتری، خطا حدود ۲٫۸۷ میشه. برای یک میلیارد، ۲٫۳۸. برای ۱۷۵ میلیارد، ۱٫۶۰. و برای هزار میلیارد، ۱٫۴۱.
یه نکتهی جالب دیگه هم پیدا کردن: توی یه محدودهی بزرگ، اینکه مدل پهن باشه یا عمیق، یعنی لایههای کم و پهن یا لایههای زیاد و باریک، خیلی فرقی نمیکرد. چیزی که بیشترین اثر رو داشت، تعداد کل پارامترها بود.
بهای بیشتر، بهبود کمتر
حالا ببینیم بزرگتر کردن دقیقا چقدر میخره. با همون توان ۰٫۰۷۶ حساب کردیم:
دو برابر کردن مدل، خطا رو فقط حدود ۵ درصد کم میکنه. ده برابر، حدود ۱۶ درصد. صد برابر، حدود ۳۰ درصد. یعنی برای اینکه خطا یه پلهی دیگه پایین بیاد، باید مدل رو ده برابر کرد، و ده برابر مدل یعنی حدود ده برابر هزینهی آموزش برای همون داده.
برای همین به این میگن «بازده کمشونده». هر پله، گرونتر از پلهی قبله. ولی چون الگو اینقدر منظمه، سازندهها میدونن با چقدر پول، به چه کیفیتی میرسن.
مدل و داده با هم
اگه فقط مدل رو بزرگ کنیم و داده رو ثابت نگه داریم چی؟ پژوهش ۲۰۲۰ گفت اونوقت بازده کم میشه؛ مدل بزرگ با دادهی کم، خوب یاد نمیگیره. ولی سوال اصلی این بود: با یه بودجهی ثابت، چقدرش رو خرج مدل کنیم و چقدرش رو خرج داده؟
پژوهش ۲۰۲۰ میگفت بیشتر بودجه رو خرج مدل بزرگتر کنید؛ با ۸ برابر شدن مدل، داده فقط حدود ۵ برابر لازمه. ولی پژوهش ۲۰۲۲ که توی درس پارامتر دیدیم، به نتیجهی دیگهای رسید: مدل و داده باید با هم و به یه اندازه بزرگ بشن. با هر دو برابر شدن مدل، داده هم دو برابر.
ما برای دو مدل حساب کردیم هر پارامتر چند توکن دیده. اون مدل ۱۷۵ میلیاردی ۲۰۲۰، روی ۳۰۰ میلیارد توکن؛ یعنی حدود ۱٫۷ توکن برای هر پارامتر. مدل ۷۰ میلیاردی ۲۰۲۲، روی ۱٫۴ هزار میلیارد توکن؛ یعنی ۲۰ توکن برای هر پارامتر. مدل کوچیکتر، با دادهی خیلی بیشتر، از مدلهای بزرگتر بهتر شد.
قاعدهی بیست
از عددهای پژوهش ۲۰۲۲ یه قاعدهی سرانگشتی ساده درمیاد که خیلیها به کار میبرن.
مدل ۷۰ میلیاردی اون پژوهش روی ۱٫۴ هزار میلیارد توکن آموزش دید؛ یعنی برای هر پارامتر حدود ۲۰ توکن. اگه بخواید با یه مقدار محاسبهی مشخص بهترین مدل رو بسازید، همین نسبت یه نقطهی شروع خوبه. حالا مدل ۱۷۵ میلیاردی ۲۰۲۰ رو ببینید: روی ۳۰۰ میلیارد توکن آموزش دید، یعنی کمتر از دو توکن برای هر پارامتر؛ خیلی کمتر از بیست. برای همین اون پژوهش گفت مدلهای اون موقع کمداده بودن. البته توی درس «بزرگ» یعنی چه دیدیم که امروز خیلی وقتها عمدا خیلی بیشتر از بیست توکن میدن، تا مدل کوچیکتر و جواب دادنش ارزونتر بشه.
پیشبینی پیش از ساخت
شاید مهمترین فایدهی این قانونها همینه: میشه پیش از خرج کردن هزینهی سنگین، نتیجه رو حدس زد.
پژوهش ۲۰۲۰ دید منحنی آموزش هم از یه الگوی منظم پیروی میکنه؛ اونقدر که از بخش اول آموزش، میشه تقریبا گفت اگه ادامه بدیم، خطا به کجا میرسه. یعنی سازندهها میتونن چند مدل کوچیک و ارزون بسازن، خط رو بکشن، و بعد پیشبینی کنن مدل بزرگ چقدر خوب میشه، قبل از اینکه هفتهها و هزاران پردازنده خرجش کنن.
وقتی متن تازه کم میاد
اگه متن تازه کم باشه، میشه یه متن رو چند بار به مدل داد؟
یه پژوهش ۲۰۲۳ با حدود ۴۰۰ آزمایش، تا ۹۰۰ میلیارد توکن و مدلهای تا ۹ میلیارد پارامتر، دقیقا همین رو سنجید. نتیجه: تا حدود چهار بار تکرار یه متن، خطای مدل تقریبا عین وقتیه که متن تازه دیده؛ ولی هر چی بیشتر تکرار بشه، فایدهی محاسبهی بیشتر کمکم به صفر میرسه. اون پژوهش دو راه دیگه هم امتحان کرد: اضافه کردن کد برنامهنویسی به داده، و شلتر کردن غربالهای کیفیت. اینها مهمن، چون همونطور که توی درس «بزرگ» یعنی چه دیدیم، متن عمومی آدمها ممکنه تا چند سال دیگه کم بیاد.
یه جور دیگهی مقیاس هم این سالها پیدا شده: بهجای بزرگ کردن مدل، به مدل موقع جواب دادن وقت فکر بیشتری بدن؛ درس فکر بیشتر موقع جواب.
چی رو نمیگه
این قانونها خیلی قویان، ولی سه تا چیز رو باید یادمون باشه. اول اینکه دربارهی خطای حدس کلمهی بعدن؛ نه مستقیم دربارهی اینکه مدل برای کار شما چقدر مفیده.
دوم اینکه تا ابد ادامه پیدا نمیکنن. خود پژوهش ۲۰۲۰ گفت هیچ نشونهای از شکستن روند توی اندازههای بزرگ ندیده، ولی بالاخره باید یه جایی، قبل از اینکه خطا به صفر برسه، صاف بشه.
سوم اینکه عددهای دقیقشون به جزئیات بستگی داره؛ همین که دو پژوهش ۲۰۲۰ و ۲۰۲۲ دربارهی نسبت مدل و داده به دو نتیجهی متفاوت رسیدن، نشون میده که این قانونها هنوز دارن دقیقتر میشن.
چند نکته
- بزرگتر، منظم بهتر. مدل، داده و محاسبه.
- هر پله، ده برابر. بهای بیشتر برای بهبود مشابه.
- مدل و داده با هم. مدل بزرگ با دادهی کم، کمآموزش میمونه.
- پیشبینی پیش از ساخت. از مدلهای کوچیک، برای مدل بزرگ.
- خطای کمتر، همهچیز نیست. مفید بودن یه سوال دیگهست.
درس بعد میره سراغ مدلی که از این همه آموزش بیرون میاد: مدل پایه.
جمعبندی. آنچه از این درس با خودتان میبرید.
- خطا با مدل، داده و محاسبه منظم کم میشه.
- هر ده برابر مدل، حدود ۱۶٪ خطای کمتر.
- هر بار، بهای بیشتر برای بهبود مشابه.
- مدل و داده باید با هم بزرگ بشن.
- میشه پیش از ساختن، نتیجه رو حدس زد.
خودتون رو بسنجید
۱۵ پرسش، هر بار تازه از میان ۳۰ پرسش این درس. آخرش فقط کارنامه رو میبینید: چند تا درست، چند تا نادرست.