درک ردپای حافظه شبکه های عصبی بزرگ برای بهینه سازی استقرار و آموزش ضروری است.این مقاله به تعیین الزامات سخت افزاری و کارایی کمک می کند.این مقاله توضیح می دهد که چگونه حافظه مورد استفاده توسط مدل های شبکه عصبی را محاسبه کنید.

اجزای استفاده از حافظه

کل فوت حافظه شامل چندین جزء است: پارامترهای مدل، گرادیان، حالت های بهینه سازی و بافرهای موقت در طول محاسبه.

محاسبه پارامترهای حافظه مدل

عامل اصلی اندازه پارامترهای مدل است.برای برآورد این، تعداد پارامترهای را با اندازه هر پارامتر ضرب کنید، به طور معمول 4 بایت برای اعداد 32 بیتی شناور.

به عنوان مثال، مدلی با ۱۰۰ میلیون پارامتر، تقریبا ۴۰۰ مگابایت حافظه را برای ذخیره سازی پارامترهای لازم می کند.

ذهنیت های اضافی

در طول آموزش، گرادیان و حالت های بهینه سازی نیز حافظه مصرف می کنند. Gradients معمولاً همان اندازه پارامترهای هستند، دو برابر کردن نیاز حافظه. Optimizer حالت، مانند متغیرهای سرعت حرکت یا یادگیری سازگار، می تواند هزینه بیشتری را اضافه کند.

بافرهای موقت برای فعال سازی و محاسبات متوسط نیز به استفاده از کل حافظه کمک می کنند، به ویژه با اندازه های دسته بزرگ یا معماری پیچیده.

برآورد استفاده از Total Memory

برای برآورد کل ردپای حافظه، خلاصه حافظه برای پارامترهای، گرادیان، حالت های بهینه سازی و محاسبات تنظیم کننده موقت بر اساس معماری مدل خاص و تنظیمات آموزش.

  • پارامترهای مدل
  • Gradients
  • Optimizer state
  • فعال سازی بافر
  • محاسبات متوسط