Top-k sampling (HI)

From Systems analysis Wiki
Jump to navigation Jump to search

Top-k सैम्पलिंग — यह एक stochastic decoding विधि है जिसका उपयोग autoregressive भाषा मॉडलों में, जिनमें बड़े भाषा मॉडल (LLM) शामिल हैं, टेक्स्ट उत्पन्न करने के लिए किया जाता है। इसका मुख्य उद्देश्य अगले token के चयन को सबसे अधिक संभावित उम्मीदवारों की एक निश्चित संख्या (k) तक सीमित करना है, जिससे कम संभावित और अक्सर अनुचित शब्दों की उत्पत्ति से बचा जा सके। यह विधि सरल random सैम्पलिंग के पहले सुधारों में से एक थी और लंबे समय तक उत्पन्न टेक्स्ट की coherence बेहतर करने का एक लोकप्रिय तरीका रही।

सरल व्याख्या

Top-k सैम्पलिंग को इस प्रकार समझा जा सकता है: अगला शब्द सभी संभावित विकल्पों में से नहीं, बल्कि केवल सबसे अधिक संभावित विकल्पों की एक सीमित सूची से चुना जाता है।

उदाहरण के लिए, मॉडल वाक्य «आज बाहर बहुत तेज़...» को पूरा कर रहा है। उसके शब्दकोश में हजारों continuations हैं: «बारिश», «हवा», «बर्फ», «तूफान» — और कहीं दूर «क्वांटम» या कोई यादृच्छिक चिह्न। बिना किसी सीमा के टेक्स्ट उत्पादन विभिन्न प्रकार की गिरावट (text degeneration) से ग्रस्त होता है। Maximization विधियाँ (greedy decoding, beam search) नीरस, दोहराव वाला टेक्स्ट उत्पन्न करती हैं, जबकि बिना truncation के शुद्ध सैम्पलिंग वितरण की «अविश्वसनीय पूँछ» से कम संभावित token चुनने के कारण असंगतता का जोखिम उठाती है। Top-k मुख्य रूप से इसी दूसरी समस्या से लड़ता है — पूँछ को काटकर निरर्थक continuations का जोखिम कम करता है, हालाँकि यह अकेले दोहराव को समाप्त नहीं करता। Top-k कहता है: «केवल k सबसे संभावित शब्द लो, बाकी सब भूल जाओ, उनमें से संभावनाओं की पुनर्गणना करो और उनमें से एक को यादृच्छिक रूप से चुनो।»

सरल शब्दों में:

  • मॉडल सबसे संभावित continuations की एक सूची बनाता है;
  • केवल पहले k विकल्प लेता है;
  • उनमें से एक को यादृच्छिक रूप से चुनता है।

k जितना छोटा होगा, परिणाम उतना ही सतर्क और पूर्वानुमानित होगा। k जितना बड़ा होगा, उत्पादन उतना ही स्वतंत्र और विविध होगा।

उपमाएँ:

  • रेस्तरां मेनू: 5,000 विकल्पों में से यादृच्छिक चयन (अखाद्य मिलने का जोखिम) या हमेशा सबसे लोकप्रिय व्यंजन (नीरस) के बजाय वेटर केवल शीर्ष 40 अनुशंसित व्यंजन लाता है — एक उचित सूची से चुनें। हालाँकि, कभी-कभी काटे गए मेनू के हिस्से में वह असामान्य व्यंजन हो सकता था जो आपको पसंद आता — यह पूर्वानुमानीयता की कीमत है।
  • फाइनलिस्टों की छोटी सूची: 1,000 उम्मीदवारों में से 40 सर्वश्रेष्ठ रेज़्यूमे बचाए जाते हैं, और फिर साक्षात्कार आयोजित किए जाते हैं।

संकल्पना और गणित

टेक्स्ट उत्पादन के प्रत्येक चरण में एक मानक भाषा मॉडल पूरे शब्दकोश V पर एक संभाव्यता वितरण P(x|x1:i1) देता है। Top-k सैम्पलिंग इस प्रक्रिया को निम्न प्रकार से संशोधित करता है:

  • उम्मीदवारों का चयन: पूरे शब्दकोश में से उपसमुच्चय V(k) चुना जाता है, जिसमें सर्वाधिक संभावना वाले k token होते हैं।
  • छँटाई: V(k) में शामिल न होने वाले सभी token के logits (Softmax लागू करने से पहले मॉडल के कच्चे पूर्वानुमान) को मान दिया जाता है, जो normalization के बाद बिल्कुल 0 के बराबर संभावना देता है।
  • पुनर्वितरण (normalization): शेष k token की संभावनाओं को इस प्रकार स्केल किया जाता है कि उनका नया योग 1 के बराबर हो।
  • चयन: अगला token इस नए, truncated वितरण से यादृच्छिक रूप से चुना जाता है।

इस प्रकार, Top-k उम्मीदवारों की संख्या पर कठोर सीमा लगाता है: जिन शब्दों की संभावना रैंक k से कम है वे कभी नहीं चुने जाएंगे।

पैरामीटर k का प्रभाव

  • छोटा k (उदाहरण के लिए, k=510): उत्पादन को अधिक रूढ़िवादी और पूर्वानुमानित बनाता है। मॉडल केवल सबसे संभावित शब्दों के बहुत सीमित समूह से चुनता है। इससे coherence बढ़ती है, लेकिन दोहराव वाला और नीरस टेक्स्ट बन सकता है।
  • बड़ा k (उदाहरण के लिए, k=50100): टेक्स्ट की विविधता और रचनात्मकता बढ़ाता है क्योंकि अधिक विकल्प नमूने में शामिल होते हैं। हालाँकि इससे कम प्रासंगिक या अनुचित token शामिल होने का जोखिम भी बढ़ता है।
  • सीमांत मामले:
    • k=1: greedy decoding के समतुल्य। मॉडल हमेशा सबसे संभावित token चुनता है।
    • k = शब्दकोश का आकार: बिना किसी छँटाई के पूर्ण वितरण से मानक सैम्पलिंग के समतुल्य।

ऐतिहासिक महत्व

Decoding विधि के रूप में Top-k सैम्पलिंग का उपयोग Angela Fan और उनके सहयोगियों (2018) के «Hierarchical Neural Story Generation» शोध में शुरुआती सफल प्रयोगों में से एक था, जहाँ लेखकों ने कहानियों की श्रेणीबद्ध उत्पादन प्रणाली में top-k random sampling (जिसमें k=10) का उपयोग किया और दिखाया कि यह रणनीति beam search और पूर्ण random सैम्पलिंग की तुलना में काफी अधिक प्रभावी है, जिसमें कम संभावित शब्द शामिल होने का जोखिम रहता है।

हालाँकि, वह प्रमुख कार्य जिसने टेक्स्ट की गिरावट की समस्या का व्यवस्थित रूप से विश्लेषण किया और दिखाया कि top-k सहित truncation विधियाँ उत्पादन की गुणवत्ता में उल्लेखनीय सुधार करती हैं, Holtzman et al. (2019) का «The Curious Case of Neural Text Degeneration» लेख था। साथ ही, लेखकों ने top-p (nucleus sampling) को top-k के अधिक अनुकूली विकल्प के रूप में प्रस्तावित किया और अपनी HUSE-मेट्रिक के अनुसार दिखाया कि nucleus sampling तुलनात्मक रणनीतियों में बेहतर परिणाम देती है।

उदाहरण के लिए, GPT-2 के शुरुआती प्रदर्शनों और सुझावों में `top_k=40` मान का व्यापक रूप से उपयोग किया जाता था (इसे OpenAI के कोड में «generally a good value» के रूप में उल्लेख किया गया है), जिससे लंबे और coherent टेक्स्ट उत्पन्न करने में मदद मिलती थी।

अन्य decoding विधियों से तुलना

Top-k बनाम Top-p

Top-k को काफी हद तक पूरक बनाया गया और कई कार्यों में अधिक उन्नत विधि — Top-p (nucleus) सैम्पलिंग ने इसका स्थान ले लिया।

  • Top-k की मुख्य कमी — इसकी अनुकूलनहीनता है। निश्चित मान k संभाव्यता वितरण के आकार को ध्यान में नहीं रखता:
    • जब वितरण नुकीला हो (मॉडल कुछ token के बारे में आश्वस्त हो), तो Top-k कम संभावित उम्मीदवारों को शामिल करके चयन को कृत्रिम रूप से बढ़ा सकता है।
    • जब वितरण सपाट हो (मॉडल अनिश्चित हो और कई token की संभावना समान हो), तो Top-k कई उपयुक्त विकल्पों को समय से पहले काट सकता है।
    • इसके अलावा, Top-k वितरण की «पूँछ» को कठोर रूप से काटता है (tail truncation), जिससे संदर्भ में उचित लेकिन दुर्लभ token खो सकते हैं — विधि संभावित रचनात्मकता की बलि देकर coherence प्राप्त करती है।
  • Top-p, इसके विपरीत, चयन के आकार को गतिशील रूप से अनुकूलित करता है, token को उनकी संचयी संभावना के आधार पर चुनता है। इससे यह अधिक लचीला और विश्वसनीय बनता है।
  • व्यवहार में दोनों विधियाँ अक्सर संयुक्त रूप से क्रमिक फ़िल्टर के रूप में उपयोग की जाती हैं: एक उम्मीदवारों की संख्या को मोटे तौर पर सीमित करता है, दूसरा मॉडल की निश्चितता के आधार पर चयन को गतिशील रूप से संकुचित करता है। उनके आवेदन का सटीक क्रम विशेष framework के कार्यान्वयन पर निर्भर करता है।

Top-k बनाम तापमान (Temperature)

  • तापमान पूरे संभाव्यता वितरण के आकार को बदलता है, लेकिन token को नहीं काटता। यह सभी उम्मीदवारों की सापेक्ष संभावनाओं को प्रभावित करता है।
  • Top-k कठोर छँटाई लागू करता है, शीर्ष-k से बाहर के token को पूरी तरह बाहर करता है।

व्यवहार में Top-k का उपयोग तापमान और Top-p के साथ संयुक्त रूप से किया जा सकता है। फ़िल्टर लागू करने का सटीक क्रम framework पर निर्भर करता है: उदाहरण के लिए, Hugging Face Transformers में पाइपलाइन तापमान → Top-k → Top-p की तरह दिखती है, अर्थात् तापमान पहले logits को स्केल करता है (l=l/τ), फिर Top-k अनावश्यक token की लंबी «पूँछ» काटता है, और उसके बाद Top-p मॉडल की निश्चितता के आधार पर चयन को गतिशील रूप से संकुचित करता है। अलग-अलग चरण सेटिंग्स के आधार पर छोड़े जा सकते हैं: यदि top_k=0, तो Top-k चरण लागू नहीं होता; यदि top_p=1.0, तो Top-p चरण लागू नहीं होता।

व्यावहारिक उपयोग

यद्यपि Top-p अधिक अनुकूली विधि है और अक्सर खुली टेक्स्ट उत्पादन के लिए आधार के रूप में उपयोग की जाती है, कोई सार्वभौमिक रूप से बेहतर decoding विधि नहीं है — इष्टतम चुनाव कार्य, मॉडल और प्राथमिकताओं (गुणवत्ता, गति, स्थिरता) पर निर्भर करता है। Top-k सभी प्रमुख frameworks (Hugging Face Transformers, vLLM आदि) में व्यापक रूप से समर्थित पैरामीटर बना हुआ है और स्वतंत्र रूप से तथा अन्य विधियों के संयोजन में सक्रिय रूप से उपयोग किया जाता है।

  • सामान्य मान: व्यवहार में अक्सर k के दसों token के मान (जैसे 10, 40, 50) उपयोग किए जाते हैं, लेकिन इष्टतम मान मॉडल और कार्य पर निर्भर करता है।
  • सुझाव: खुली टेक्स्ट उत्पादन के लिए अक्सर Top-p को प्राथमिकता दी जाती है। यदि Top-k का उपयोग किया जाए, तो इसे मध्यम तापमान के साथ मिलाया जाना चाहिए और k मान को विशेष कार्य के अनुसार सावधानी से चुना जाना चाहिए। Top-k उच्च तापमान पर अतिरिक्त «सुरक्षा कवच» के रूप में भी उपयोगी है।
  • नोट: Frameworks में Top-k को Repetition Penalty (दोहराव के लिए दंड) और पैरामीटर no_repeat_ngram_size के साथ जोड़ा जा सकता है, ताकि मॉडल को शीर्ष-k सूची के समान शब्दों पर बार-बार अटकने से रोका जा सके।

साहित्य

मूलभूत कार्य

  • 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.

यह भी देखें

  • बड़े भाषा मॉडल