مدل زبانی چطور میفهمه منظورت چیه
خلاصهٔ کاملتر
نویسنده تو این پست قراره بدون هیچ فرمول سنگینی نشون بده یک مدل زبانی چطور از یک جملهٔ خام به اینجا میرسه که کدوم کلمه به کدوم مربوطه. مثال کل مقاله یک جملهٔ سهکلمهایه: «Do lions roar?» و سؤال اینه که مدل از کجا میفهمه «roar» به «lions» ربط داره نه به «Do».
قدم اول اینه که کلمهها عدد بشن. هر کلمه یک توکن حساب میشه و هر توکن یک شناسهٔ عددی میگیره، ولی عدد تنها هیچ معنایی حمل نمیکنه؛ هیچچیزی تو عدد ۲ نمیگه که به ۳ نزدیکتره تا به ۹۹. برای همین هر شناسه به یک بردار تبدیل میشه، یعنی یک لیست عدد که هر خونهش میتونه تکهای از معنا رو نگه داره. هرچی این لیست بلندتر باشه جا برای معنا بیشتره؛ تو مقاله برای خوانایی سه بُعد استفاده شده، ولی مدلهای واقعی صدها یا هزاران بُعد دارن.
برای مقایسهٔ بردارها، نویسنده پیشنهاد میده بهجای لیست عدد به فلش فکر کنیم: هر کلمه یک فلشه و کلمههای هممعنی فلشهایی دارن که تقریباً یکجهتن؛ زاویهٔ ۹۰ درجه یعنی بیربط و جهت مخالف یعنی معنی متضاد. عددی که این همجهتی رو اندازه میگیره ضرب داخلی (dot product) هست. مثالش دو نفرن که یک چرخ خرید رو هل میدن: همجهت یعنی نیروها جمع میشن و امتیاز بالا میره، زاویهدار یعنی امتیاز کمتر، و مخالف هم یعنی امتیاز منفی.
مشکل اینجاست که امتیاز خام بهتنهایی معنی نداره؛ باید بدونیم از کل توجهی که یک کلمه برای خرجکردن داره، چه سهمی به کلمهٔ دیگه میرسه. برای همین امتیازها به سهم نسبی تبدیل میشن — تشبیه نویسنده یک پیتزا یا یک دلاره که هر کلمه بین بقیه تقسیمش میکنه، نه بیشتر و نه کمتر. به همین سهمها وزن توجه گفته میشه و اسم فنی این تبدیل softmax هست. اینکه بردارهای اولیه از کجا میان هم به back propagation برمیگرده که خودش موضوع یک پست جداست.
نکات کلیدی:
- هر کلمه اول توکن و بعد بردار میشه، چون یک عدد تنها معنایی رو منتقل نمیکنه
- بردار رو میشه مثل یک فلش دید: همجهتی یعنی هممعنایی و زاویهٔ قائمه یعنی بیربطی
- ضرب داخلی همون امتیاز عددی همجهتیه؛ بالا یعنی نزدیک، نزدیک صفر یعنی بیربط، منفی یعنی متضاد
- امتیاز خام بهتنهایی بیمعنیه و باید به سهم نسبی تبدیل بشه؛ همون وزنهای توجه
- علامت سؤال هم مثل بقیهٔ کلمهها یک توکنه و مدل فرقی بینشون نمیذاره




