跳至内容
- 来源:ICML 2021
- 机构:UCB(大四学生 Orz)
- 任务:研究 in-context learning, prompt engineering
- 动机:in-context learning 性能不稳定
- 性能不稳定的所在:强烈依靠选择的训练样本、强烈依靠
- 性能不稳定的具体体现:会被数据标签分布不均 bias、会更偏向最近的 demonstration 而 bias、会选择预训练语料里更常见的 token 做为预测的 verbalizer 而 bias
- 最后得到的预测结果就是这样的,负例本应该有很小的 logits(<0.5)

- Contextual Calibration:对于空的输入,应该也有空的输入,从而让输入输出的“0刻度线”对齐(就跟很多仪器一样,比如天平要用螺丝先调平(太妙了))
- 具体实现也很简单,就是在后面再接一层线性层,将输出的 scale 调整到正常的 scale
- 但是小样本很难学这个 W 和 b,咋办呢?具体地,线性层是 q = softmax(Wp+b),p 是原来的各类 logits。作者就将 W 设置成输入 null 得到的 p 的逆,b 设为零,这样相当于让 null 输入的时候,得到一个 uniform 分布,即 caliberate 的意思。
- 实验:
- 结果稳定了很多

- 不同 {prompt、数据顺序、数据} 带来的平均性能、最低性能、方差都有提升
- 用 dev 找最好的 W(因为 W 其实也只是由一组实验决定的),还能提升