R26 · 搜索更认真,也不能修复所有模型问题
生成还包含从模型分布中选择输出这一独立环节。本页暂时固定概率,只研究局部选词是否能找到整条高分序列。
状态 b0
只展开首步A/B/C,先按当前分布判断greedy会选谁。顶部保留此分支在翻译器中的位置。
状态 b1
完整树展开。沿A→a→EOS将边概率相乘,再读叶子路径分数;边与叶的数回答不同问题。
状态 b2
高亮C EOS与greedy路径作比较:首步更小的前缀,结束后的完整概率可以更大。
公式与算例详情
为了把搜索完整算完,暂用抽象 token 构造一个有限条件分布;它不是训练出的翻译模型。给定同一前缀,首步分布为 A:0.45、B:0.30、C:0.25。A 后是 a:0.70、b:0.30;Aa 后是 EOS:2/3、c:1/3;Aac 与 Ab 后都必然EOS。B 后是 EOS:0.75、d:0.25;Bd 后必然EOS;C 后必然EOS。未列出的词概率为0。
| 完整后续(含EOS) | 路径乘积 | 概率 |
|---|---|---|
| A a EOS | $0.45\times0.70\times2/3$ | 0.210 |
| A a c EOS | $0.45\times0.70\times1/3\times1$ | 0.105 |
| A b EOS | $0.45\times0.30\times1$ | 0.135 |
| B EOS | $0.30\times0.75$ | 0.225 |
| B d EOS | $0.30\times0.25\times1$ | 0.075 |
| C EOS | $0.25\times1$ | 0.250 |
图的边标条件概率,叶标完整路径概率;所有终止路径概率和为1。greedy 在第一步选A,之后选a,再选EOS,得到0.210;穷举整棵树才知道C EOS的0.250最大。第一步比较的0.45与0.25是前缀概率,不能预先代表终止后的路径概率。
实际序列通常太多,不能穷举。常用累计对数分数 $\sum_i\log p(y_i\mid y_{<i},x)$ 防止连乘下溢;它与未归一化路径概率的排序一致。这里先固定使用该目标,下一页再看有限beam。
原课页采用记录:M16 模型与搜索的区别。页码均按PDF物理页计。
继续学习
本页自学核对:穷举完整概率树并核对 greedy;整理成局部最优与完整序列最优的反例。
若想知道真实模型的错误是搜索漏掉还是评分偏好,可进入《路径 A:分数进步了,为什么这一句仍然错》;动手时打开LAB02的“路径A · 分数进步了,为什么这一句仍然错”:用同一checkpoint核对正确候选是否进入beam,以及含EOS累计log p的排序。 实施范围见实验路线D。