خب، بیاید یه کم در مورد مدلهای زبانی بزرگ (همون LLMها یعنی مدلهای هوش مصنوعی که خیلی خوب میتونن با زبانهای مختلف کار کنن) و ماجرای کارشون با زبان اوکراینی حرف بزنیم. مدلهایی مثل ChatGPT یا Bard رو دیدید؟ اینها میتونن به چندین زبان گفتگو کنن یا متن تولید کنن. اما کلی نکته جالب این وسط هست که مخصوصاً وقتی میریم سراغ زبانهایی که کمتر توی این مدلها دیده شدن، مثل اوکراینی، موضوع یه کم پیچیده میشه.
داستان از اینجا شروع میشه که این مدلهای زبانی، متن رو تیکهتیکه یا همون توکن به توکن میسازن. «Token» یعنی یه قطعه کوچیک از متن، مثلاً یه کلمه یا حتی بخش کوچیکی از یه کلمه! هر چی تعداد این توکنها بیشتر باشه، زمان پردازش و هزینه استفاده هم بیشتر میشه. مخصوصاً وقتی پای زبانهایی میاد وسط که مدل اونقدرها باهاش آشنا نیست و توکنهای بیشتری لازم داره تا اون جمله رو تولید کنه.
حالا اوکراینی چیه؟ یه زبان فوقالعاده باحال، ولی متاسفانه توی دنیای مدلهای زبانی فوقالعاده کم کاربرده و تقریباً میشه گفت توکنایزرها (همون ابزارهایی که متن رو به قطعات کوچیک تبدیل میکنن) خیلی خوب آموزش ندیدن که کلمات اوکراینی رو جمع و جور تبدیل کنن. توکنایزر اگه خوب کار نکنه، عملاً میاد یه کلمه رو به چند تا تیکه کوچیک تقسیم میکنه، درحالیکه مثلاً انگلیسی رو با دو سه تا توکن جمعش میکنه؛ این باعث میشه هم هزینه بالا بره (چون تو بیشتر سرویسها باید به تعداد توکن پول بدی!) و هم زمان جواب گرفتن طولانی میشه.
تو این تحقیق، اومدن چند تا از این توکنایزرهای مدلهای معروف رو برای زبون اوکراینی آزمایش کردن و حتی مقایسه کردن که کدومشون بهتر عمل میکنه. توی این آزمایشها، مفهومی به اسم “توکنایزیشن فرتیلیتی” (Tokenization fertility) رو بررسی کردن. این یعنی چی؟ یعنی مثلاً وقتی یه متن اوکراینی رو میدیم به این توکنایزرها، چند تا توکن واسهش تولید میشه. هر چی کمتر باشه، یعنی اون توکنایزر تو جمع و جور کردن کلمههای اوکراینی استادتره!
یه بخش جالب دیگه هم تو این تحقیق بوده: اونا اومدن یه تکنیک به اسم “ترنسلیتریشن” (Transliteration) رو امتحان کردن که یعنی کلمات اوکراینی رو با حروف یه زبان دیگه مثل انگلیسی بنویسن (مثلاً مثل وقتی طرف اسم “الکساندر” رو به جای الفبای اوکراینی، با حروف انگلیسی مینویسه). هدف این بوده که ببینن این روش میتونه تعداد توکنهای لازم رو کمتر کنه یا نه و در عین حال اطلاعات معنی کلمه از دست نره.
نتیجه چی شد؟ چیزی که معلوم شد اینه که مدلهای فعلی، کلی جای بهتر شدن دارن! توکنایزرها برای اوکراینی اصلاً بهینه نیستن و باعث میشن هم هزینه استفاده بره بالا و هم عملکردشون نسبت به زبانهای پرکاربردتر (مثل انگلیسی) ضعیفتر باشه. حتی با ترنسلیتریشن هم بهبودهایی بوده، ولی هنوز نمیشه گفت ایدهآل شده.
در کل، این تحقیق یه زنگ خطره برای کسی که میخواد مدل زبانی قوی واسه زبانهای کممنبع مثل اوکراینی داشته باشه: باید حسابی رو بحث توکنایزر و روشهای بهبودش کار کنن وگرنه هم هزینه زیاد درمیاد، هم کیفیت پایین میاد. پس اگه دیدین برای زبانهای کمتر رایج، مدلهای زبانی اینطوری گیر دارن، بدونین مشکل از همون توکنایزر سادهشون شروع میشه!
منبع: +