انواع متدهای کوانتیزه کردن در مدلهایبزرگ زبانی
🤖فرض کنید یک مدل زبانی مثل یک کتابخانهٔ عظیم است که میلیونها عدد (وزن ها) در آن ذخیره شدهاند. هدف کوانتیزهسازی این است که این کتابخانه را کوچکتر کنیم تا سریعتر و ارزانتر کار کند.
تفاوت این ۵ روش در این است که چگونه هنگام کوچک کردن کتابخانه، مراقب اطلاعات مهم باشند.
۱. RTN: «همه چیز را گرد کن و برو!»
مثل دانشجویی است که باید یک کتاب ۱۰۰۰ صفحهای را خلاصه کند و فقط میگوید:
«هر عدد را به نزدیکترین عدد ساده تبدیل میکنم، تمام!»
مثلاً:
8.73 → 9
2.14 → 2
هیچ فکر دیگری نمیکند.
+مزیت:
فوقالعاده سریع
-عیب:
ممکن است اطلاعات مهم از بین برود.
۲. GPTQ: «اگر خراب شد، تعمیرش کن"
کمی باهوشتر است.
میگوید:
«یک قسمت را کوچک میکنم، بعد نگاه میکنم چه خطایی ایجاد شده و سعی میکنم بقیهٔ قسمتها را طوری تنظیم کنم که آن خطا جبران شود.»
مثل نجاری که بعد از بریدن یک قطعه چوب، بقیه قطعات را تنظیم میکند تا میز کج نشود.
+مزیت:
کیفیت خیلی بهتر از RTN
-عیب:
زمان بیشتری میبرد.
۳. AWQ: «اول چیزهای مهم را پیدا کن»
قبل از شروع کار میپرسد:
«کدام قسمتهای مدل واقعاً حیاتی هستند؟»
سپس همان بخشهای مهم را محافظت میکند.
مثل وقتی که میخواهی اسبابکشی کنی:
کتابهای معمولی را داخل کارتن عادی میگذاری.
اما لپتاپ و مدارک مهم را داخل جعبهٔ محافظ قرار میدهی.
+مزیت:
در مدلهای ۴ بیتی معمولاً کیفیت بسیار خوبی دارد.
۴. LLM.int8(): «بخشهای حساس را دست نزن»
این روش میگوید:
«۹۹٪ اطلاعات را فشرده میکنم، اما چند قسمت حساس را دستنخورده نگه میدارم.»
مثل فشرده کردن یک عکس:
بیشتر تصویر را با کیفیت پایین ذخیره میکنی.
اما چهرهٔ افراد را با کیفیت بالا نگه میداری.
+مزیت:
افت کیفیت بسیار کم
-عیب:
صرفهجویی حافظه کمتر از روشهای ۴ بیتی.
۵. QAT: «از اول برای فشرده شدن آموزش بده»
اصلاً منتظر پایان آموزش نمیماند.به مدل میگوید:
«قرار است بعداً فشرده شوی، از همین حالا خودت را آماده کن.»
مثل ورزشکاری که میداند قرار است در ارتفاعات مسابقه بدهد و از ماهها قبل در ارتفاع تمرین میکند.
در نتیجه وقتی زمان کوانتیزهسازی میرسد، شوکه نمیشود چون قبلاً به شرایط عادت کرده است.
+مزیت:
معمولاً بهترین کیفیت
-عیب:
نیاز به آموزش یا فاینتیون مجدد دارد و گران است.
خلاصه مطالب بالا:
RTN: «فقط گرد کن.»
GPTQ: «گرد کن و بعد خطا را جبران کن.»
AWQ: «اول بخشهای مهم را محافظت کن.»
LLM.int8(): «بخشهای حساس را اصلاً فشرده نکن.»
QAT: «مدل را از ابتدا برای فشرده شدن تربیت کن.»
⚠️مقایسه :
RTN < GPTQ ≈ AWQ < QAT
و ()LLM.int8 کمی خارج از این خط قرار میگیرد، چون بیشتر روی حفظ کیفیت تمرکز دارد تا رسیدن به کوچکترین اندازهٔ ممکن.#RTN
#GPTQ
#AWQ
#QAT
#LLMint8
#LLMQUANTIZATIONMETHODS
@toobabigdatascience