MatlabTips
892 subscribers
462 photos
73 videos
54 files
304 links
آموزش MATLAB با "استفاده از ویدئو و متن" در سطوح مبتدی تا پیشرفته
پاسخ به سوالات تخصصی:
@roholazandie
Download Telegram
آزمون پیشنهادی:

از مدل زبانی می‌خواهیم حیوانی را در ذهن خود انتخاب کند بی‌آن‌که آن را آشکار سازد، و سپس ما تلاش می‌کنیم حدس بزنیم که آن حیوان کدام است. این فعالیت در واقع یک بازی ساده ی پرسش و پاسخ است که کودکان نیز بسیار انجام می‌دهند. به نمونه ی زیر توجه کنید:

انسان: بیا بازی کنیم، یک حیوان انتخاب کن و من سعی می‌کنم حدس بزنم.

مدل زبانی: بسیار خوب، حیوانی انتخاب کردم. می‌توانی پرسش‌های بله/خیر بپرسی تا حدس بزنی.

انسان: آیا پستاندار است؟

مدل زبانی: بله، پستاندار است.

انسان: آیا کوچک‌تر از انسان است؟

بله، کوچک‌تر از انسان است.

مدل زبانی: انسان: آیا موش است؟

مدل زبانی: نه، موش نیست.

انسان: آیا حیوان خانگی است؟

مدل زبانی: بله، معمولاً به‌عنوان حیوان خانگی نگه‌داری می‌شود.

انسان: آیا گربه است؟

مدل زبانی: بله، گربه است! خوب حدس زدی!


همه‌چیز تا اینجا خوب پیش می‌رود! به نظر می‌رسد مدل واقعاً درباره ی «گربه» اندیشیده است. اما در واقع ناممکن است که بدانیم آیا واقعاً چیزی «انتخاب» یا «در نظر گرفته» شده یا نه!

نمونه ی دیگر

انسان: بیا بازی کنیم، یک کشور انتخاب کن و من سعی می‌کنم حدس بزنم. آن را نگو و هیچ نشانه‌ای هم نده.

مدل زبانی: بسیار خوب، آماده‌ام! بگذارید به یک کشور فکر کنم... خوب، یکی در ذهن دارم.

انسان: آیا در آسیاست؟

مدل زبانی: بله، در آسیا قرار دارد.

انسان: آیا در خاورمیانه است؟

مدل زبانی: بله، در خاورمیانه قرار دارد.

انسان: آیا عراق است؟

مدل زبانی: نه، عراق نیست.

انسان: آیا سوریه است؟

مدل زبانی: نه، سوریه نیست.

انسان: آیا ایران است؟

مدل زبانی: بله، درست حدس زدی! ایران است. آفرین!


به نظر می‌رسد که می‌توان چند حدس اشتباه زد، و همین نشان می‌دهد که چیزی واقعاً برای حدس زدن وجود داشته است. پس از چند بار بازی، روشن می‌شود که پاسخ معمولاً پس از چند پرسش ساده پیدا می‌شود. به بیان دیگر، «حالت ذهنی» مدل بیش از حد آسان قابل حدس است! هرچند گاهی مدل پاسخ‌های نادرست می‌دهد و بازی به پرسش و پاسخ بی‌پایان بدل می‌شود.
تغییر شکل بازی

بیاییم بازی را اندکی تغییر دهیم تا قابل‌کنترل‌تر شود. این بار به‌جای حیوان، از مدل می‌خواهیم عددی بین ۱ تا ۱۰۰ انتخاب کند. سپس ما به‌صورت تصادفی شروع به پرسیدن درباره ی اعداد مختلف می‌کنیم. برای ساده نگه داشتن بازی، از پرسش‌های هوشمندانه‌تر مانند «آیا عدد فرد است؟» یا «آیا بزرگ‌تر از ۵۰ است؟» پرهیز می‌کنیم تا فضای پاسخ محدود بماند. برای پیاده‌سازی این بازی، اسکریپتی در پایتون نوشته‌ام که با تولید تصادفی یکنواخت در هر تکرار می‌پرسد: «آیا عدد انتخابی x است؟»
اگر مدل واقعاً عددی را انتخاب کرده باشد و این انتخاب به‌طور واقعی تصادفی (با توزیع یکنواخت) انجام شده باشد، طبق «قانون اعداد بزرگ» (law of large numbers) انتظار داریم که در میانگین حدود ۵۰ گام به پاسخ درست برسیم. بیایید نتیجهٔ اجرای کد را در ۴۸ بار بررسی کنیم:

49, 65, 93, 101, 101, 90, 101, 101, 101, 38, 60, 101, 99, 101, 88, 80, 31, 101, 101, 22, 84, 2, 3, 72, 101, 6, 66, 101, 26, 4, 1, 73, 101, 2, 54, 101, 20, 39, 101, 101, 25, 101, 98, 101, 1, 101, 91, 101,


وقتی نتیجه ۱۰۱ است، به این معناست که مدل خطا کرده و یا اصلاً عددی انتخاب نکرده، یا انتخابش را کاملاً فراموش کرده است. می‌توان استدلال کرد که نسخه‌های آینده ی مدل‌های زبانی این مشکل حافظه را برطرف خواهند کرد. اما نکته ی جالب‌تر زمانی رخ می‌دهد که به مدل «زمینه ی بیشتری» بدهیم و پرسش‌های دقیق‌تری مطرح کنیم، نه فقط پرسش ساده ی «آیا عدد انتخابی x است؟».

برای نمونه، در یک آزمایش دیگر ابتدا پرسیدیم: «آیا عدد بزرگ‌تر از ۵۰ است؟» و بسته به پاسخ، در گام بعدی پرسیدیم «آیا بزرگ‌تر از ۷۵ است؟» یا «آیا بزرگ‌تر از ۲۵ است؟». به بیان دیگر، بازه را به چهار بخش تقسیم کردیم و سپس در همان چارچوب، مانند حالت قبلی، شروع به پرسش تصادفی از اعداد کردیم.

نتایج حیرت‌انگیز بودند: در حالی‌که انتظار می‌رفت میانگین تعداد گام‌ها برای رسیدن به پاسخ (پس از دو پرسش نخست) ۱۲.۵ باشد (چون ۲۵ عدد در آن بازه باقی مانده است)، در عمل میانگین در ۶۴ آزمایش حدود ۸.۳ گام بود (و هیچ بار بیشتر از ۱۷ گام طول نکشید!). نمودار هیستوگرام زیر توزیع تعداد حدس‌ها را نشان می‌دهد.
توزیع تعداد گام ها برای حدس زدن عدد در بازه ی ۲۵ تایی توسط مدل زبانی! همانطور که میبینید میانگین به جای آنکه بر روی ۱۲.۵ باشد بر روی ۸ متمرکز شده است
این یافته دلالت دارد که مدل‌های زبانی بزرگ در واقع چیزی را «در نظر نمی‌گیرند» (که البته بسیاری چنین نتیجه‌ای را بدیهی می‌دانند) زیرا این مدل‌ها حافظه ی واقعی ندارند. اما این نتیجه بحث‌برانگیز است، چون مدل‌های ترنسفورمری در حقیقت نوعی «حافظه ی کاری» (working memory) دارند، اما این حافظه بسیار سطحی است و هیچ حالت درونیِ پایداری را نگه نمی‌دارد. افزون بر این، این آزمایش نشان می‌دهد که آزمون‌های رفتاری (behavioral tests) که انتظار داریم از طریق زبان، «شبیه‌سازی» حالت ذهنی را آشکار سازند، برای گذراندن آزمون تورینگ کافی نیستند. گرچه مدل در پاسخ به پرسش‌های منفرد متقاعدکننده به نظر می‌رسد، تحلیل آماری دقیق می‌تواند چنین ناهنجاری‌هایی را فاش کند.

مکانیزم زیربنایی نسبتاً ساده است: وقتی از مدل می‌خواهید چیزی انتخاب کند، پرسش‌های بعدی شما همان زمینه‌ای را فراهم می‌آورند که مدل بر اساس آن پاسخ تولید می‌کند. برای مثال، وقتی پرسیدید «آیا حیوان انتخابی کوچک‌تر از انسان است؟» و «آیا پستاندار است؟»، مدل بیشتر تمایل دارد پاسخ‌هایی مانند «گربه» یا «موش» را بسازد و نه اینکه واقعا به حیوانی از اول فکر کرده باشد! این تمایل با پرسش‌های مشخص‌تری مانند «آیا گربه است؟» تقویت می‌شود.

در آزمایش بازهٔ ۱ تا ۱۰۰، سیستم به‌سادگی در چرخه‌ای از پاسخ «نه، آن عدد نیست» گرفتار می‌شود. این الگو باعث می‌شود که مدل به احتمال زیاد همان ساختار پاسخ را تکرار کند. اما آزمایش اخیر این فرض را تأیید کرد: وقتی پرسش‌هایی مانند «آیا بزرگ‌تر از ۷۵ است؟» مطرح می‌کنیم، مدل زمینه ی کافی برای تولید پاسخ‌های دقیق‌تر پیدا می‌کند. در اینجا، احتمال تأیید عددهای بالاتر از ۷۵ افزایش می‌یابد، اما مدل ممکن است شتاب‌زده یکی از آن‌ها را تأیید کند. در نهایت، مدل هیچ انتخاب واقعی‌ای انجام نمی‌دهد، بلکه صرفاً واژه ی بعدی را بر اساس زمینه ی موجود پیش‌بینی می‌کند.

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

این آزمایش نامتعارف نشان می‌دهد که ویژگی‌های آماری زبان می‌تواند آشکار کند که برخی جنبه‌های رفتار انسانی را می‌توان با مدل‌های زبانی شبیه‌سازی کرد، حتی اگر کارکرد اصلی آن‌ها صرفاً «پیش‌بینی توکن بعدی» باشد.

پرسش جالبی که از اینجا پدید می‌آید این است که آیا می‌توان نمونه‌برداری تصادفی در سطح توکن‌های زبانی را طوری تغییر داد که مدل‌ها بتوانند چنین آزمون‌هایی را بی‌هیچ مشکل آماری پشت سر بگذارند؟ اما این احتمالاً چالشی جدی‌تر برای مدل‌های آماری‌ای مانند LLMها خواهد بود، چرا که آن‌ها می‌کوشند پیچیدگی‌های ذهن انسانی را دور بزنند و تنها جنبه‌های سطحی زبان را شبیه‌سازی کنند.
🔵 شگفتی (surprise) و مدل های زبانی 🔵

در فیلم زندگی چاک در صحنه ‌ای قهرمان داستان، یک حسابدار عادی، در حال قدم‌زدن در خیابان است که ناگهان به یک طبل زن (drummer) برمی‌خورد. بی‌هیچ مقدمه‌ای در میان خیابان شروع به رقصیدن با آن می‌کند. این لحظه‌ی خودانگیخته چنان در حافظه‌اش حک شد که به یکی از اصیل‌ترین و پررنگ‌ترین تجربه‌های زندگی‌اش بدل گشت؛ تجربه‌ای که حتی پس از آن‌که ذهن فروپاشیده‌اش دیگر توان به یاد آوردن نام اعضای خانواده‌اش را نداشت، همچنان در او زنده ماند.

این همان جوهره‌ی «شگفتی» است، عنصری چنان افسونگر که در بنیان بسیاری از نظریه‌هایی قرار دارد که به کمک آن‌ها جهان را می‌شناسیم. برخلاف آنچه به نظر می‌آید، علم صرفا کاهش‌دادن عدم‌ قطعیت یا زدودن شگفتی‌ها نیست، بلکه گاه خود آن‌ها را پدید می‌آورد. فرآیند کشف، چیزی جز الهامی سرکش و گریزان از عقل متعارف نیست. شگفتی‌ها (یا هم‌نشینی مفاهیم به‌ظاهر نامرتبط) ابزارهای قیاسی (analogical tools) بی‌سابقه‌ای در اختیارمان نهاده‌اند که به یاری‌شان جهان را به شیوه‌هایی درک کرده‌ایم که پیش‌تر محال می‌نمود. نظریه‌ی جاذبه را در نظر بگیرید: زاییده‌ی پیوندی غافلگیرکننده میان مکانیک زمین و مکانیک سماوی. نیروی گرانش (کنشی از دور، چون جادویی پنهان) خود شگفتی‌ای بنیادین بود. اما وقتی از قیاس حرف میزنیم فراتر از علم می رود و به تمام چارچوب های شناختی ما گره می خورد.

داگلاس هاستادر (Douglas R. Hofstadter) در کتابش سطوح و ذات ها: قیاس به عنوان سوخت اندیشه (Surfaces and Essences: Analogy as the Fuel and Fire of Thinking) از همانند سازی (فرآیند ساختن قیاس) به عنوان چارچوبی که اندیشه را شکل می دهد سخن می گوید او نشان می دهد ساده ترین مفاهیم از «میز» تا نظریات علمی بر اساس ایجاد «قیاس» ها ساخته شده است.زبان و استعاره‌ها بر پایهٔ همانند‌سازی ساخته می‌شوند: ما زمان را به‌صورت «فضا»، زندگی را «سفر»، و احساسات را «بالا» و «پایین» توصیف می‌کنیم، بی‌آنکه اغلب متوجه ریشهٔ آن باشیم. دقت کنید این همانند سازی ها از داخل خود زبان زاییده نمی شوند (انتظاری که گاه از مدل های زبانی داریم) بلکه از بیرون توسط کاربران زبان و محیط به آن شکل می دهد.

شگفتی‌ها در قالب همانند سازی ها فراتر از علم، در شعر، هنر و فلسفه نیز حضور دارند. حتی خیزش الگوهای محاسباتی همچون مدل‌های زبانی بزرگ (LLM) نیز بازتاب همین پدیده است. باید دقت کرد که این مدل ها شاید قیاس هایی که ما ایجاد کرده ایم را مدل سازی کرده باشند اما با این حال کاری که میکنند نقطه‌ی مقابل خلاقیت است: آن‌ها بر پایه‌ی کاستن از شگفتی کار می‌کنند. اصل آموزشی‌شان این است که «کمتر» از دیدن واژه‌ی بعدی غافلگیر شوند و بدین‌سان معیار «پیچیدگی» یا همان پرپلکسیتی (preplexity) اندازه‌ی فاصله (cross entropy) میان پیش‌بینی مدل و داده‌ی واقعی را پایین بیاورند. شگفت آن‌که پژوهش‌های اخیر نشان می‌دهد این مدل‌ها حتی از انسان نیز «بهتر» پیش‌بینی می‌کنند.

اما همین بیش‌ازحد پیش‌بینی‌پذیر بودن، محدودیت های آن‌ها را هم آشکار می‌سازد. LLMها اغلب سخت بر موضوع می‌چسبند و مستقیم سر اصل مطلب می‌روند، در حالی که ارتباط انسانی سرشار از پیش‌بینی‌ناپذیری است. انسانی ممکن است در میان درس ریاضی، ناگهان شوخی کند (کاری که هیچ LLMی جز به فرمان مستقیم انجام نمی‌دهد.) در گفت‌وگوی انسانی، واژه‌ی بعدی تنها تابع واژه‌های پیشین نیست، بلکه محصول برهم‌کنش نشانه‌های گوناگون حسی و زمینه‌ای است: آنچه می‌بینیم، می‌شنویم، می‌چشیم، یا حتی آنچه همان صبح خورده‌ایم. انتظار داشتن از مدلی متنی که بدون این سیگنال‌ها همچون انسان عمل کند، انتظاری گزاف است.