Top-k sampling (BN)
Top-k স্যাম্পলিং — এটি একটি স্টোকাস্টিক ডিকোডিং পদ্ধতি যা অটোরিগ্রেসিভ ভাষা মডেলে, বড় ভাষা মডেল (LLM) সহ, টেক্সট জেনারেশনের জন্য ব্যবহৃত হয়। এর মূল লক্ষ্য হলো পরবর্তী token নির্বাচনকে একটি নির্দিষ্ট সংখ্যক () সর্বাধিক সম্ভাব্য প্রার্থীদের মধ্যে সীমাবদ্ধ রাখা, যা অসম্ভাব্য এবং প্রায়শই অপ্রাসঙ্গিক শব্দ জেনারেট হওয়া এড়াতে সাহায্য করে। এই পদ্ধতিটি সরল র্যান্ডম স্যাম্পলিংয়ের প্রথম দিকের উন্নতিগুলির মধ্যে একটি ছিল এবং দীর্ঘদিন ধরে জেনারেট করা টেক্সটের সংহতি উন্নত করার একটি জনপ্রিয় উপায় হিসেবে বিবেচিত হয়েছে।
সহজ ব্যাখ্যা
Top-k স্যাম্পলিংকে এভাবে ভাবা যায়: পরবর্তী শব্দ সমস্ত সম্ভাব্য বিকল্প থেকে নয়, বরং শুধুমাত্র সবচেয়ে সম্ভাব্যগুলির একটি সীমাবদ্ধ তালিকা থেকে বেছে নেওয়া হচ্ছে।
উদাহরণস্বরূপ, মডেলটি «আজ রাস্তায় তীব্র...» বাক্যটি সম্পূর্ণ করছে। এর শব্দভান্ডারে হাজার হাজার সম্ভাব্য পরবর্তী শব্দ রয়েছে: «বৃষ্টি», «বাতাস», «তুষার», «ঝড়» — এবং কোথাও দূরে «কোয়ান্টাম» বা কোনো র্যান্ডম চিহ্ন। কোনো সীমাবদ্ধতা ছাড়া, টেক্সট জেনারেশন বিভিন্ন ধরনের অবক্ষয় (text degeneration)-এর শিকার হয়। সর্বাধিকীকরণ পদ্ধতিগুলি (greedy decoding, beam search) একঘেয়ে, পুনরাবৃত্তিমূলক টেক্সট তৈরি করে, যেখানে কোনো ছাঁটাই ছাড়া বিশুদ্ধ স্যাম্পলিং বিতরণের «অবিশ্বস্ত লেজ» থেকে অসম্ভাব্য token বেছে নেওয়ার কারণে বিচ্ছিন্নতার ঝুঁকিতে পড়ে। Top-k প্রধানত এই দ্বিতীয় সমস্যার বিরুদ্ধে লড়াই করে — লেজ কেটে দেওয়ার মাধ্যমে এটি অর্থহীন ধারাবাহিকতার ঝুঁকি কমায়, যদিও এটি নিজে থেকে পুনরাবৃত্তির সমস্যা দূর করে না। Top-k বলে: «কেবল টি সবচেয়ে সম্ভাব্য শব্দ নাও, বাকিগুলো ভুলে যাও, সেগুলোর মধ্যে সম্ভাবনা পুনর্গণনা করো এবং এলোমেলোভাবে একটি বেছে নাও।»
সহজভাবে বললে:
- মডেলটি সবচেয়ে সম্ভাব্য ধারাবাহিকতাগুলির একটি তালিকা তৈরি করে;
- শুধুমাত্র প্রথম টি বিকল্প নেয়;
- সেগুলির মধ্য থেকে এলোমেলোভাবে একটি বেছে নেয়।
যত ছোট, ফলাফল তত সতর্ক ও পূর্বানুমানযোগ্য। যত বড়, জেনারেশন তত মুক্ত ও বৈচিত্র্যময়।
উপমা:
- রেস্তোরাঁর মেনু: ৫,০০০ আইটেম থেকে এলোমেলোভাবে বেছে নেওয়ার (অখাদ্য পাওয়ার ঝুঁকি) বা সবসময় সবচেয়ে জনপ্রিয় একটি খাবার নেওয়ার (একঘেয়ে) পরিবর্তে, ওয়েটার শুধু শীর্ষ ৪০টি প্রস্তাবিত আইটেম নিয়ে আসে — একটি যুক্তিসঙ্গত তালিকা থেকে বেছে নিন। অবশ্য, বাদ দেওয়া মেনুর অংশে হয়তো ঠিক সেই অস্বাভাবিক খাবারটি থাকতে পারত যা আপনার পছন্দ হত — এটাই পূর্বানুমানযোগ্যতার মূল্য।
- ফাইনালিস্টদের সংক্ষিপ্ত তালিকা: ১,০০০ চাকরিপ্রার্থীর মধ্য থেকে ৪০টি সেরা জীবনবৃত্তান্ত বাছাই করা হয়, তারপর সাক্ষাৎকার নেওয়া হয়।
ধারণা ও গণিত
টেক্সট জেনারেশনের প্রতিটি ধাপে একটি আদর্শ ভাষা মডেল সম্পূর্ণ শব্দভান্ডার জুড়ে একটি সম্ভাব্যতা বিতরণ প্রদান করে। Top-k স্যাম্পলিং এই প্রক্রিয়াটিকে নিম্নলিখিতভাবে পরিবর্তন করে:
- প্রার্থী বাছাই: সম্পূর্ণ শব্দভান্ডার থেকে উপসেট বাছাই করা হয়, যা সর্বোচ্চ সম্ভাবনার টি token নিয়ে গঠিত।
- ছাঁটাই: -এ অন্তর্ভুক্ত নয় এমন সমস্ত token-এর লজিট (Softmax প্রয়োগের আগে মডেলের কাঁচা পূর্বাভাস)-কে মান দেওয়া হয়, যা নর্মালাইজেশনের পরে ঠিক ০ সম্ভাবনা দেয়।
- পুনর্বিতরণ (নর্মালাইজেশন): অবশিষ্ট টি token-এর সম্ভাবনাগুলি এমনভাবে স্কেল করা হয় যাতে তাদের নতুন যোগফল ১ হয়।
- নমুনা গ্রহণ: এই নতুন, ছাঁটাই করা বিতরণ থেকে এলোমেলোভাবে পরবর্তী token বেছে নেওয়া হয়।
এইভাবে, Top-k প্রার্থীর সংখ্যায় একটি কঠোর সীমা আরোপ করে: -এর চেয়ে কম সম্ভাবনার র্যাংকের শব্দগুলি কখনই বাছাই হবে না।
প্যারামিটারের প্রভাব
- ছোট (উদাহরণস্বরূপ, – ): জেনারেশনকে আরও রক্ষণশীল ও পূর্বানুমানযোগ্য করে তোলে। মডেলটি শুধুমাত্র সবচেয়ে সম্ভাব্য শব্দগুলির একটি অত্যন্ত সীমাবদ্ধ সেট থেকে বেছে নেয়। এটি সংহতি বাড়ায়, তবে পুনরাবৃত্তিমূলক ও একঘেয়ে টেক্সট তৈরি হতে পারে।
- বড় (উদাহরণস্বরূপ, – ): টেক্সটের বৈচিত্র্য ও সৃজনশীলতা বৃদ্ধি করে, কারণ নমুনায় আরও বেশি বিকল্প অন্তর্ভুক্ত হয়। তবে এটি কম প্রাসঙ্গিক বা অনুপযুক্ত token অন্তর্ভুক্ত হওয়ার ঝুঁকিও বাড়ায়।
- সীমান্ত ক্ষেত্র:
- : greedy decoding-এর সমতুল্য। মডেলটি সর্বদা সবচেয়ে সম্ভাব্য token বেছে নেয়।
- = শব্দভান্ডারের আকার: কোনো ছাঁটাই ছাড়া সম্পূর্ণ বিতরণ থেকে আদর্শ স্যাম্পলিংয়ের সমতুল্য।
ঐতিহাসিক তাৎপর্য
ডিকোডিং পদ্ধতি হিসেবে Top-k স্যাম্পলিং অ্যাঞ্জেলা ফ্যান ও তার সহকর্মীদের (২০১৮) «Hierarchical Neural Story Generation» গবেষণায় প্রাথমিকভাবে সফলভাবে প্রয়োগ করা হয়েছিল, যেখানে লেখকরা গল্পের অনুক্রমিক জেনারেশন সিস্টেমে top-k random sampling (with ) ব্যবহার করেছিলেন এবং দেখিয়েছিলেন যে এই কৌশলটি beam search এবং সম্পূর্ণ র্যান্ডম স্যাম্পলিংয়ের চেয়ে উল্লেখযোগ্যভাবে বেশি কার্যকর, যেটি অসম্ভাব্য শব্দ অন্তর্ভুক্ত করার ঝুঁকি রাখে।
তবে যে মূল গবেষণাটি পদ্ধতিগতভাবে টেক্সট অবক্ষয় সমস্যা বিশ্লেষণ করেছে এবং দেখিয়েছে যে truncation পদ্ধতিগুলি, top-k সহ, জেনারেশনের মান উল্লেখযোগ্যভাবে উন্নত করে, সেটি হলো 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» হিসেবে উল্লেখ করা হয়েছে), যা দীর্ঘ ও সংহত টেক্সট জেনারেট করতে সাহায্য করেছিল।
অন্যান্য ডিকোডিং পদ্ধতির সাথে তুলনা
Top-k বনাম Top-p
Top-k অনেকাংশে পরিপূরক হয়েছে, এবং কিছু কাজে একটি আরও উন্নত পদ্ধতি দ্বারা প্রতিস্থাপিত হয়েছে — Top-p (nucleus) স্যাম্পলিং।
- Top-k-এর প্রধান ত্রুটি — এর অ-অভিযোজনযোগ্যতা। -এর স্থির মান সম্ভাব্যতা বিতরণের আকার বিবেচনা করে না:
- যখন বিতরণ তীক্ষ্ণ (মডেল কয়েকটি token সম্পর্কে নিশ্চিত), Top-k কৃত্রিমভাবে নমুনা প্রসারিত করতে পারে, অসম্ভাব্য প্রার্থীদের অন্তর্ভুক্ত করে।
- যখন বিতরণ সমতল (মডেল অনিশ্চিত এবং অনেক token-এর সম্ভাবনা অনুরূপ), Top-k অকালে অনেক উপযুক্ত বিকল্প কেটে দিতে পারে।
- তদুপরি, Top-k বিতরণের «লেজ»-কে কঠোরভাবে কাটে (tail truncation), যার কারণে প্রাসঙ্গিকভাবে উপযুক্ত কিন্তু বিরল token হারিয়ে যেতে পারে — পদ্ধতিটি সংহতির জন্য সম্ভাব্য সৃজনশীলতা বিসর্জন দেয়।
- Top-p, বিপরীতভাবে, নমুনার আকার গতিশীলভাবে অভিযোজিত করে, তাদের সামগ্রিক সম্ভাবনার ভিত্তিতে token বাছাই করে। এটি এটিকে আরও নমনীয় ও নির্ভরযোগ্য করে তোলে।
- বাস্তবে উভয় পদ্ধতি প্রায়ই একসাথে ক্রমিক ফিল্টার হিসেবে ব্যবহৃত হয়: একটি মোটামুটিভাবে প্রার্থীর সংখ্যা সীমিত করে, অন্যটি মডেলের আত্মবিশ্বাস অনুযায়ী গতিশীলভাবে নমুনা সংকুচিত করে। তাদের প্রয়োগের সঠিক ক্রম নির্দিষ্ট framework-এর বাস্তবায়নের উপর নির্ভর করে।
Top-k বনাম তাপমাত্রা
- তাপমাত্রা সমগ্র সম্ভাব্যতা বিতরণের আকার পরিবর্তন করে, কিন্তু token কাটে না। এটি সমস্ত প্রার্থীর আপেক্ষিক সম্ভাবনাকে প্রভাবিত করে।
- Top-k একটি কঠোর ছাঁটাই আরোপ করে, শীর্ষ--এর বাইরের token-গুলিকে সম্পূর্ণরূপে বাদ দিয়ে।
বাস্তবে Top-k তাপমাত্রা ও Top-p-এর সাথে একত্রে ব্যবহার করা যেতে পারে। ফিল্টার প্রয়োগের সঠিক ক্রম framework-এর উপর নির্ভর করে: উদাহরণস্বরূপ, Hugging Face Transformers-এ পাইপলাইনটি হলো তাপমাত্রা → Top-k → Top-p, অর্থাৎ তাপমাত্রা প্রথমে লজিট () স্কেল করে, তারপর Top-k অপ্রয়োজনীয় token-এর দীর্ঘ «লেজ» কেটে দেয়, এবং এরপর Top-p মডেলের আত্মবিশ্বাসের উপর নির্ভর করে গতিশীলভাবে নমুনা সংকুচিত করে। এক্ষেত্রে পৃথক ধাপগুলি সেটিংসের উপর নির্ভর করে বাদ দেওয়া যেতে পারে: যদি , Top-k ধাপ প্রয়োগ হয় না; যদি , Top-p ধাপ প্রয়োগ হয় না।
ব্যবহারিক প্রয়োগ
যদিও Top-p একটি আরও অভিযোজিত পদ্ধতি এবং মুক্ত টেক্সট জেনারেশনের জন্য প্রায়ই ভিত্তি হিসেবে ব্যবহৃত হয়, তবুও কোনো সর্বজনীনভাবে সর্বোত্তম ডিকোডিং পদ্ধতি নেই — সর্বোত্তম পছন্দ কাজ, মডেল এবং অগ্রাধিকারের (গুণমান, গতি, স্থিতিশীলতা) উপর নির্ভর করে। Top-k সমস্ত প্রধান framework-এ (Hugging Face Transformers, vLLM এবং অন্যান্য) ব্যাপকভাবে সমর্থিত একটি প্যারামিটার হিসেবে রয়ে গেছে এবং স্বাধীনভাবে এবং অন্যান্য পদ্ধতির সংমিশ্রণে সক্রিয়ভাবে ব্যবহৃত হয়।
- সাধারণ মান: বাস্তবে -এর মান প্রায়ই কয়েক দশ token (উদাহরণস্বরূপ, ১০, ৪০, ৫০) ব্যবহার করা হয়, তবে সর্বোত্তম মান মডেল ও কাজের উপর নির্ভর করে।
- সুপারিশ: মুক্ত টেক্সট জেনারেশনের জন্য প্রায়ই Top-p পছন্দ করা হয়। যদি Top-k ব্যবহার করা হয়, তাহলে এটি একটি মধ্যম তাপমাত্রার সাথে সংযুক্ত করা উচিত এবং নির্দিষ্ট কাজের জন্য -এর মান সাবধানে বেছে নেওয়া উচিত। উচ্চ তাপমাত্রায় Top-k একটি অতিরিক্ত «সুরক্ষা ব্যবস্থা» হিসেবেও সুবিধাজনক।
- দ্রষ্টব্য: Framework-গুলিতে 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.
আরও দেখুন
- বড় ভাষা মডেল