خداحافظ Adam
با معرفی ADOPT بهتره Optimizer مدلهای Deep Learning و LLM رو تغییر بدیم. مشکل اساسی Adam در واقع عدم تضمین convergence در فرآیند آپدیت وزنها بود که در ADOPT حل شده. اما این برتری فقط در تئوری نیست و در عمل هم در اکثریت مسائل از جمله pretraining در GPT-2 بهتر بوده.
ایده اصلی و راه حل برای تضمین همگرایی هم دو مورد هست:
۱_ حذف گرادیان کنونی از تخمین momentum دوم
۲_ نرمالایز کردن گرادیان، قبل از آپدیت momentum
PaperGithubکد:
from adopt import ADOPT
#optimizer = Adam(model.parameters(), lr=1e-3)
optimizer = ADOPT(model.parameters(), lr=1e-3)