پشت پرده هوش مصنوعی | قسمت 21: چه چیزی تعیین میکند مدل چقدر در انتخاب توکنها تنوع داشته باشد؟ Top-k و Top-p در هوش مصنوعی چیستند؟
وقتی یک مدل زبانی مانند ChatGPT در حال تولید پاسخ است، برای توکن بعدی فقط یک گزینه در اختیار ندارد. مدل میتواند برای ادامه متن، احتمالهای مختلفی را در نظر بگیرد و از میان گزینههای موجود یکی را انتخاب کند.
اما یک سؤال مهم وجود دارد:
اگر هزاران توکن مختلف برای انتخاب وجود داشته باشند، آیا همه آنها میتوانند وارد فرآیند انتخاب شوند؟
اگر قرار باشد مدل هر بار بین تمام گزینههای ممکن انتخاب کند، بسیاری از توکنهایی که احتمال بسیار کمی دارند نیز وارد فرآیند میشوند. این موضوع میتواند باعث شود خروجی مدل بیش از حد غیرقابلپیشبینی شود.
اینجاست که روشهایی مانند Top-k و Top-p اهمیت پیدا میکنند.
در قسمتهای قبلی مجموعه «پشت پرده هوش مصنوعی» دیدیم که مدل چگونه احتمال توکنهای مختلف را محاسبه میکند و چرا همیشه محتملترین گزینه را انتخاب نمیکند. حالا میخواهیم ببینیم چگونه میتوان محدوده گزینههای قابل انتخاب را کنترل کرد.
چرا باید گزینههای کماحتمال محدود شوند؟
فرض کنید مدل برای توکن بعدی، تعداد بسیار زیادی گزینه در اختیار دارد.
برخی از این گزینهها احتمال بسیار بالایی دارند و با متن قبلی کاملاً هماهنگ هستند.
در مقابل، بعضی گزینهها احتمال بسیار کمی دارند و انتخاب آنها چندان منطقی نیست.
اگر همه این گزینهها در فرآیند انتخاب باقی بمانند، مدل ممکن است گاهی گزینهای را انتخاب کند که احتمال آن بسیار پایین است.
برای جلوگیری از این اتفاق، میتوان محدوده گزینههای قابل انتخاب را محدود کرد.
دو روش شناختهشده برای این کار Top-k و Top-p هستند.
Top-k چیست؟
در روش Top-k، فقط تعداد مشخصی از گزینههایی که بالاترین احتمال را دارند، برای انتخاب باقی میمانند.
برای مثال، اگر مقدار k برابر با ۵ باشد، مدل فقط پنج گزینه با بیشترین احتمال را در نظر میگیرد و گزینههای دیگر را کنار میگذارد.
فرض کنید مدل برای توکن بعدی چنین احتمالاتی داشته باشد:
- گزینه A → ۴۰٪
- گزینه B → ۲۵٪
- گزینه C → ۱۵٪
- گزینه D → ۱۰٪
- گزینه E → ۵٪
- سایر گزینهها → ۵٪
اگر Top-k = 3 باشد، فقط سه گزینه اول وارد فرآیند انتخاب میشوند.
یعنی گزینههای A، B و C باقی میمانند و گزینههای کماحتمالتر کنار گذاشته میشوند.
به این ترتیب، مدل همچنان امکان انتخاب بین چند گزینه را دارد، اما گزینههای بسیار کماحتمال از فرآیند حذف میشوند.
Top-p چیست؟
روش Top-p کمی متفاوت عمل میکند.
در این روش، مدل بهجای اینکه تعداد ثابتی از گزینهها را انتخاب کند، گزینهها را بر اساس احتمال مرتب میکند و تا جایی پیش میرود که مجموع احتمال آنها به مقدار مشخصی برسد.
این مقدار با p تعیین میشود.
برای مثال، فرض کنید مدل گزینههای زیر را داشته باشد:
- گزینه A → ۵۰٪
- گزینه B → ۲۵٪
- گزینه C → ۱۵٪
- گزینه D → ۷٪
- گزینه E → ۳٪
اگر مقدار Top-p برابر با ۹۰٪ باشد، مدل گزینهها را از محتملترین مورد شروع میکند و آنها را تا رسیدن به محدوده احتمال موردنظر در نظر میگیرد.
در نتیجه، برخلاف Top-k که تعداد گزینهها را مشخص میکند، در Top-p تعداد گزینههای قابل انتخاب میتواند با توجه به توزیع احتمالها تغییر کند.
تفاوت Top-k و Top-p چیست؟
تفاوت اصلی این دو روش در نحوه محدود کردن گزینههاست.
در Top-k:
تعداد مشخصی از محتملترین توکنها انتخاب میشوند.
در Top-p:
تعدادی از توکنهای محتمل انتخاب میشوند تا مجموع احتمال آنها به مقدار مشخصی برسد.
بنابراین Top-k یک محدودیت ثابت بر تعداد گزینهها ایجاد میکند، در حالی که Top-p بر اساس توزیع احتمالها عمل میکند.
این تفاوت باعث میشود هر روش در شرایط مختلف رفتار متفاوتی داشته باشد.
آیا Top-k و Top-p هوش مدل را افزایش میدهند؟
خیر.
این نکته بسیار مهم است.
Top-k و Top-p مستقیماً میزان هوش مدل را تغییر نمیدهند.
این تنظیمات دانش جدیدی به مدل اضافه نمیکنند و باعث افزایش تعداد پارامترهای آن نمیشوند.
در واقع، آنها فقط محدوده گزینههایی را کنترل میکنند که مدل میتواند از بین آنها توکن بعدی را انتخاب کند.
بنابراین اگر یک مدل ضعیف باشد، تغییر Top-k یا Top-p آن را به یک مدل باهوشتر تبدیل نمیکند.
این تنظیمات فقط روی فرآیند انتخاب توکن تأثیر میگذارند.
چرا این تنظیمات مهم هستند؟
مدلهای زبانی باید بین دو موضوع تعادل برقرار کنند:
قابلپیشبینی بودن و تنوع در پاسخها.
اگر گزینههای انتخاب بیش از حد محدود شوند، پاسخها ممکن است تکراریتر و قابل پیشبینیتر شوند.
از طرف دیگر، اگر گزینههای بسیار زیادی در فرآیند انتخاب باقی بمانند، احتمال انتخاب گزینههای نامناسب نیز افزایش پیدا میکند.
Top-k و Top-p به مدل کمک میکنند این محدوده انتخاب را کنترل کند.
به زبان ساده، این روشها مشخص میکنند:
مدل از بین چه گزینههایی اجازه دارد توکن بعدی را انتخاب کند.
جمعبندی
وقتی یک مدل زبانی میخواهد توکن بعدی را تولید کند، ممکن است گزینههای بسیار زیادی در اختیار داشته باشد.
روش Top-k تعداد مشخصی از محتملترین گزینهها را نگه میدارد.
روش Top-p نیز گزینههایی را نگه میدارد که مجموع احتمال آنها به مقدار مشخصی برسد.
هر دو روش کمک میکنند گزینههای بسیار کماحتمال از فرآیند انتخاب کنار گذاشته شوند.
نکته مهم این است که Top-k و Top-p مستقیماً میزان هوش مدل را تغییر نمیدهند؛ بلکه فقط محدوده گزینههایی را که مدل میتواند از بین آنها انتخاب کند، کنترل میکنند.
در قسمت بعدی مجموعه «پشت پرده هوش مصنوعی» به سراغ فرآیند تولید پاسخ میرویم و بررسی میکنیم که مدل چگونه با انتخابهای متوالی، یک پاسخ کامل را توکنبهتوکن میسازد.
درباره فیلاگر | جامعه هوش مصنوعی ایران
فیلاگر، جامعه هوش مصنوعی ایران، مرجعی برای آموزش، تحلیل و بررسی فناوریهای نوین هوش مصنوعی است. در مجموعه «پشت پرده هوش مصنوعی» تلاش میکنیم مفاهیم پیچیده AI را با زبانی ساده برای علاقهمندان فارسیزبان توضیح دهیم.
پشت پرده هوش مصنوعی | قسمت ۱
پشت پرده هوش مصنوعی | قسمت ۲
پشت پرده هوش مصنوعی | قسمت ۳
پشت پرده هوش مصنوعی | قسمت ۴
پشت پرده هوش مصنوعی | قسمت ۵
پشت پرده هوش مصنوعی | قسمت ۶
پشت پرده هوش مصنوعی | قسمت ۷
پشت پرده هوش مصنوعی | قسمت ۸
پشت پرده هوش مصنوعی | قسمت ۹
پشت پرده هوش مصنوعی | قسمت ۱۰
پشت پرده هوش مصنوعی | قسمت ۱۱
پشت پرده هوش مصنوعی | قسمت ۱۲
پشت پرده هوش مصنوعی | قسمت ۱۳
پشت پرده هوش مصنوعی | قسمت ۱۴
پشت پرده هوش مصنوعی | قسمت ۱۵
پشت پرده هوش مصنوعی | قسمت ۱۶
پشت پرده هوش مصنوعی | قسمت ۱۷
پشت پرده هوش مصنوعی | قسمت ۱۸
پشت پرده هوش مصنوعی | قسمت ۱۹
پشت پرده هوش مصنوعی | قسمت ۲۰
دیدگاهتان را بنویسید