core-ai
Словарь ↗Лучевой поиск
Лучевой поиск (beam search) — стратегия декодирования, при которой вместо выбора одного токена на каждом шаге одновременно поддерживается несколько кандидатов-продолжений. Декодер держит фиксированное число частичных последовательностей — ширину луча, — расширяет каждую, оценивает результаты по накопленной вероятности и оставляет лучшие. В конце возвращается полная последовательность с наибольшей оценкой. По сравнению с жадным декодированием, которое всегда берёт локально самый вероятный токен и не умеет отыгрывать назад после неудачного раннего выбора, лучевой поиск обходит достаточную часть дерева, чтобы найти варианты, начинающиеся невыразительно, но заканчивающиеся хорошо. Его естественная область — задачи с одним правильным ответом: машинный перевод, распознавание речи, структурированное извлечение, код, который обязан разбираться парсером. Для открытой генерации он подходит куда хуже. Оптимизация суммарной вероятности систематически предпочитает короткий, осторожный и повторяющийся текст — поэтому свободные ассистенты обычно работают на выборке, управляемой температурой и top-p. Второй фактор — стоимость: луч ширины четыре стоит примерно вчетверо дороже жадного декодирования при той же длине вывода. Большинство размещённых чат-API вообще не открывают лучевой поиск, так что на практике это рычаг для случая, когда модель запускается своими силами, у задачи есть единственный верный ответ и заплатить за него дешевле, чем многократно сэмплировать и выбирать.
Похожие термины