https://juejin.cn/post/7297160453426806838
LLMs 复读机问题指的是模型倾向于不适当地复制用户输入的文本或者在回复中重复使用相同的句式和短语。这种倾向可能源自模型在处理输入时的一种简便路径,即模仿而不是创造性地响应。生成的内容往往缺乏变化和新颖性,这使得交互体验变得预测性强且单调。
https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/dfbb3380e69d48ed8628a7ec6f29e28f~tplv-k3u1fbpfcp-jj-mark:3024:0:0:0:q75.awebp
目前针对LLM重复生成的问题,主要有两种策略,一种是基于训练思想,一种是基于解码策略。
**训练思想**:整体思想就是通过构造伪数据,即短语重复、句子重复等伪数据,如短语或句子重复 N 遍,然后设计重复惩罚项来抑制大模型生成重复句子。重复惩罚项通过设计损失函数来达成,其中是惩罚因子λ,对于开放式生成,推荐取值为 0.5,对于总结摘要类任务,取值为 0.9 性能更好。
[<https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7320bfcd0f4a4b8cadfd8e4d649b8969~tplv-k3u1fbpfcp-jj-mark:3024:0:0:0:q75.awebp>](<https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/7320bfcd0f4a4b8cadfd8e4d649b8969~tplv-k3u1fbpfcp-jj-mark:3024:0:0:0:q75.awebp>)
**解码策略**:基于解码策略包含诸多方法,如 beam search, random search(topK, topP), 温度等。
- **集束搜索**(beam search):针对贪心策略的改进,思想就是稍微放宽一些考察范围。即在每一个时间步,不再只保留当前分数最高的 1 个输出(贪心策略),而是保留 num_beams 个,当 num_beams=1 时,集束搜索就退化成了贪心搜索。
[<https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/b7a4b0ac4e334cfd9510d7d09b94072d~tplv-k3u1fbpfcp-jj-mark:3024:0:0:0:q75.awebp>](<https://p6-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/b7a4b0ac4e334cfd9510d7d09b94072d~tplv-k3u1fbpfcp-jj-mark:3024:0:0:0:q75.awebp>)
- **random search**(topK, topP):topK 即从概率最高的 K 个 token 中进行筛选,即允许其他高分 tokens 有机会被选中,topP 将可能性之和不超过特定值的 top tokens 列入候选名单,topP 通常设置较高的值,目的是限制可能被采样的低概率 token 的长尾。
- **Temperature**:较低的温度意味着较少的随机性,温度为 0 将始终产生相同的输出,较高的温度意味着更多的随机性,可以帮助模型给出更有创意的输出。