فشرده‌سازی مغزی واسه مدل‌های زبانی بزرگ؛ راهکاری خفن با شبکه‌های عصبی اسپایکینگ!

Fall Back

خب بچه‌ها، امروز می‌خوام براتون یه موضوع خیلی جذاب رو توضیح بدم که هم به دنیای مدل‌های زبانی بزرگ (LLMs یعنی همون مدل‌هایی مثل ChatGPT که کلی متن رو می‌تونن تحلیل کنن و جواب بدن) ربط داره و هم به شبکه‌های عصبی اسپایکینگ (SNNها، یعنی یه نوع شبکه عصبی الهام گرفته از مغز که کم‌مصرف‌تر و باهوش‌تر عمل می‌کنه).

مشکل چیه اصلاً؟

این مدل‌های زبانی بزرگ حسابی سنگین‌ان! یعنی واسه اجرا شدن و جواب دادن به سوالات، کلی انرژی و زمان لازم دارن. مثلاً نمی‌تونن اونجور راحت روی گوشی یا دستگاه‌های کوچیک اجرا بشن، چون هم حافظه زیادی می‌خوان، هم دیر جواب می‌دن، هم کلی مصرف برق دارن.

شبکه عصبی اسپایکینگ چیه؟

بذارین ساده بگم: مغز ما اطلاعات رو با یه سری سیگنال کوتاه ‌(که بهشون می‌گن اسپایک)، کم مصرف انتقال می‌ده. شبکه‌های عصبی اسپایکینگ یا SNNها دقیقاً همین سبک رو شبیه‌سازی می‌کنن، یعنی فقط وقتی لازم باشه “فعال” می‌شن و خیلی انرژی کمتری مصرف می‌کنن.

راه‌حل مقاله: ترکیب مدل‌های زبانی و اسپایکینگ!

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

چجوری این کار رو کردن؟

محقق‌ها یه روش خیلی نوآورانه به اسم «هرس فضایی-زمانی» (Spatio-Temporal Pruning) پیشنهاد دادن. بریم ببینیم این یعنی چی:

هرس فضایی (Spatial Pruning)

یعنی از بین نرون‌ها و سر Attention Headهای مدل (Attention Head یه بخشیه تو مدل‌‌های زبانی که کمک می‌کنه مدل بفهمه کدوم کلمه‌ها مهم‌ترن)، فقط اون‌هایی رو فعال بذاریم که واقعاً لازمن. بقیه رو غیرفعال کن تا هم حافظه کمتر مصرف شه، هم سرعت بره بالا.

هرس زمانی (Temporal Pruning)

اینجا هم کاری می‌کنیم که تعداد دفعاتی که اطلاعات بین لایه‌ها رد و بدل می‌شه، کمتر شه و مدل با قدم‌های زمانی کمتری جواب بده. خلاصه با تنظیم دینامیک زمان پردازش هر لایه، مدل هم سریع‌تر جواب می‌ده، هم مصرف انرژی رو کاهش می‌ده.

بقیه ترفندهای مقاله چی بودن؟

محقق‌ها علاوه‌بر این دو تا هرس (فضایی و زمانی)، از دو تا ترفند مهم دیگه هم استفاده کردن:

  • کوانتیزیشن شدید (Extreme Quantization): یعنی داده‌ها رو به فرم ساده‌تر و کم‌حجم‌تر تبدیل کردن تا باز مصرف منابع کمتر شه.
  • Knowledge Distillation: یعنی علم یه مدل بزرگ رو استخراج کردن و به یه مدل کوچکتر منتقل کردن (انگار معلم، نکته‌ها رو به شاگردش یاد بده ساده‌تر و خلاصه‌تر).

نتیجه چی شد؟

مدل پیشنهادی‌شون رو روی “SpikingBERT” (یک نسخه اسپایکینگ از BERT که خودش یکی از معروف‌ترین مدل‌های زبانیه) و روی دیتاست معروف GLUE (یه مجموعه تست سنگین برای مدل‌های NLP یعنی پردازش زبان طبیعی) اجرا کردن. نتیجه‌اش این شد که:

  • هم عمل پردازشی و مصرف انرژی خیلی کمتر شد،
  • هم در عین حال دقت مدل همچنان بالا موند.

یعنی چی به درد می‌خوره؟

با این روش جدید، حالا دیگه می‌شه مدل‌های زبانی باحال رو روی دستگاه‌های کم‌قدرت مثل موبایل یا گجت‌های اینترنت اشیا اجرا کرد. مخصوصاً جاهایی که برق قطع و وصلی داره یا شارژ محدوده، این کار واقعاً می‌تونه انقلاب کنه.

خلاصه اگه دوست داری هوش مصنوعیِ متن‌فهم، سریع و کم‌مصرف توی جیب همه‌مون باشه، ایده‌های این مقاله قراره کمک بزرگی بکنه!

منبع: +