用 AI 摆两步束搜索:第一步最可能的词,未必带来最可能的整句
生成文字时,每一步都选概率最高的候选,会不会自动得到概率最高的整段?让AI把输出缩成两个符号,画出每个前缀的后续概率,就能亲手比较贪心解码与束搜索的区别。这不是让模型写漂亮句子,而是检查搜索到底留下了什么。
AI模型生成的概念插图:少量分支继续延伸,其余被舍弃;不是模型运行截图、照片或正文概率树的精确图。
先固定长度,免去额外评分因素
所有序列恰好两个符号,第二步之后统一结束,没有长度惩罚和额外过滤。第一步A概率0.6、B概率0.4。若已经选A,下一步X、Y各0.5;若已经选B,下一步X为0.9、Y为0.1。每个前缀下的条件概率都合计为1。
四个完整序列的联合概率是:AX=0.6×0.5=0.30,AY=0.30,BX=0.4×0.9=0.36,BY=0.04。它们合计为1。贪心第一步选A,第二步在X、Y并列时按预定字母顺序选X,得到0.30的AX;全局最大却是0.36的BX。
宽度二,保留的是两条前缀
束搜索第一轮保留A和B两条前缀;第二轮展开它们的所有后续,把AX、AY、BX、BY放在一起按累计概率排序,保留BX和AX,最后选BX。不能对每个父分支各留两条后声称仍然只有两束。
Hugging Face的生成方法说明介绍了束搜索保留若干候选序列的做法。本例直接乘概率以方便手算;长序列实现通常累加对数概率,避免连乘变得极小。此处不拿文本是否合理代替明确的概率评分。
再摆一棵会漏掉最佳结果的树
换一组完整数据:第一步A=0.5、B=0.3、C=0.2。接A后,X/Y/Z概率为0.34/0.33/0.33;接B后为0.4/0.3/0.3;接C后为1/0/0。仍然统一只走两步。
宽度二在第一步就删掉C。留下路径中最高是AX,概率0.5×0.34=0.17。可是完整枚举会找到CX,概率0.2×1=0.20。被剪掉的前缀不会在下一轮自动回来,第二步再认真排序也救不回它。
本文用两个独立过程分别完整枚举和按束宽剪枝,核对了第一例BX胜出、第二例CX遗漏。束宽增加会保留更多候选,但不能把有限束搜索当成穷举证明;候选概率高也不代表陈述真实。
让AI交付可摆桌面的搜索卡
“用固定两步输出演示贪心和宽度2束搜索。案例一:首步A=.6/B=.4;A后X/Y=.5/.5,B后=.9/.1。案例二:首步A=.5/B=.3/C=.2;后续X/Y/Z分别为(.34,.33,.33)、(.4,.3,.3)、(1,0,0)。每轮合并全部扩展后只保留2条,概率并列按序列字母顺序。另做完整枚举,对照赢家及被剪路径;不加入长度或终止评分。”
把每个前缀写在单独纸条上,每轮真实移走被剪掉的纸条,最容易看见“继续搜索”和“重新开始”不同。接到真实生成接口时,再核对结束符、长度归一和重复惩罚等规则,别把本例的简单乘积当成所有工具的最终得分。
资料核对日期:2026年10月2日。本文使用原创合成设定,独立核算不代表真实模型训练或效果测试。


