معمولا رسم بر این بوده که هر وقت مدل به حالت overfit میرسه آموزشدادنش متوقف بشه و دیگه امیدی به اصلاح مدل نمیره. اما مقالهای اومده و نشون داده که در صورت ادامه به آموزش مدل، خیلی خیلی گام بعدتر از اورفیت هم همچنان میتونه اتفاق جالبی که به عنوان grokking نامگذاری شده، بیافته. توضیح این مقاله رو میشه در دو بخش تسک تعریف شده و پدیدهی رخداده در فرآیند آموزش پی گرفت.
در قسمت تعریف تسک، این مقاله یک تسک تقریبا نمادی (symbolic) رو درست کردهاند. به این صورت که تابعی دلخواه از دو سیمبل ورودی که هر کدوم میتونن مقادیر نمادی a و b و .. را بپذیرند را در نظر گرفته اند. مقدار این تابع برای تمامی مقادیر ممکن ورودی محاسبه میشه (جدول پیوست شده رو میتونید نگاه کنید) و تعدادی از خانههای این جدول خالی میشوند و باقی به عنوان داده آموزشی به مدل داده میشود. حال مدل بایستی با آموزش روی دادههای داده شده، جاهای خالی جدول را پر کند.
اما نکته اصلی مقاله، در فرآیند آموزش آن قرار دارد. پس از تعدادی گام آموزش، مدل بر روی دادگان آموزشی اورفیت میکند در حالی که دقت آن بر روی دادههای validation تقریبا صفر است. اما با ادامه دادن آموزش حتی پس از اورفیت، پس از تعداد خیلی خیلی زیادی گام آموزشی، در نهایت مدل به یکباره و سرعت از اورفیت خارج میشود و دقت آن بر روی دادههای validation به ۹۹ درصد میرسد که این پدیده grokking نامگذاری شده است.
نکته جالب این ماجرا در این جاست که داشتن داده کم ولی ادامه دادن آموزش پس از اورفیت میتواند منجر به مدلی بهتر از مدلی با تعداد داده بیشتر شود. البته که مقیاس تعداد گامهای لازم بسیار زیاد است و مساله از نظر عملی قابل اشکال است.