צבירת גרדיאנטים

איך מודלים בעצם לומדים — מירידת גרדיאנט הבסיסית ועד Adam

צבירת גרדיאנטים מדמה אצווה גדולה יותר כשהזיכרון מוגבל. במקום לצעוד אחרי כל מיקרו-אצווה, מוסיפים גרדיאנטים מכמה מיקרו-אצוות, ואז נוקטים צעד אופטימייזר אחד.

גודל האצווה האפקטיבי הוא גודל המיקרו-אצווה כפול מספר צעדי הצבירה. זה מאפשר ל-GPU קטן להתנהג יותר כאילו התאמן על אצווה גדולה יותר.

חבית גשם תופסת את הרעיון. כוס קטנה לא יכולה להשקות את כל הגינה בבת אחת, אז שופכים כמה כוסות לתוך חבית ואז משתמשים בכמות שבחבית. צבירת גרדיאנטים אוספת כמה תרומות גרדיאנט קטנות לפני עדכון אחד. האיור למטה הוא בדיוק התהליך הזה: כל איבר חדש הוא כוס אחת, והעמודות המטפסות הן החבית שמתמלאת לעבר הסכום שלה. צבירת גרדיאנטים היא סכום חלקי של גרדיאנטים שפודים אותו כצעד יחיד.

איפה זה ב־MLצבירת גרדיאנטים נפוצה במודלי שפה גדולים, בתמונות גדולות, ובזיכרון GPU מוגבל. היא מאפשרת לצוותים לבחור גודל אצווה אפקטיבי בלי לדרוש שהאצווה כולה תיכנס לזיכרון בבת אחת.
▶ צבירת גרדיאנטים
← קנה מידה של גודל אצווהאתחול וקנה מידה של האות →