Top-k sampling (EL)

From Systems analysis Wiki
Jump to navigation Jump to search

Δειγματοληψία Top-k — είναι μια στοχαστική μέθοδος αποκωδικοποίησης που χρησιμοποιείται σε αυτοπαλίνδρομα γλωσσικά μοντέλα, συμπεριλαμβανομένων μεγάλων γλωσσικών μοντέλων (LLM), για τη δημιουργία κειμένου. Ο κύριος στόχος της είναι να περιορίσει την επιλογή του επόμενου token σε έναν σταθερό αριθμό (k) πιο πιθανών υποψηφίων, αποφεύγοντας έτσι τη δημιουργία απίθανων και συχνά άσχετων λέξεων. Αυτή η μέθοδος ήταν μία από τις πρώτες βελτιώσεις της απλής τυχαίας δειγματοληψίας και για μεγάλο χρονικό διάστημα αποτελούσε δημοφιλή τρόπο βελτίωσης της συνοχής του παραγόμενου κειμένου.

Απλή εξήγηση

Η δειγματοληψία Top-k μπορεί να παρασταθεί ως επιλογή της επόμενης λέξης όχι από όλες τις πιθανές επιλογές, αλλά μόνο από μια περιορισμένη λίστα των πιο πιθανών.

Για παράδειγμα, το μοντέλο συμπληρώνει τη φράση «Σήμερα έξω έπεφτε δυνατή…». Στο λεξιλόγιό του υπάρχουν χιλιάδες συνέχειες: «βροχή», «αέρας», «χιόνι», «καταιγίδα» — και κάπου μακριά «κβαντικός» ή ένας τυχαίος χαρακτήρας. Χωρίς περιορισμούς, η παραγωγή κειμένου υπόκειται σε διάφορες μορφές υποβάθμισης (text degeneration). Οι μέθοδοι μεγιστοποίησης (greedy decoding, beam search) παράγουν βαρετό, επαναλαμβανόμενο κείμενο, ενώ η καθαρή δειγματοληψία χωρίς περικοπή κινδυνεύει να οδηγήσει σε ασυναρτησία λόγω επιλογής απίθανων token από την «αναξιόπιστη ουρά» της κατανομής. Το Top-k αντιμάχεται κυρίως το δεύτερο πρόβλημα — αποκόπτοντας την ουρά, μειώνει τον κίνδυνο αδύναμων συνεχειών, αν και από μόνο του δεν εξαλείφει την επαναληπτικότητα. Το Top-k λέει: «Πάρε μόνο k τις πιο πιθανές λέξεις, ξέχνα τα υπόλοιπα, υπολόγισε ξανά τις πιθανότητες μεταξύ τους και επέλεξε μία τυχαία».

Απλούστερα:

  • το μοντέλο συντάσσει μια λίστα με τις πιο πιθανές συνέχειες·
  • παίρνει μόνο τις πρώτες k επιλογές·
  • επιλέγει τυχαία μία από αυτές.

Όσο μικρότερο το k, τόσο πιο συντηρητικό και προβλέψιμο το αποτέλεσμα. Όσο μεγαλύτερο το k, τόσο πιο ελεύθερη και ποικιλόμορφη η παραγωγή.

Αναλογίες:

  • Μενού εστιατορίου: αντί για τυχαία επιλογή από 5.000 πιάτα (κίνδυνος να λάβεις κάτι αδύνατο να φαγωθεί) ή πάντα το ίδιο πιο δημοφιλές πιάτο (βαρετό), ο σερβιτόρος φέρνει μόνο τα κορυφαία 40 συνιστώμενα — επιλέγεις από μια λογική λίστα. Βέβαια, κάποιες φορές στο αποκομμένο τμήμα του μενού μπορεί να βρισκόταν ακριβώς εκείνο το ασυνήθιστο πιάτο που θα σου άρεσε — αυτό είναι το κόστος της προβλεψιμότητας.
  • Σύντομη λίστα φιναλίστ: από 1.000 υποψηφίους για μια θέση εργασίας κρατούν τα 40 καλύτερα βιογραφικά, και στη συνέχεια διεξάγουν συνεντεύξεις.

Έννοια και μαθηματικά

Σε κάθε βήμα παραγωγής κειμένου, το τυπικό γλωσσικό μοντέλο παράγει μια πιθανοτική κατανομή P(x|x1:i1) σε ολόκληρο το λεξιλόγιο V. Η δειγματοληψία Top-k τροποποιεί αυτή τη διαδικασία ως εξής:

  • Επιλογή υποψηφίων: Από το σύνολο του λεξιλογίου επιλέγεται ένα υποσύνολο V(k), αποτελούμενο από k token με τις υψηλότερες πιθανότητες.
  • Αποκοπή: Στα logits (τις ακατέργαστες προβλέψεις του μοντέλου πριν την εφαρμογή του Softmax) όλων των token που δεν συμπεριλήφθηκαν στο V(k) αποδίδεται η τιμή , η οποία μετά την κανονικοποίηση δίνει πιθανότητα αυστηρά ίση με 0.
  • Αναδιανομή (κανονικοποίηση): Οι πιθανότητες των υπόλοιπων k token κλιμακώνονται ώστε το νέο άθροισμά τους να είναι ίσο με 1.
  • Δειγματοληψία: Το επόμενο token επιλέγεται τυχαία από αυτή τη νέα, περικομμένη κατανομή.

Έτσι, το Top-k εισάγει αυστηρό κατώφλι ως προς τον αριθμό των υποψηφίων: λέξεις με κατάταξη πιθανότητας κάτω από k δεν θα επιλεγούν ποτέ.

Επίδραση της παραμέτρου k

  • Μικρό k (π.χ. k=510): Κάνει την παραγωγή πιο συντηρητική και προβλέψιμη. Το μοντέλο επιλέγει μόνο από ένα πολύ περιορισμένο σύνολο των πιο πιθανών λέξεων. Αυτό αυξάνει τη συνοχή, αλλά μπορεί να οδηγήσει σε επαναλαμβανόμενο και βαρετό κείμενο.
  • Μεγάλο k (π.χ. k=50100): Αυξάνει την ποικιλομορφία και τη δημιουργικότητα του κειμένου, καθώς περισσότερες επιλογές εισέρχονται στη δειγματοληψία. Ωστόσο, αυτό αυξάνει επίσης τον κίνδυνο συμπερίληψης λιγότερο σχετικών ή άσχετων token.
  • Οριακές περιπτώσεις:
    • k=1: Ισοδυναμεί με greedy decoding. Το μοντέλο επιλέγει πάντα το πιο πιθανό token.
    • k = μέγεθος λεξιλογίου: Ισοδυναμεί με τυπική δειγματοληψία από την πλήρη κατανομή, χωρίς αποκοπή.

Ιστορική σημασία

Η δειγματοληψία Top-k ως μέθοδος αποκωδικοποίησης ήταν μία από τις πρώτες επιτυχημένες εφαρμογές στην εργασία της Angela Fan και των συνεργατών της (2018) «Hierarchical Neural Story Generation», όπου οι συγγραφείς χρησιμοποίησαν top-k random sampling (με k=10) σε ένα σύστημα ιεραρχικής παραγωγής ιστοριών και έδειξαν ότι αυτή η στρατηγική είναι σημαντικά πιο αποτελεσματική από το beam search και την πλήρη τυχαία δειγματοληψία, η οποία κινδυνεύει να εισάγει απίθανες λέξεις.

Ωστόσο, η βασική εργασία που ανέλυσε συστηματικά το πρόβλημα της υποβάθμισης κειμένου και έδειξε ότι οι μέθοδοι περικοπής, συμπεριλαμβανομένου του 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 vs. Top-p

Το Top-k συμπληρώθηκε σε μεγάλο βαθμό, και σε ορισμένες εργασίες αντικαταστάθηκε από την πιο προηγμένη μέθοδο — Top-p (nucleus) sampling.

  • Το κύριο μειονέκτημα του Top-k είναι η μη προσαρμοστικότητά του. Η σταθερή τιμή k δεν λαμβάνει υπόψη τη μορφή της πιθανοτικής κατανομής:
    • Όταν η κατανομή είναι απότομη (το μοντέλο είναι σίγουρο για λίγα token), το Top-k μπορεί να διευρύνει τεχνητά τη δειγματοληψία, συμπεριλαμβάνοντας απίθανους υποψηφίους.
    • Όταν η κατανομή είναι επίπεδη (το μοντέλο δεν είναι σίγουρο και πολλά token έχουν παρόμοια πιθανότητα), το Top-k μπορεί πρόωρα να αποκόψει πολλές κατάλληλες επιλογές.
    • Επιπλέον, το Top-k αποκόπτει αυστηρά την «ουρά» της κατανομής (tail truncation), με αποτέλεσμα τα συμφραζόμενα κατάλληλα αλλά σπάνια token να μπορεί να χαθούν — η μέθοδος θυσιάζει την πιθανή δημιουργικότητα για χάρη της συνοχής.
  • Το Top-p, αντίθετα, προσαρμόζει δυναμικά το μέγεθος της δειγματοληψίας, επιλέγοντας token βάσει της αθροιστικής τους πιθανότητας. Αυτό το καθιστά πιο ευέλικτο και αξιόπιστο.
  • Στην πράξη, και οι δύο μέθοδοι χρησιμοποιούνται συχνά από κοινού ως διαδοχικά φίλτρα: το ένα περιορίζει αδρά τον αριθμό των υποψηφίων, το άλλο στενεύει δυναμικά τη δειγματοληψία με βάση την εμπιστοσύνη του μοντέλου. Η ακριβής σειρά εφαρμογής τους εξαρτάται από την υλοποίηση του εκάστοτε framework.

Top-k vs. Θερμοκρασία

  • Η θερμοκρασία αλλάζει τη μορφή ολόκληρης της πιθανοτικής κατανομής, αλλά δεν αποκόπτει token. Επηρεάζει τις σχετικές πιθανότητες όλων των υποψηφίων.
  • Το Top-k εισάγει αυστηρή αποκοπή, αποκλείοντας εντελώς τα token εκτός της κορυφής-k.

Στην πράξη, το 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 είναι πιο προσαρμοστική μέθοδος και χρησιμοποιείται συχνά ως βάση για ανοιχτή παραγωγή κειμένου, δεν υπάρχει καθολικά καλύτερη μέθοδος αποκωδικοποίησης — η βέλτιστη επιλογή εξαρτάται από την εργασία, το μοντέλο και τις προτεραιότητες (ποιότητα, ταχύτητα, ευρωστία). Το Top-k παραμένει ευρέως υποστηριζόμενη παράμετρος σε όλα τα κύρια framework (Hugging Face Transformers, vLLM κ.ά.) και χρησιμοποιείται ενεργά τόσο αυτόνομα όσο και σε συνδυασμό με άλλες μεθόδους.

  • Τυπικές τιμές: Στην πράξη χρησιμοποιούνται συχνά τιμές k της τάξης των δεκάδων token (π.χ. 10, 40, 50), αλλά το βέλτιστο εξαρτάται από το μοντέλο και την εργασία.
  • Συστάσεις: Για ανοιχτή παραγωγή κειμένου προτιμάται συχνά το Top-p. Εάν χρησιμοποιείται Top-k, θα πρέπει να συνδυάζεται με μέτρια θερμοκρασία και να επιλέγεται προσεκτικά η τιμή k ανάλογα με τη συγκεκριμένη εργασία. Το Top-k είναι επίσης βολικό ως επιπλέον «ασφαλιστική δικλίδα» σε υψηλή θερμοκρασία.
  • Σημείωση: Στα framework, το 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.

Δείτε επίσης

  • Μεγάλα γλωσσικά μοντέλα