TGViewer
NLP stuff NLP stuff @nlp_stuff · 3.86K subscribers
Post #208 2.32K
الگوریتم LookAhead: چند گام رو به جلو، یک گام به عقب!

چند تا از اعضای آزمایشگاه وکتور دانشگاه تورنتو در کنفرانس نیپس سال ۲۰۱۹، الگوریتم بهینه‌سازی جالبی به نام LookAhead (LA) برای آموزش شبکه‌های عمیق ارائه کردند.
مقاله مال دو سال پیشه، اما چون ما جدیدا خوندیمش، گفتیم با شما هم به اشتراک بگذاریم.

به صورت معمول الگوریتم‌هایی مثل SGD و اینا با نرخ یادگیری بالا، حول مینیمم اینور اونور می‌پرند. اگر نرخ رو هم پایین بذاریم، کلی طول می‌کشه تا یاد بگیرند یعنی خیلی به هایپرپارامترهایی مثل نرخ یادگیری‌شون وابسته هستند.
این الگوریتم LA این مشکل رو برطرف می‌کنه و نشون میده که به هایپر پارامترهاش وابسته نیست و بهتر از الگوریتم‌های قبلی هم کار می‌کنه.

الگوریتم LookAhead از یه دونه الگوریتم بهینه‌سازی داخلی مثل آدام و SGD و … استفاده می‌کنه و دو جور وزن (متغیر) داره؛ وزن‌های سریع (theta) و وزن‌های کند (phi). وزن‌های سریع رو الگوریتم داخلیه به‌روز می‌کنه و وزن‌های کند رو خود الگوریتم LookAhead.

همونطور که در شبه‌کد در تصویر ضمیمه شده قابل مشاهده‌ست، این الگوریتم اینجوری کاری می‌کنه که همون اول وزن‌های کند رو میریزه توی وزن‌های سریع بعد می‌گذاره که اون الگوریتم داخلی، k گام در حلقه‌ی داخلی پیش بره و وزن‌های سریع شبکه رو به‌روز کنه و مثلا برسه به theta(t,k). بعد بین وزن‌های کند دور قبلی الگوریتم (phi(t-1)) و این وزن‌های سریع جدید (theta(t,k)) یه درون‌یابی ساده می‌کنه و یه نقطه اون وسط پیدا می‌کنه و phi(t) رو بدست میار و درست مثل دفعه قبل اینو اول حلقه بیرونی توی (theta(t+1,0) قراره بریزه تا دفعه بعدی، الگوریتم حلقه داخلی با مقادیر اولیه همین وزن‌های کند کارشون رو شروع کنند. اینکه کجای خط باشه، با یه هایپر پارامتر به نام آلفا مشخص میشه.
پس این الگوریتم دو تا ابرپارامتر اضافی با نام k و آلفا داره.
شکل سمت چپ تصویر اول ضمیمه شده (همون نمودار سبزه) تفاوت مسیر حرکت یه الگوریتم مثل SGD و LookAhead رو معلوم می‌کنه. k گام الگوریتم داخلی میره، بعد یه درون یابی بین نقطه اولیه و آخری زده میشه و نقطه شروع جدید پیدا میشه و باز Kگام الگوریتم داخلی و …

اگر با این توضیحات ما گیج شدید، یه دور شبه‌کد رو بخونید و اون شکل بغلش رو خوب نگاه کنید و بعد دوباره بیاید سراغ توضیحات. اون ویدیوهایی که لینکشو دادیم هم میتونید ببینید که شیرفهم شید.

حالا قشنگی ماجرا کجاست؟ همونطور که گفتیم این الگوریتم مشکل وابستگی زیاد به هاپیرپارامترها رو حل می‌کنه و به الگوریتم داخلی میگه که تو وحشیانه پیش برو، من کنترلت می‌کنم. مثل اینکه یه عده از کوه دارند میان پایین، یک نفر بالا می‌ایسته و به بقیه میگه این سر طناب دست من، شما سریع و خشن برید پایین، بعد یه جایی اون وسط مسطا که بهتره همو می‌بینیم. اون عکس دوم ضمیمه شده (ورق بزنید) هم نشون میده که الگوریتم داخلی (آدام و SGD و اینا) به تنهایی اگر اجرا می‌شدند هی می‌خواستند گند بزنند ولی الگوریتم LookAhead هی نمی‌گذاره دقت بیفته.

در مقاله می‌تونید نتایج آموزش مدل‌ها با این الگوریتم رو، روی تسک‌های مختلف (دسته‌بندی عکس‌ها، مدل زبانی و ترجمه ماشینی) ببنید که همواره بهتر و با همگرایی سریع‌تر عمل کرده.


لینک مقاله:
https://arxiv.org/abs/1907.08610

لینک ویدیوی ارائه یکی از نویسندگان مقاله:
https://www.youtube.com/watch?v=TxGxiDK0Ccc

لینک ویدیوی توضیح ایده به صورت خلاصه و تصویری و زیبا:
https://www.youtube.com/watch?v=I5sLWKKcEyI

پ.ن. کانال رو بقیه معرفی کنید که دور هم صفا کنیم! :)

#read
#paper

@nlp_stuff
Telegram stuff
More from @nlp_stuff
  1. Jan 6, 2026اندر حکایات بازی با کلمات: AI Engineering vs ML Engineering/Data Scientist این روزها عناوی…
  2. Mar 3, 2025مفهوم Agent چیست و چگونه کار می‌کنند؟ خانم چیپ هوین بلاگ پست مفصلی راجع به Agent (به قول ر…
  3. Feb 28, 2025خلاصه‌تر فکر کن از اونجایی که در مسائل استدلالی (reasoning) ، مدل برای رسیدن به جواب نهایی…
  4. Feb 23, 2025چه قدر تا بی‌کارشدن بک‌اندی‌ها فاصله داریم؟ عمده استفاده برنامه‌نویس‌ها از LLM‌ها در سطح پ…
  5. Feb 20, 2025به سوی سیستم‌۲ پیشرفت‌های هوش مصنوعی در دهه ۲۰۱۰، مدیون آموزش مدل‌های بزرگ دیپ لرنینگی روی…
  6. Feb 8, 2025مدل‌های استدلالی (reasoning) چیست و چگونه ساخته می‌شوند؟ حتما این روزها بارها مدل‌های استد…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →