یک محقق کشف کرد که gzip — همان الگوریتم فشردهسازی قدیمی و ساده لینوکس — میتواند متن تولید کند؛ بدون هیچ شبکه عصبی، بدون وزن، بدون آموزش.
چطور؟
هر الگوریتم فشردهسازی در دلش یک مدل احتمالاتی پنهان دارد:
دادهای که «انتظارش را دارد» با بایت کمتری کُد میشود
داده غیرمنتظره بایت بیشتری میخواهد
پس میشود از این معیار به عنوان امتیازدهی استفاده کرد:
هر ادامه متنی که بهتر فشرده شود، «محتملتر» است!
روش کار (gzipt):
۱. یک corpus (مثلاً متون شکسپیر) به gzip داده میشود
۲. یک prompt ورودی میگیرد
۳. با beam search روی توالی بایتها جستجو میکند
۴. ادامهای را انتخاب میکند که بهترین فشردهسازی را داشته باشد
نتیجه؟
خروجی کاملاً منسجم نیست، ولی بهطور شگفتانگیزی ساختار زبان را درک کرده!
این ایده از مقالهای با نام "Language Modeling is Compression" الهام گرفته که میگوید:
هر مدل پیشبینی، یک compressor است و هر compressor یک مدل پیشبینی.
بلاگ پست:
🔗 https://nathan.rs/posts/gzip-lm/
کد پروژه:
🔗 nathan.rs/posts/