Self-Refine模仿人类的三步过程,其中从大型语言模型(LLMs)得到的初始输出通过一系列迭代反馈进行精炼。
这种方法最大的优势是它不需要任何监督训练数据、额外训练或强化学习。
一个单一的大型语言模型被用于生成、改进和反馈。
Self-Refine在七项不同的任务中进行了测试,用于对话响应生成、数学推理等。
Self-Refine的基本原则是,当我们作为人类重新审视我们生成的东西时,我们通常会找到改进它的方法。考虑写一封电子邮件;如果我们将第一个版本保存在草稿文件夹中,几小时后再次阅读电子邮件,我们作为人类会直觉地找到改进写作的方法。
或者当程序员编写出一段代码,并随后反思他们的代码时,程序员总会发现方法来优化和改进它。
我们能否只生成多个输出而不进行优化?——不能
Self-Refine研究展示了一个大型语言模型(LLM)如何能够在不需要额外训练的情况下提供迭代式的自我精炼,从而在广泛的任务上产生更高质量的输出。
在上面的图片中,你可以看到左边是初始输出,用同一个大型语言模型(LLM)生成反馈,然后再次使用同一个LLM进行细化。
Self-Refine对较弱的模型也同样有效吗?不。
自我改进的一个优势是只利用了一个单一的大型语言模型(LLM),但这也带来了一个重要的考虑因素。那就是这种方法在很大程度上依赖于它所使用的基础LLM。研究发现,改进与LLM的大小是一致的。GPT-4 & 自我完善的效果比GPT-3.5 & 自我完善要好。
输出的质量随着迭代次数的增加而提高。
考虑到上面的图片,平均来说,随着迭代次数的增加,输出的质量也在提高。