Beam Search

Udostępnij𝕏infKopiuj link

Wprowadzenie

Beam Search to algorytm dekodowania sekwencji stosowany w modelach generatywnych (np. GPT, T5, Llama, Mistral). Jest znacznie lepszy niż prosty Greedy Search, ponieważ rozważa wiele możliwych ścieżek jednocześnie.

Jak działa Beam Search?

W każdym kroku generowania algorytm zachowuje beam width (szerokość belki) najlepszych sekwencji. Zamiast wybierać tylko jeden token o najwyższym prawdopodobieństwie (jak w Greedy), Beam Search rozważa wiele kombinacji.

Porównanie algorytmów dekodowania

  • Greedy Search – najszybszy, ale często generuje bezsensowny tekst
  • Beam Search – lepsza jakość, umiarkowana szybkość
  • Sampling (Top-k, Top-p / Nucleus) – największa kreatywność
  • Beam Search + Temperature – często najlepsze wyniki w praktyce

Zalety Beam Search

  • Lepsza spójność i jakość generowanego tekstu
  • Skuteczny w zadaniach wymagających precyzji (tłumaczenie maszynowe, podsumowania)
  • Możliwość kontrolowania kompromisu między jakością a szybkością (parametr beam width)

Wady

  • Większe zużycie pamięci i wolniejszy niż sampling
  • Może generować powtarzający się tekst przy dużej szerokości belki
  • Nie zawsze gwarantuje globalnie najlepsze rozwiązanie

Aktualny status (2026)

Beam Search nadal jest jedną z najpopularniejszych metod dekodowania w produkcji, szczególnie w zadaniach wymagających wysokiej jakości (tłumaczenia, generowanie kodu, streszczenia). Nowoczesne modele często łączą Beam Search z technikami takimi jak Length Penalty, Repetition Penalty oraz Contrastive Decoding.

Powiązane pojęcia