تیم توسعهدهنده Hugging Face اخیراً به یک ناهماهنگی ریاضی در فرآیند آموزش مدلهای زبانی بزرگ توجه ویژهای کرده است. مشکل اصلی در ناسازگاری مقادیر زیان (Loss) هنگام فعال یا غیرفعال بودن گزینه «همپوشانی گراداینت» یا Gradient Accumulation بود. در حالی که تئوری میگوید این تکنیک باید معادل ریاضی با آموزش دستهای کامل باشد، عملیاتهای واقعی تفاوتهای ظریفی را نشان میدادند که دقت مدلهای مبتنی بر هوش مصنوعی را تحت تأثیر قرار میداد.
ریشهیابی مشکل در توابع پیشفرض زیان
تحلیلهای انجام شده توسط مهندسان Hugging Face نشان داد که این ناهماهنگی از نحوهی پیادهسازی تابع زیان پیشفرض (Default Loss Function) در کلاسهای مدلسازی (Modeling Classes) سرچشمه میگیرد. این توابع طوری طراحی شدهاند که زمانی محاسبه میشوند که برچسبها (Labels) و identifiers ورودی به مدل عبور داده شوند. اگرچه این روش برای کاربران عادی بسیار کاربردی است و نیاز به محاسبهی دستی زیان را از بین میبرد، اما در سناریوهای پیچیدهتر محدودیتهایی دارد.
راهکار فنی برای بهبود دقت
راهحل پیشنهادی و پیادهسازی شده، تغییر رویکرد به سمت برگرداندن لوژیتها (Logits) به جای محاسبهی مستقیم زیان در داخل خودِ مدل است. با این رویکرد، کاربران و توسعهدهندگان کنترل کاملی بر نحوهی محاسبهی زیان در خارج از مدل پیدا میکنند. این تغییر، انعطافپذیری را افزایش میدهد و اطمینان میبخشد که فرآیند همپوشانی گراداینت از نظر ریاضی با آموزش دستهای کامل مطابقتدهی مییابد، بدون نیاز به انتظار برای نسخهی بعدی Python.
- رفع ناسازگاری مقادیر زیان بین اجراها با و بدون همپوشانی گراداینت
- افزایش کنترل توسعهدهندگان بر محاسبات زیان از طریق دسترسی به لوژیتها
- بهبود پایداری و دقت فرآیند آموزش در مدلهای زبانی قیودی و ماسکدار
این بهروزرسانی برای همهی کسانی که از کتابخانهی Transformers در پروژههای هوش مصنوعی خود استفاده میکنند، یک قدم penting به سمت آموزش دقیقتر و قابل اعتمادتر محسوب میشود.
پرسشهای پرتکرار
همپوشانی گراداینت (Gradient Accumulation) چیست؟
این تکنیک اجازه میدهد مدل با حافظه کمتر، گامهای بهینهسازی بزرگتری برداشته و حجم دادهی مؤثر (Effective Batch Size) را افزایش دهد.
چرا اصلاح این مسئله برای توسعهدهندگان هوش مصنوعی مهم است؟
چون تضمین میکند که انجام آموزش با همپوشانی گراداینت دقیقاً معادل ریاضی با آموزش دستهای کامل باشد و از بیثباتی در مقادیر زیان جلوگیری کند.