SELF-REFINE: 带自我反馈的迭代改进

249 篇文章 0 订阅
198 篇文章 0 订阅

23年5月来自CMU、AI2、U Washington、Nvidia、UCSD和谷歌的论文 “SELF-REFINE: Iterative Refinement with Self-Feedback”。

与人类一样,大语言模型 (LLM) 并不总是在第一次尝试时就能产生最佳输出。受人类改进书面文本的方式的启发,引入 SELF-REFINE,一种通过迭代反馈和改进来改进 LLM 初始输出的方法。主要思想是使用 LLM 生成初始输出;然后,相同的 LLM 为其输出提供反馈,并使用它迭代地改进自身。SELF-REFINE 不需要任何监督训练数据、额外训练或强化学习,而是使用单个 LLM 作为生成器、改进器和反馈提供。用先进的 (GPT-3.5 和 GPT-4) LLM,在 7 个不同的任务中评估 SELF-REFINE,从对话响应生成到数学推理。

迭代自我改进是人类解决问题的基本特征(Simon,1962;Flower & Hayes,1981;Amabile,1983)。迭代自我改进是一个过程,包括创建初稿,然后根据自我提供的反馈对其进行改进。例如,在起草一封电子邮件向同事请求文档时,个人最初可能会写一个直接请求,例如“尽快将数据发送给我”。然而,经过深思熟虑,作者意识到这种措辞可能有些不礼貌,于是将其修改为“嗨,阿什利,你能尽快把数据发给我吗?”。在编写代码时,程序员可能会实现一个初始的“快速而粗糙”的实现,然后经过深思熟虑,将他们的代码重构为一个更高效、更易读的解决方案。

SELF-REFINE 是一种迭代自改进算法,在两个生成步骤(反馈和改进)之间交替进行。这些步骤协同工作以生成高质量的输出。给定由模型 M 生成的初始输出,将其传回同一模型 M 以获得反馈。然后,将反馈传回同一模型以改进先前生成的草稿。此过程重复指定次数的迭代或直到 M 确定不需要进一步改进。如图所示:给定一个输入 (0),SELF-REFINE 首先生成一个输出并将其传回同一模型 M 以获得反馈 (1)。反馈被传回 M,M 会细化先前生成的输出 (2)。步骤 (1) 和 (2) 不断迭代,直到满足停止条件。SELF-REFINE 使用 GPT-3.5 等语言模型实例化,不需要人工协助。

请添加图片描述

SELF-REFINE 的算法如下所示。

请添加图片描述

本文在 7 个不同的任务上对 SELF-REFINE 进行评估:对话响应生成(Mehri & Eskenazi,2020)、代码优化(Madaan,2023)、代码可读性改进(Puri,2021)、数学推理(Cobbe,2021)、情绪逆转(Zhang,2015),并且引入了两个新任务:首字母缩略词生成和约束生成,注:(Lin 2020)的更难版本。

反馈质量在 SELF-REFINE 中起着至关重要的作用。为了量化其影响,利用具体、可操作反馈的 SELF-REFINE 与两种消融方法进行比较:一种使用通用反馈,另一种不使用反馈(模型可能仍会迭代地改进其生成,但没有明确提供反馈来这样做)。例如,在代码优化任务中:可操作的反馈,例如避免在 for 循环中重复计算,可以精确指出问题并提出明显的改进建议。通用反馈,例如提高代码效率,缺乏这种精确性和方向性。

对 SELF-REFINE 及其后续改进产生的反馈进行定性分析。手动分析代码优化(Madaan,2023)和数学推理(Cobbe,2021)总共 70 个样本(35 个成功案例和 35 个失败案例)。对于数学推理和代码优化,反馈主要是可操作的,大多数反馈都指出了原始生成中存在的问题并提出了纠正方法。

虽然评估侧重于基准任务,但 SELF-REFINE 的设计考虑了更广泛的适用性。在网站生成的实际用例中探索了这一点,其中用户提供高级目标,SELF-REFINE 协助迭代开发网站。从基本的初始设计开始,SELF-REFINE 改进 HTML、CSS 和 JS,以在可用性和美观性方面改进网站。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值