Sytuacja w której model najpierw przeuczył się (dostosował do danych treningowych) mając słabe wyniki na danych testowych. Trenowany tak długo model w pewnym momencie nagle zaczyna generalizować, tzn. drastycznie poprawiają się wyniki na danych testowych. To zjawisko to grokking.
Interesujące jest to, że w przypadku toy-examples pokazanych przez autorów Do Machine Learning Models Memorize or Generalize? metryka na zbiorze testowym nie malała w czasie, tylko bardzo powoli rosła. To odróżnia grokking od typowego przeuczenia.
Występowanie
Grokking najlepiej przeanalizowano na malutkich modelach, ale są publikacje, które pokazują grokking na większych modelach i na różnych typach problemów. W przypadku toy-example rozważanym w źródle grokking jest spowodowany weight-decay (L2) regularyzacją. Zbyt mała ub zbyt duża regularyzacja powoduje, że grokking nie występuje (tzn. model nigdy lub od razu generalizuje).
Przyczyny
Autorzy Do Machine Learning Models Memorize or Generalize? pokazują, że grokking może wystąpić w sytuacji gdy jest regularyzacja L2 i początkowo funkcja straty faworyzuje element odpowiedzialny za minimalizację błędu. Z czasem element funkcji straty odpowiedzialny za regularyzację jest optymalizowany, co powoduje znalezienie sparse wag, które minimalizują L2 ale też minimalizują błąd. Wtedy model zaczyna generalizować. W 2 przykładach podanych przez autorów optymalnymi wagami były te “sparse”, tzn. większość wag była zerami.