LoRA (تطبیق با رتبه پایین) یک تکنیک تنظیم دقیق پارامتری کارآمد است که برای تطبیق مدلهای زبان بزرگ (LLM) برای کارهای خاص و در عین حال کاهش قابل توجهی نیازهای محاسباتی و حافظه طراحی شده است. LoRA که توسط تحقیقات مایکروسافت معرفی شده است، از تجزیه ماتریس با رتبه پایین برای دستیابی به آموزش کارآمد و انطباق ویژه کار بدون به خطر انداختن عملکرد مدل استفاده میکند.
مطالعه Cramming توسط Jonas Geiping و Tom Goldstein امکان آموزش یک مدل زبان مبتنی بر ترانسفورمر را از ابتدا بر روی یک GPU تک مصرف کننده در عرض 24 ساعت بررسی میکند. این تحقیق روند افزایش مقیاس منابع محاسباتی را به چالش میکشد و به جای آن میپرسد که تا کجا میتوانیم با حداقل سخت افزار پیش برویم. در زیر مروری بر مشارکت، روششناسی و مفاهیم مقاله است.
FlashAttention یک الگوریتم نوآورانه است که برای رسیدگی به تنگناهای محاسباتی و حافظه مکانیزم توجه در مدلهای ترانسفورمر، به ویژه برای دنبالههای طولانی طراحی شده است. با بهینهسازی الگوهای دسترسی به حافظه در GPUها، سرعت و کارایی حافظه قابل توجهی را به دست میآورد و آن را به ابزاری اساسی برای مقیاسبندی ترانسفورمرها به طولهای زمینه طولانیتر تبدیل میکند.
شکل 1: سمت چپ: FlashAttention از کاشی کاری برای جلوگیری از ماتریس توجه بزرگ × × (جعبه نقطهدار) در GPU HBM (نسبتاً) کند استفاده میکند. در حلقه بیرونی (فلشهای قرمز)، FlashAttention از میان بلوکهای ماتریسهای K و V حلقه میزند و آنها را برای SRAM سریع روی تراشه بارگذاری میکند. در هر بلوک، FlashAttention روی بلوکهای ماتریس Q (فلشهای آبی) حلقه میزند، آنها را در SRAM بارگذاری میکند و خروجی محاسبه توجه را به HBM باز مینویسد. راست: افزایش سرعت اجرای PyTorch از توجه در GPT-2. FlashAttention ماتریس توجه بزرگ