Flash Inference: Near Linear Time Inference for Long Convolution Sequence Models and Beyond
Oncescu, Purandare, Idreos et al.
While transformers have been at the core of most recent advancements in sequence generative models, their computational cost remains quadratic in sequence length. Several subquadratic architectures have been proposed to address this computational issue. Some of them, including long convolution sequence models (LCSMs), such as Hyena, address this issue at training time but remain quadratic during inference. We propose a method for speeding up LCSMs' exact inference to quasilinear $O(L\log^2L)$ time, identify the key properties that make this possible, and propose a general framework that exploits these. Our approach, inspired by previous work on relaxed polynomial interpolation, is based on a tiling which helps decrease memory movement and share computation. It has the added benefit of allowing for almost complete parallelization across layers of the position-mixing part of the architecture. Empirically, we provide a proof of concept implementation for Hyena, which gets up to $7.8\times$ end-to-end improvement over standard inference by improving $110\times$ within the position-mixing part.
academic
الاستدلال السريع: الاستدلال في الوقت الخطي تقريباً لنماذج التسلسل الملتفة الطويلة وما بعده
تقدم هذه الورقة إطار عمل Flash Inference لمعالجة مشكلة التعقيد الزمني التربيعي في مرحلة الاستدلال لنماذج التسلسل الملتفة الطويلة (LCSMs)، مما يقلل التعقيد الزمني للاستدلال الدقيق إلى O(Llog2L) شبه خطي. تستند الطريقة إلى الاستيفاء متعدد الحدود المرتخي (relaxed polynomial interpolation) وتعتمد على استراتيجية التقسيم (tiling) لتقليل حركة الذاكرة ومشاركة الحسابات. تُظهر التجارب على معمارية Hyena تسريعاً بمعامل 7.8 مرات للاستدلال من طرف إلى طرف، و110 مرات لجزء الخلط الموضعي.
على الرغم من النجاح الهائل للمحولات (Transformers) في نماذج توليد التسلسل، إلا أن التكلفة الحسابية تنمو بشكل تربيعي مع طول التسلسل (O(L2))، مما يشكل اختناقاً في مراحل التدريب والاستدلال. لمعالجة هذه المشكلة، اقترح الباحثون معماريات فرعية تربيعية متعددة، بما في ذلك نماذج الفضاء الحالة (SSMs) ونماذج التسلسل الملتفة الطويلة (LCSMs، مثل Hyena).
كفاءة التدريب محلولة: يمكن لـ LCSMs تحقيق تعقيد O(LlogL) أثناء التدريب عبر FFT
كفاءة الاستدلال غير محلولة: أثناء الاستدلال الانحداري (autoregressive)، نظراً لأن تسلسل الإدخال يُولّد تدريجياً، لا يمكن استخدام FFT مباشرة، مما يؤدي إلى تدهور التعقيد إلى O(L2)
متطلبات السياق الطويل: مع معالجة نماذج اللغة الكبيرة لسياقات أطول وأطول، تصبح مشكلة كفاءة الاستدلال أكثر حدة
الطرق التقريبية (Massaroli et al. 2024): تُسقط مرشحات الالتفاف إلى نماذج فضاء حالة خطية ثابتة منخفضة الأبعاد، لكن هذا مجرد تقريب ويتطلب حسابات تقطير مسبقة مكلفة، ولا يدعم المرشحات المعتمدة على البيانات
المنظور العودي: قد يكون فعالاً لنماذج فضاء الحالة منخفضة الأبعاد، لكنه لا يزال غير فعال لنماذج فضاء الحالة عالية الأبعاد (الأبعاد قريبة من طول التسلسل)
طرق استخدام البنية: تتطلب أن يكون للمرشح بنية معينة (مثل SSM خطي ثابت منخفض الرتبة)، مما يحد من قدرة التعبير عن النموذج
أول خوارزمية استدلال دقيقة شبه خطية: تقديم خوارزمية استدلال دقيقة بتعقيد زمني O(Llog2L) لـ LCSMs، مما يحقق محاكاة دقيقة مقابل الطرق التقريبية السابقة
تحديد الإطار العام: تحديد الخصائص المعمارية الرئيسية التي تجعل الاستدلال السريع ممكناً (أساس المساهمة، استقلالية الاستعلام)، وتقديم إطار عمل Flash Inference قابل للتطبيق على فئة أوسع من المعماريات
التوازي عبر الطبقات: الاستفادة من استراتيجية التقسيم لتحقيق حساب متوازي تقريباً كامل لجزء الخلط الموضعي عبر الطبقات
تحسين الذاكرة: تقليل حركة البيانات بشكل كبير من Ω(L2) إلى O(LlogL) من خلال طريقة التقسيم، مع توفير 2 مرات من تخزين التفعيلات للمرشحات المستقلة عن البيانات
التحقق التجريبي: تحقيق تسريع من طرف إلى طرف بمعامل 7.8 مرات على معمارية Hyena، وتسريع بمعامل 110 مرات لجزء الالتفاف
توليد التسلسل الانحداري: بالنظر إلى تسلسل المطالبة x1,…,xp، يجب على النموذج توليد الرموز اللاحقة واحداً تلو الآخر. في كل موضع i، يحسب النموذج التفعيلات ai[1,M] عبر جميع الطبقات، وأخيراً يأخذ عينة من aiM لتوليد xi+1.
اختناق الحساب الأساسي: لكل طبقة ℓ وكل بُعد، يجب حساب:
zt=∑i=1tyi⋅ρt−i
حيث y هو تسلسل الإدخال و ρ هو مرشح التفاف بطول L. التنفيذ الساذج يتطلب وقتاً Ω(L2).
for i = 1 to L-1:
U ← أكبر قوة للعدد 2 تقسم i
z_i += y_i * ρ_0 # الخلايا الحمراء: الاعتماد المباشر
z[i+1:i+U] += τ(y, [i-U+1, i], ρ, [i+1, i+U]) # الكتل الرمادية: حساب متحمس
return z_i
unlock y_{i+1}
الخصائص الرئيسية:
في التكرار i، حساب كتلة رمادية بطول الحافة U (U هي أكبر قوة للعدد 2 تقسم i)
الخلايا الحمراء تتعامل مع الاعتماد المباشر للموضع الحالي
الكتل الرمادية تحسب مسبقاً جزء من المساهمات المستقبلية
for i = 1 to L-1:
U ← أكبر قوة للعدد 2 تقسم i
for ℓ = 1 to M: # التكرار عبر الطبقات
b^ℓ_i += a^{ℓ-1}_i ⊙ ρ^ℓ_0 # الخلايا الحمراء
a^ℓ_i = block^ℓ(b^ℓ_i)
b^ℓ[i+1:i+U] += τ(a^{ℓ-1}, [i-U+1, i], ρ^ℓ, [i+1, i+U]) # الكتل الرمادية
a^0_{i+1} = sampler(a^M_i)
van der Hoeven, J. (1997). Lazy multiplication of formal power series. ISSAC. الأساس النظري
Poli, M. et al. (2023). Hyena hierarchy: Towards larger convolutional language models. الكائن التطبيقي الرئيسي
Massaroli, S. et al. (2024). Laughing hyena distillery: Extracting compact recurrences from convolutions. NeurIPS. مقارنة الطريقة التقريبية
Gu, A. & Dao, T. (2023). Mamba: Linear-time sequence modeling with selective state spaces. الأعمال ذات الصلة بـ SSM
Fu, D. Y. et al. (2023). FlashFFTConv: Efficient convolutions for long sequences with tensor cores. أساس التنفيذ
Agarwal, N. et al. (2024). FutureFill: Fast generation from convolutional sequence models. الأعمال المتوازية
التقييم الإجمالي: هذه ورقة ممتازة تجمع بين النظرية والممارسة بإحكام. من الناحية النظرية، توفر أول خوارزمية استدلال دقيقة شبه خطية لـ LCSMs وتجرد إطار عمل عام؛ من الناحية العملية، تحقق تسريعاً كبيراً من خلال تحسينات على مستوى النظام. القيود الرئيسية هي أن LCSMs نفسها ليست منتشرة مثل Transformer في التطبيقات الفعلية، والتحقق التجريبي من المرشحات المعتمدة على البيانات غير كافٍ. يوفر هذا العمل منظوراً جديداً لتحسين استدلال نماذج التسلسل، خاصة بالنسبة لتصميم المعمارية المستقبلية. موصى به للباحثين المهتمين بكفاءة النموذج والنمذجة التسلسلية وتحسينات النظام.