دنبال کردن دستورالعمل به عنوان سیگنال هماهنگی
Type: Learn
Languages: Python (stdlib, toy three-stage pipeline)
Prerequisites: Phase 10 · 06 (SFT), Phase 10 · 07 (RLHF), Phase 10 · 08 (DPO)
Time: ~45 minutes
اهداف یادگیری
- سه مرحله خط لوله InstructGPT و از دست دادن مورد استفاده در هر یک را نام ببرید.
- توضیح دهید که چرا یک مدل 1.3B با تنظیم دستورالعمل از 175B GPT-3 خام در ارزیابی ترجیحات انسانی بهتر است.
- توضیح دهید که مجازات KL در مرحله 3 از چه چیزی محافظت می کند و چرا حذف آن به رفتار جستجوی حالت منجر می شود.
- مالیات بر تعادل و کاهش PPO-ptx اویانگ و همکارانش را توصیف کنید.
مشکل
مدل های زبان پیش از آموزش متن کامل می کنند. آنها به سوالات پاسخ نمی دهند. از GPT-3 بخواهید "یک تابع پایتون را بنویسید که یک لیست را معکوس می کند" و اغلب شما یک پیام دیگر را دریافت می کنید، زیرا بیشتر توزیع آموزش متن وب است که با متن وب بیشتر ادامه می یابد. مدل کار خود را انجام می دهد کار اشتباه است.
در واقع، این یک روش است که برای بررسی این موضوع، به عنوان یک روش برای بررسی و بررسی، به یک کارگردان و یک کارگزار کمک می کند تا با یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و یک روش کاربری و کاربری و کاربری و کاربری و کاربری و کارگری و کارگری و کارگری است.
مفهوم
مرحله ی اول: تنظیم دقیق تحت نظارت (SFT)
جمع آوری جفت پاسخ فوری که پاسخ آن چیزی است که یک انسان با نیت خوب می نویسد. Ouyang و همکاران از 13k درخواست از برچسب ها و API OpenAI استفاده کردند. مدل پایه را بر اساس این داده با از دست دادن انتروپی متقابل استاندارد تنظیم کنید.
آنچه SFT به شما می دهد: مدل اکنون به جای ادامه دادن به سوالات پاسخ می دهد. آنچه که به شما نمی دهد: هر سیگنال در مورد پاسخ دادن به رتبه بندی ترجیح می دهد وقتی چند مورد قابل قبول است.
مرحله دوم: مدل پاداش (RM)
برای هر پرامپت، نمونه تکمیل K از مدل SFT را انتخاب کنید. یک برچسبگر آنها را رتبه بندی می کند. یک مدل پاداش را آموزش دهید که هر جفت پاسخ پرامپت را به طوری که برای جفت هایی که y_wترجیح داده بودy_l:
L_RM = -log sigmoid(r(x, y_w) - r(x, y_l))این از دست دادن اولویت جفت Bradley-Terry است. RM معمولا از مدل SFT با سر LM جایگزین سر اسکالر آغاز می شود.
مدل های پاداش کوچک هستند: 6B برای 175B InstructGPT کافی بود. آنها همچنین شکننده هستند. بخش 5 مقاله عمدتاً در مورد رفتار هک پاداش است که در مقیاس کوچک ظاهر شد.
مرحله سوم: پی پی او با مجازات KL
هدف را تعریف کنید:
J(pi) = E_{x~D, y~pi(.|x)} [ r(x, y) ] - beta * KL(pi(.|x) || pi_SFT(.|x))با PPO حداکثرش کنين.piبدون آن، بهینه ساز نمونه های متناقض را پیدا می کند رشته هایی که بالاتر از RM هستند زیرا RM آنها را هرگز ندیده است، نه اینکه انسان ها آنها را ترجیح می دهند.
معادل KL betaخیلی کم: هک پاداش. خیلی بالا: هیچ پیشرفتی نسبت به SFT.
مالیات بر تعادل
اویانگ و همکاران این را مالیات بر تعادل می نامند و با PPO-ptx آن را اصلاح می کنند: gradients پیش از آموزش را به هدف RL ترکیب می کنند تا مدل فراموش نکند که چگونه وظایف بعدی را انجام دهد که هرگز برای آن پاداش داده نشده است.
J_ptx(pi) = J(pi) + gamma * E_{x~D_pretrain} [ log pi(x) ]PPO-ptx استاندارد شد. انتروپک، دیپ میند و متا همه از نوع دیگری استفاده می کنند.
نتیجه
یک 1.3B InstructGPT (SFT + RM + PPO-ptx) توسط برچسب ها در مورد 175B پایه GPT-3 در حدود 70% زمان مورد علاقه قرار می گیرد. شکاف در پیام های آزمایش مخفی از ترافیک تولید گسترش می یابد. دو چیز برای خواندن این عدد:
- تعادل محور دیگری از قابلیت است. مدل 175B دارای قابلیت بیشتر بود؛ مدل 1.3B دارای تعادل بیشتر بود؛ برچسب ها یک تعادل را ترجیح می دادند.
- سطح توانایی توسط مدل پایه تعیین شده است. نمیتونی مدل پایه را به دانستن حقایق که هرگز ندیده بود، تبدیل کنی.
چرا این نقطه مرجع مرحله 18 است
هر انتقاد در درس های بعد هک پاداش (درس 2), DPO (درس 3), sycophancy (درس 4), CAI (درس 5), عوامل خواب (درس 7), جعل تعادل (درس 9) مخالف برخی از این خط لوله است. حمله هاي هک پاداش مرحله 2 دپوهر مرحله 2 و 3 رو خراب ميکنه CAI جایگزین برچسب انسانی می شود. سيكوفانسي نشان ميده که برچسب ها يه سيگنال تعصبيه جعل سازي نشان ميدهد که اين سيستم مي تواند به طور کامل در مرحله سوم حرکت کند. شما نمی توانید بدون این که ابتدا به ذهنتان هدایت شود، هیچ یک از این انتقادات را دنبال کنید.
ازش استفاده کن
code/main.pyسه مرحله را در داده های ترجیح بازیابی شبیه سازی می کند. "سیاسه" پایه یک سکه تعصب آمیز نسبت به اقدامات {A،B،C}. مرحله 1 SFT عمل برچسب ها را در 200 پیام تقلید می کند. مرحله 2 با مدل پاداش برادلي-تيري از 500 درجه بندي جفتي مطابقت داره مرحله سوم، به روز رسانی ساده شده PPO را با مجازات KL به سیاست SFT اجرا می کند. شما می توانید شاهد افزایش پاداش، افزایش انحراف KL و حرکت سیاست های باشید و می توانید اصطلاح KL را خاموش کنید تا ببینید هک پاداش در 50 مرحله بروزرسانی ظاهر می شود.
چه چیزی رو باید ببینیم:
- مسیر پاداش با
beta = 0.1vsbeta = 0.0. . - این برنامه در مورد مراحل آموزش و پرورش است.
- توزیع نهایی اعمال در مقایسه با ترجیح برچسب
-باده
این درس به ما کمک می کندoutputs/skill-instructgpt-explainer.mdدر صورت ارائه یک توضیحات لوله RLHF یا یک خلاصه کاغذی، مشخص می شود که کدام از سه مرحله تغییر می شود، در هر مرحله از چه زیان هایی استفاده می شود و آیا یک مجازات KL یا تنظیم کننده معادل وجود دارد.
تمرینات
- فرار کن
code/main.py. تنظیمbeta = 0.0و بعد از 200 مرحله PPO توزیع عمل را گزارش کنید. رفتار جستجوی حالت را در یک پاراگراف توضیح دهید.
- مدل پاداش را تغییر دهید تا برای عمل B +0.5 تعصب داشته باشد (یک خطا پاداش شبیه سازی شده). PPO را با
beta = 0.1. مجازات KL مانع از استفاده از تعصب از سیاست می شود؟betaآیا سوءاستفاده آشکار می شود؟
- Ouyang et al. را بخوانید (arXiv:2203.02155) شکل 1. منحنی اولویت برچسب را با اجرای PPO برای 1, 5, 20, 100 مرحله و اندازه گیری اولویت در برابر مدل SFT تکرار کنید.
- بخش 4.3 مقاله گزارش می دهد که یک 1.3B InstructGPT در حدود 70% زمان از 175B GPT-3 غلبه می کند. چرا نسبت در پیام های تولید مخفی بالاتر از پیام های برچسبگر است؟
- از دست دادن PPO را با DPO (فاز 10 · 08) بر اساس همان داده های ترجیحی جایگزین کنید. انحراف نهایی سیاست (KL به SFT) و پاداش نهایی را مقایسه کنید. کدام روش در برابر پاداش بیشتر حرکت می کند؟
اصطلاحات کلیدی
| Term | What people say | What it actually means |
|---|---|---|
| SFT | "instruction tuning" | Stage 1: cross-entropy fine-tune on prompt-response pairs |
| Reward model | "the RM" | Scalar regressor over (prompt, response) trained with Bradley-Terry on pairwise labels |
| Bradley-Terry | "pairwise preference loss" | -log sigmoid(r_w - r_l); reduces pairwise ranking to binary classification |
| KL penalty | "the regularizer" | beta * KL(pi || pi_SFT) — keeps the RL policy near the SFT anchor |
| PPO-ptx | "PPO with pretraining mix" | Adds a fraction of pre-training log-likelihood to the PPO objective to offset the alignment tax |
| Alignment tax | "the RLHF regression" | Post-RLHF drop on standard benchmarks that RLHF did not target |
| Labeler preference | "the ground truth" | Sample of human rankings; the RM is a statistical proxy for this, not for "human values" |
خواندن بیشتر
- Ouyang et al. — Training language models to follow instructions with human feedback (arXiv:2203.02155) کاغذ InstructGPT، پایه برای هر لوله RLHF که بعد از آن
- Stiennon et al. — Learning to summarize from human feedback (arXiv:2009.01325) پیشگام RLHF برای خلاصه
- Christiano et al. — Deep reinforcement learning from human preferences (arXiv:1706.03741) فرمول RL اولیه مبتنی بر اولویت
- Bai et al. — Training a Helpful and Harmless Assistant with RLHF (arXiv:2204.05862) گسترش HH خط لوله InstructGPT توسط Anthropic
This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.
Browse the complete course catalog or open this lesson on GitHub.