Top-k sampling (UR)
Top-k سیمپلنگ — یہ ایک stochastic ڈیکوڈنگ طریقہ ہے جو autoregressive زبانی ماڈلوں میں، بشمول بڑے زبانی ماڈلوں (LLM) کے، متن تیار کرنے کے لیے استعمال ہوتا ہے۔ اس کا بنیادی مقصد اگلے token کے انتخاب کو ایک مقررہ تعداد () کے سب سے زیادہ ممکنہ امیدواروں تک محدود کرنا ہے، جس سے کم امکانی اور اکثر غیر موزوں الفاظ کی تیاری سے بچا جا سکتا ہے۔ یہ طریقہ سادہ random سیمپلنگ کی ابتدائی بہتریوں میں سے ایک تھا اور ایک طویل عرصے تک تیار کردہ متن کی coherence کو بہتر بنانے کا مقبول ذریعہ رہا۔
سادہ وضاحت
Top-k سیمپلنگ کو اس طرح سمجھا جا سکتا ہے کہ اگلا لفظ تمام ممکنہ اختیارات میں سے نہیں، بلکہ صرف سب سے زیادہ ممکنہ کی محدود فہرست میں سے منتخب کیا جاتا ہے۔
مثال کے طور پر، ماڈل جملے کو مکمل کر رہا ہے: "آج سڑک پر بہت تیز..."۔ اس کی لغت میں ہزاروں تسلسل ہیں: "بارش"، "ہوا"، "برف"، "طوفان" — اور کہیں دور "کوانٹم" یا کوئی بے ترتیب علامت۔ بغیر کسی پابندی کے متن کی تیاری مختلف اقسام کی انحطاط (text degeneration) کا شکار ہوتی ہے۔ Maximization طریقے (greedy decoding، beam search) خشک اور دہرائے جانے والا متن پیدا کرتے ہیں، جبکہ کٹائی کے بغیر خالص سیمپلنگ توزیع کی "ناقابلِ اعتماد دُم" میں سے کم امکانی tokens کے انتخاب کی وجہ سے بے ربطی کا شکار ہو سکتی ہے۔ Top-k بنیادی طور پر دوسرے مسئلے سے لڑتا ہے — دُم کو کاٹ کر یہ بے معنی تسلسل کے خطرے کو کم کرتا ہے، حالانکہ یہ خود بخود تکرار کو ختم نہیں کرتا۔ Top-k کہتا ہے: "صرف سب سے زیادہ ممکنہ الفاظ لو، باقی کو بھول جاؤ، انہی کے درمیان احتمالات دوبارہ شمار کرو اور ان میں سے ایک کو بے ترتیب چنو"۔
سیدھے الفاظ میں:
- ماڈل سب سے زیادہ ممکنہ تسلسلوں کی فہرست بناتا ہے؛
- صرف پہلے اختیارات لیتا ہے؛
- ان میں سے ایک کو بے ترتیب منتخب کرتا ہے۔
جتنا چھوٹا، نتیجہ اتنا محتاط اور قابلِ پیشین گوئی۔ جتنا بڑا، تیاری اتنی آزاد اور متنوع۔
مثالیں:
- ریستوران کا مینو: 5,000 اشیاء میں سے بے ترتیب انتخاب (ناخوشگوار چیز ملنے کا خطرہ) یا ہمیشہ سب سے مقبول ایک ہی ڈش (اکتا دینے والا) کے بجائے، بیرا صرف سرِفہرست 40 تجویز کردہ ڈشیں لاتا ہے — ایک معقول فہرست میں سے چنیے۔ البتہ کبھی کبھی کٹائی گئی فہرست میں وہی غیر معمولی ڈش ہوتی جو آپ کو پسند آتی — یہ قابلِ پیشین گوئی ہونے کی قیمت ہے۔
- فائنلسٹوں کی مختصر فہرست: 1,000 امیدواروں میں سے 40 بہترین CVs رکھی جاتی ہیں، پھر انٹرویو لیے جاتے ہیں۔
تصور اور ریاضی
متن تیار کرنے کے ہر مرحلے پر معیاری زبانی ماڈل پوری لغت پر احتمالاتی توزیع دیتا ہے۔ Top-k سیمپلنگ اس عمل کو اس طرح تبدیل کرتی ہے:
- امیدواروں کا انتخاب: پوری لغت میں سے ایک ذیلی مجموعہ منتخب کیا جاتا ہے جس میں سب سے زیادہ احتمال والے tokens ہوتے ہیں۔
- کٹائی: میں شامل نہ ہونے والے تمام tokens کے logits (Softmax لگانے سے پہلے ماڈل کی خام پیشین گوئیاں) کو کی قیمت دی جاتی ہے، جس سے normalization کے بعد احتمال بالکل 0 ہو جاتا ہے۔
- دوبارہ تقسیم (normalization): باقی tokens کے احتمالات اس طرح پیمانہ کیے جاتے ہیں کہ ان کا نیا مجموعہ 1 کے برابر ہو۔
- انتخاب: اگلا token اس نئی، کٹی ہوئی توزیع میں سے بے ترتیب منتخب کیا جاتا ہے۔
اس طرح، Top-k امیدواروں کی تعداد پر سخت حد عائد کرتا ہے: سے کم احتمالی رینک والے الفاظ کبھی منتخب نہیں ہوں گے۔
پیرامیٹر کا اثر
- چھوٹا (مثلاً – ): تیاری کو زیادہ محتاط اور قابلِ پیشین گوئی بناتا ہے۔ ماڈل صرف سب سے زیادہ ممکنہ الفاظ کے بہت محدود مجموعے میں سے انتخاب کرتا ہے۔ اس سے coherence بہتر ہوتی ہے، لیکن متن دہرائے جانے والا اور خشک ہو سکتا ہے۔
- بڑا (مثلاً – ): متن کا تنوع اور تخلیقیت بڑھاتا ہے، کیونکہ زیادہ اختیارات انتخاب میں شامل ہو جاتے ہیں۔ تاہم اس سے کم متعلق یا غیر موزوں tokens شامل ہونے کا خطرہ بھی بڑھتا ہے۔
- حدی صورتیں:
- : greedy decoding کے مترادف ہے۔ ماڈل ہمیشہ سب سے زیادہ ممکنہ token منتخب کرتا ہے۔
- = لغت کا حجم: کٹائی کے بغیر مکمل توزیع سے معیاری سیمپلنگ کے مترادف ہے۔
تاریخی اہمیت
Top-k سیمپلنگ بطور ڈیکوڈنگ طریقہ Angela Fan اور ان کے ساتھیوں کے 2018 کے مقالے "Hierarchical Neural Story Generation" میں ابتدائی کامیاب اطلاقات میں سے ایک تھا، جہاں مصنفین نے کہانیوں کی درجاتی تیاری کے نظام میں top-k random sampling (با ) استعمال کیا اور دکھایا کہ یہ حکمتِ عملی beam search اور مکمل random سیمپلنگ سے نمایاں طور پر بہتر ہے، جس میں کم امکانی الفاظ شامل ہونے کا خطرہ رہتا ہے۔
تاہم وہ کلیدی مقالہ جس نے متن کی انحطاط کے مسئلے کا منظم تجزیہ کیا اور دکھایا کہ truncation طریقے، بشمول top-k، تیاری کے معیار کو نمایاں طور پر بہتر بناتے ہیں، Holtzman et al. (2019) کا مقالہ "The Curious Case of Neural Text Degeneration" تھا۔ اس کے ساتھ ساتھ مصنفین نے top-k کے زیادہ موافق متبادل کے طور پر top-p (nucleus sampling) تجویز کیا، اپنے HUSE-metric کے ذریعے دکھاتے ہوئے کہ nucleus sampling موازنہ کی گئی حکمتِ عملیوں میں بہترین نتائج دیتی ہے۔
مثال کے طور پر، GPT-2 کے ابتدائی مظاہروں اور سفارشات میں `top_k=40` کی قیمت وسیع پیمانے پر استعمال ہوتی تھی (اسے OpenAI کے کوڈ میں "generally a good value" کہا گیا ہے)، جو طویل اور coherent متون تیار کرنے میں مددگار تھی۔
دیگر ڈیکوڈنگ طریقوں سے موازنہ
Top-k بمقابلہ Top-p
Top-k کو کافی حد تک ایک زیادہ ترقی یافتہ طریقے — Top-p (nucleus) سیمپلنگ — سے تکمیل ملی، اور بعض کاموں میں اسے اسی نے لے لیا۔
- Top-k کی بڑی خامی اس کی غیر موافقیت ہے۔ مقررہ قیمت احتمالاتی توزیع کی شکل کو مدِنظر نہیں رکھتی:
- جب توزیع تیز ہو (ماڈل چند tokens کے بارے میں پُر یقین ہو)، تو Top-k مصنوعی طور پر انتخاب کو وسیع کر سکتا ہے، کم امکانی امیدواروں کو شامل کر کے۔
- جب توزیع ہموار ہو (ماڈل غیر یقینی ہو اور بہت سے tokens کا احتمال ملتا جلتا ہو)، تو Top-k قبل از وقت بہت سے مناسب اختیارات کاٹ سکتا ہے۔
- اس کے علاوہ، Top-k توزیع کی "دُم" کو سخت طریقے سے کاٹتا ہے (tail truncation)، جس کی وجہ سے سیاق کے اعتبار سے موزوں لیکن نادر tokens ضائع ہو سکتے ہیں — یہ طریقہ ربط کی خاطر ممکنہ تخلیقیت قربان کرتا ہے۔
- Top-p، اس کے برعکس، انتخاب کے حجم کو متحرک طور پر ڈھالتا ہے، tokens کو ان کے مجموعی احتمال کی بنیاد پر منتخب کرتا ہے۔ یہ اسے زیادہ لچکدار اور قابلِ اعتماد بناتا ہے۔
- عملی طور پر دونوں طریقے اکثر مشترکاً یکے بعد دیگرے فلٹر کے طور پر استعمال ہوتے ہیں: ایک امیدواروں کی تعداد کو موٹے طور پر محدود کرتا ہے، دوسرا ماڈل کی یقین داری کے مطابق انتخاب کو متحرک طور پر تنگ کرتا ہے۔ ان کے اطلاق کی درست ترتیب مخصوص framework کے نفاذ پر منحصر ہے۔
Top-k بمقابلہ Temperature
- Temperature پوری احتمالاتی توزیع کی شکل بدلتی ہے، لیکن tokens کو نہیں کاٹتی۔ یہ تمام امیدواروں کے متعلق احتمالات پر اثر ڈالتی ہے۔
- Top-k سخت کٹائی عائد کرتا ہے، ٹاپ- سے باہر کے tokens کو مکمل طور پر خارج کر دیتا ہے۔
عملی طور پر Top-k کو temperature اور Top-p کے ساتھ مل کر استعمال کیا جا سکتا ہے۔ فلٹروں کے اطلاق کی درست ترتیب framework پر منحصر ہے: مثلاً Hugging Face Transformers میں سلسلہ کچھ اس طرح ہے: Temperature → Top-k → Top-p، یعنی temperature پہلے logits () کو پیمانہ کرتی ہے، پھر Top-k غیر ضروری tokens کی لمبی "دُم" کاٹتا ہے، اور اس کے بعد Top-p ماڈل کی یقین داری کے مطابق انتخاب کو متحرک طور پر تنگ کرتا ہے۔ اس کے ساتھ ساتھ انفرادی مراحل ترتیبات کے مطابق چھوڑے جا سکتے ہیں: اگر ہو تو Top-k مرحلہ نہیں لگایا جاتا؛ اگر ہو تو Top-p مرحلہ نہیں لگایا جاتا۔
عملی استعمال
اگرچہ Top-p ایک زیادہ موافق طریقہ ہے اور اکثر کھلی متن تیاری کے لیے بنیادی طریقے کے طور پر استعمال ہوتا ہے، لیکن کوئی ایک عالمی بہترین ڈیکوڈنگ طریقہ موجود نہیں — بہترین انتخاب کام، ماڈل اور ترجیحات (معیار، رفتار، استحکام) پر منحصر ہے۔ Top-k تمام بڑے frameworks (Hugging Face Transformers، vLLM وغیرہ) میں وسیع پیمانے پر تعاون یافتہ پیرامیٹر ہے اور خود بھی اور دیگر طریقوں کے ساتھ مل کر بھی سرگرمی سے استعمال ہوتا ہے۔
- مخصوص قیمتیں: عملی طور پر کی قیمتیں اکثر دسیوں tokens کے ارد گرد ہوتی ہیں (مثلاً 10، 40، 50)، لیکن بہترین قیمت ماڈل اور کام پر منحصر ہے۔
- سفارشات: کھلی متن تیاری کے لیے اکثر Top-p کو ترجیح دی جاتی ہے۔ اگر Top-k استعمال کیا جائے تو اسے معتدل temperature کے ساتھ ملانا چاہیے اور مخصوص کام کے لیے کی قیمت احتیاط سے منتخب کرنی چاہیے۔ Top-k اعلیٰ temperature پر اضافی "حفاظتی آلے" کے طور پر بھی مفید ہے۔
- نوٹ: Frameworks میں Top-k کو Repetition Penalty (تکرار کی سزا) اور پیرامیٹر
no_repeat_ngram_sizeکے ساتھ ملایا جا سکتا ہے تاکہ ماڈل کو ٹاپ- فہرست کے انہی الفاظ پر اٹکنے سے روکا جا سکے۔
حوالہ جات
بنیادی مقالے
- Fan, A. et al. (2018). Hierarchical Neural Story Generation. ACL Anthology. arXiv:1805.04833.
- Holtzman, A. et al. (2019). The Curious Case of Neural Text Degeneration. arXiv:1904.09751 (ICLR 2020).
- Finlayson, M. et al. (2024). Closing the Curious Case of Neural Text Degeneration. OpenReview:dONpC9GL1o (ICLR 2024).
اضافی مطالعہ
- Meister, C. et al. (2022). Locally Typical Sampling. arXiv:2202.00666 (TACL 2023).
- Su, Y.; Lan, T.; Wang, Y.; Yogatama, D.; Kong, L.; Collier, N. (2022). A Contrastive Framework for Neural Text Generation. arXiv:2202.06417 (NeurIPS 2022).
- O'Brien, S.; Lewis, M. (2023). Contrastive Decoding Improves Reasoning in Large Language Models. arXiv:2309.09117.
- Shi, C. et al. (2024). A Thorough Examination of Decoding Methods in the Era of Large Language Models. ACL Anthology. arXiv:2402.06925.
- Ravfogel, S.; Goldberg, Y.; Goldberger, J. (2023). Conformal Nucleus Sampling. arXiv:2305.02633.
- Chen, S. J. et al. (2024). Decoding Game: On Minimax Optimality of Heuristic Text Generation Strategies. arXiv:2410.03968 (ICLR 2025).
- Sen, J. et al. (2025). Advancing Decoding Strategies: Enhancements in Locally Typical Sampling for LLMs. arXiv:2506.05387.
یہ بھی دیکھیں
- بڑے زبانی ماڈل