DevLearn logo
Skill Up With Me
Interactive Learning
Signing in…

Стратегии сэмплинга: temperature, top-k, top-p, beam search

🔒 Sign in to use this
Стратегии отбора проб: температура, top-k, top-p и поиск по лучу.

После того как модель вычислила распределение вероятностей по словарю, что-то должно выбрать следующий токен. Этот выбор определяет, будет ли результат творческим или консервативным, разнообразным или повторяющимся. В этом уроке рассматриваются пять наиболее распространенных стратегий — и когда использовать каждую из них.

Стратегия 1 — Жадное декодирование
ℹ️Жадное декодирование всегда выбирает токен с наибольшей вероятностью: `next = argmax P(t | context)`. Он детерминирован: одно и то же приглашение всегда выдает один и тот же результат. Проблема: жадный алгоритм склонен к повторяющимся циклам и «безопасным», но скучным завершениям. Выбирая на каждом этапе лучший локально токен, он может пропустить глобально лучшие последовательности.
Стратегия 2 — Температура
ℹ️Температура T делит все логиты до softmax: `probs = softmax(logits / T)`. При T < 1 распределение становится более четким — модель становится более уверенной в топовых токенах. При T > 1 оно выравнивается — токены с меньшей вероятностью получают большую долю. При T → 0 поведение приближается к жадному. Типичные значения: 0,6–0,8 для точных задач (код, факты), 1,0–1,2 для творческого письма.
Попробуйте: переместите ползунки и наблюдайте за изменением распределения.

Столбики ниже показывают вероятности появления токенов после применения всех трех фильтров по порядку: сначала температура, затем top-k, затем top-p. Затененные токены исключаются из выборки.

Двигайте ползунки — смотрите, как меняется распределение ▶
SAMPLING STRATEGIES
Temperature
T = 1.0
Top-k (0 = off)
k = off
Top-p (1.0 = off)
p = off
Active tokens8
Entropy2.09 bits
Top tokenкрыша (47%)
крыша
47%
диван
26%
пол
12%
окно
6%
стол
4%
кровать
3%
вода
1%
площадка
1%
Стратегия 3. Выборка Top-k
ℹ️Выборка Top-k сохраняет только k токенов с наибольшей вероятностью, остальные обнуляет и выполняет повторную нормализацию. Это обрезает хвост распределения, не позволяя модели когда-либо выбирать очень невероятный (и обычно бессвязный) токен. Типичные значения: k = 20–100. Ограничение: k фиксировано и не адаптируется к тому, насколько уверенно модель находится в каждой позиции.
Стратегия 4 — Выборка Top-p (ядра)
ℹ️Выборка Top-p (ядро) выбирает наименьший набор токенов, кумулятивная вероятность которых ≥ p (обычно 0,9–0,95), обнуляет остальные и перенормирует. В отличие от top-k, размер ядра является адаптивным: когда модель достоверна (один токен при p = 0,95), ядро ​​имеет 1 токен; в случае неопределенности его может быть 50. Это делает top-p устойчивым на разных уровнях достоверности.
Стратегия 5 — Поиск луча
ℹ️Поиск луча сохраняет k лучших частичных последовательностей (ширину луча) на каждом этапе. Каждый расширяется до всех возможных следующих токенов; k последовательностей с наивысшей оценкой выживают. Победителем становится последовательность с наибольшей общей логарифмической вероятностью. Поиск по лучу является детерминированным и популярен в машинном переводе (ширина 4–8). Это дает плохие результаты для открытой генерации — результаты однообразны, повторяются и им не хватает разнообразия.
Параллельное сравнение
Пять стратегий — выбирайте по типу задачи
StrategyDeterministicParameterBest forWeak point
ЖадныйДаБыстрое прототипирование, точные задачиПовторяющийся локальный оптимум
ТемператураНетТ (0,1–2,0)Творческое письмо, разнообразиеВысокий T → некогерентность
Топ-кНетк (20–100)Контролируемое отрезание хвостаk не адаптируется к доверию
Топ-пНетр (0,9–0,95)Адаптивное ядро, модели чатаПлохо взаимодействует с высокими T
Поиск лучаДаширина (4–8)Перевод, структурированный выводСкучный открытый текст
💡Практический рецепт для моделей чата: температура = 0,7–0,8 в сочетании с топ-p = 0,9–0,95. OpenAI рекомендует не использовать температуру и top-p одновременно (измените одно, оставьте другое по умолчанию), но на практике часто работает умеренное сочетание. Для генерации кода: температура = 0,2, top-p = 0,95 или просто жадно.

Ключевые выводы

Стратегия выборки представляет собой баланс между детерминизмом и разнообразием. Ни одна стратегия не является лучшей для всех задач — правильный выбор зависит от того, нужен ли вам точный, творческий или структурированный результат.
Жадный = максимальное значение аргумента на каждом шаге. Детерминированный, быстрый, повторяющийся
Температура T делит логиты перед softmax: T < 1 повышает резкость, T > 1 выравнивает
Top-k обрезает хвост до k наиболее вероятных токенов — хорошо, но не адаптивно
Top-p (ядро) сохраняет суммирование наименьшего набора до p — адаптируется к достоверности модели.
Лучевой поиск = k лучших последовательностей параллельно — отлично подходит для перевода, плохо для чата
Практическое значение по умолчанию: температура 0,7–0,8 + топ-р 0,9–0,95.
🔒 Sign in to use this