# Beam Search(束搜索)通俗解释 一句话:**一种在生成序列(文本、翻译、语音)时,比“贪心”更优、比“穷举”更快的搜索算法**。 ## 1. 核心场景 AI 生成文字时,每一步都要选下一个词: - Greedy Search(贪心):**每步只选概率最高的1个**,容易局部最优、整体很差。 - Exhaustive Search(穷举):**试所有可能**,效果最好但太慢、算力爆炸。 - **Beam Search**:**每步只保留概率最高的 k 个候选路径**,平衡效果与速度。 ## 2. 超简单比喻 你要走迷宫找终点: - 贪心:每步只走眼前最好的一条路。 - 束搜索(beam=k):**每步保留 top-k 条最好的路**,一起往前走,最后选整条路径概率最大的。 ## 3. 关键参数 - **beam width(束宽)= k** - k=1 = 贪心搜索 - k越大 → 效果越好、越慢 - k=无穷 = 穷举 ## 4. 工作流程(极简) 1. 第一步:选出**概率最高的 k 个词**。 2. 第二步:对这 k 个词,**分别生成下一个词**,再从所有结果里**重新选 top-k**。 3. 重复直到结束,**选整条序列概率最大**的输出。 ## 5. 优点 & 缺点 ✅ 优点: - 比贪心**更通顺、更少局部最优** - 比穷举**快得多、可实际使用** ❌ 缺点: - 仍不是全局最优 - 可能生成**重复、呆板、过于安全**的句子(现在大模型多用采样代替)