انتشار مقاله «مدلهای زبانی، یادگیرندگان چندنمونهای هستند» (Language Models are Few-Shot Learners) توسط OpenAI در مه 2020، صرفاً معرفی یک مدل زبانی بزرگتر نبود. این رویداد، رویکردی کاملاً متفاوت برای آموزش ماشینها به منظور انجام وظایف زبانی ارائه کرد. در این روش بینظیر، یک مدل ازپیشآموزشدیده میتوانست در لحظه خود را با چالشهای جدید تطبیق دهد و تنها با استفاده از چند دستورالعمل و نمونه نوشتهشده در یک پرامپت متنی، وظایف پیچیده را انجام دهد. این قابلیت که با عنوان «یادگیری درونمتنی» (In-context learning) شناخته میشود، به همراه انواع بدوننمونه (Zero-shot) و چندنمونهای (Few-shot) خود، هم چشمانداز پژوهشی و هم شیوههای صنعتی را به طور کامل دگرگون کرد.
دوران پیش از GPT-3؛ تسلط کامل تنظیم دقیق (Fine-Tuning)
برای درک عظمت دستاورد GPT-3، ابتدا باید پارادایمی را بررسی کنیم که این مدل آن را برهم زد. مدلهای پیشین مانند GPT-2 نشان داده بودند که مدلهای زبانی میتوانند بدون آموزش دیدن برای یک وظیفه خاص، کارهایی مانند ترجمه، خلاصهسازی و درک مطلب را با عملکردی متوسط انجام دهند. با این حال، این توانایی بسیار محدود بود. این مدلها اغلب برای رسیدن به رقابت با سامانههای تخصصی به فرایند تنظیم دقیق نیاز داشتند و عملکرد بدوننمونه آنها فاصله زیادی با مدلهای هدفمندی داشت که با دادههای برچسبخورده آموزش دیده بودند.
در بیشتر کاربردهای عملی، تنظیم دقیق همچنان پادشاهی میکرد. روند کار برای تمام متخصصان آشنا بود: انتخاب یک مدل پایه، گردآوری هزاران نمونه برچسبخورده برای یک وظیفه خاص، و صرف زمان پردازشی بالایی برای سازگار کردن وزنهای مدل با دامنه جدید. اگرچه این روش در بسیاری از معیارهای پردازش زبان طبیعی (NLP) موفق بود، اما برای هر وظیفه جدید به دادهها و توان پردازشی عظیمی نیاز داشت. GPT-3 این معادله دشوار را صرفاً با مقیاس بینظیر خود تغییر داد.
مقیاس به مثابه کاتالیزور؛ قدرت 175 میلیارد پارامتر
ویژگی بارز GPT-3 در اندازه آن نهفته است. این مدل با 175 میلیارد پارامتر، بیش از 100 برابر بزرگتر از GPT-2 و 10 برابر بزرگتر از هر مدل غیرتنک (Non-sparse) پیش از خود بود. هر پارامتر در واقع یک عدد ممیز شناور است که مدل در جریان آموزش برای به حداقل رساندن خطای پیشبینی آن را تنظیم میکند. این پارامترها در کنار یکدیگر، دانش مدل را درباره دستور زبان، حقایق، الگوهای استدلال و ارتباطات مفهومی کدگذاری میکنند.
توسعه معماری مدل در تمام ابعاد بسیار چشمگیر بود:
- 96 لایه ترنسفورمر: که پیچیدگی تبدیلهای اعمالشده پیش از تولید خروجی نهایی را کنترل میکنند.
- بُعد پنهان 12,288: که غنای بازنمایی هر توکن را تعیین میکند (16 برابر حالت پنهان 768 بُعدی در GPT-1). این ویژگی امکان تمایزگذاری بسیار دقیقتری را فراهم میکند؛ به عنوان مثال، واژه «bank» بسته به اینکه در بافتی درباره رودخانه، اقتصاد یا هوانوردی باشد، به شکل متفاوتی پردازش میشود.
- 96 سر توجه (Attention Heads): که به مدل اجازه میدهد هنگام بررسی روابط میان توکنها از زوایای دید گوناگونی استفاده کند.
- طول بافت 2,048 توکنی: یعنی مدل هنگام پیشبینی میتواند تقریباً 1,500 واژه از متن قبلی را در حافظه کوتاهمدت خود لحاظ کند.
پرسش اساسی سازندگان این بود که آیا صرفاً افزایش پارامترها در کنار داده و توان پردازشی متناسب، قابلیتهای جدیدی خلق میکند یا خیر. پاسخ مثبت بود و نتیجه آن، توانایی شگفتانگیز یادگیری چندنمونهای بود.
یادگیری درونمتنی (In-Context Learning) چیست؟
یادگیری درونمتنی، هسته اصلی تواناییهای چندنمونهای GPT-3 محسوب میشود. در این روش، به جای تغییر وزنهای مدل از طریق الگوریتمهای گرادیان کاهشی، نمونههای یک وظیفه مستقیماً درون پرامپت متنی به مدل داده میشود. مدل کل پرامپت را به عنوان یک توالی واحد پردازش کرده و با تکیه بر مکانیزم توجه، الگوهای موجود در نمونهها را شناسایی و آنها را روی دادههای جدید پیاده میکند.
نکته بسیار مهم در این فرایند این است: هیچ تغییری در وزنهای شبکه اعمال نمیشود. خبری از بهروزرسانی گرادیان، اجرای آموزشی مجدد یا تهیه مجموعهدادههای عظیم نیست. مدل صرفاً از طریق تعامل متنی با کاربر، ماهیت وظیفه را درک میکند. شما کافی است مشکل را شرح دهید و چند نمونه به او نشان دهید تا بلافاصله الگو را دریابد.
درک تفاوت رویکردهای Zero-Shot، One-Shot و Few-Shot
مقاله معرفی GPT-3 سه رویکرد اساسی را برای تعامل با مدل معرفی کرد که هر کدام کاربردهای خاص خود را دارند:
1. یادگیری بدوننمونه (Zero-Shot)
در این حالت، مدل هیچ نمونهای از خروجی مورد انتظار نمیبیند. شما صرفاً یک دستور متنی (Prompt) به مدل میدهید. به عنوان مثال پرامپت میتواند این باشد: «متن انگلیسی زیر را به فرانسوی ترجمه کن:». سپس متن مورد نظر را درج میکنید. مدل صرفاً با تکیه بر دانشی که در طول پیشآموزش به دست آورده، وظیفه را انجام میدهد.
2. یادگیری یکنمونهای (One-Shot)
در این روش، شما دقیقا یک نمونه از ورودی و خروجی مطلوب را در قالب پرامپت به مدل ارائه میدهید تا الگو را کاملاً درک کند و سپس درخواست خود را مطرح کنید.
3. یادگیری چندنمونهای (Few-Shot)
این محبوبترین و کارآمدترین روش است که در آن، چندین نمونه (معمولاً بین 3 تا 5 نمونه) از یک وظیفه خاص به مدل نشان داده میشود. مدل با دیدن این الگوهای مکرر، دقیقا متوجه منظور کاربر شده و خروجیهایی با دقت بالا و متناسب با فرمت خواستهشده تولید میکند. این قابلیت به توسعهدهندگان اجازه داد تا بدون نیاز به مهارتهای پیچیده برنامهنویسی، مدل را برای کارهای تخصصی تنظیم کنند.
امروزه، مکانیزم یادگیری درونمتنی به استخوانخاردی برای مدلهای زبانی بزرگ (LLMs) تبدیل شده است. این فناوری مسیر را برای توسعه اینترفیسهای مکالمهای پیچیده هموار کرد و نشان داد که گاهی اوقات در دنیای هوش مصنوعی، بزرگتر بودن، نهتنها به معنای سریعتر بودن، بلکه به معنای هوشمندتر عمل کردن و درک سریعترِ الگوهاست.





