"联合优化:提升NLP系统性能的新策略"

Fine-Tuning and Prompt Optimization: Two Great Steps that Work Better Together

摘要

本文由Dilara Soylu、Christopher Potts和Omar Khattab共同撰写,探讨了在自然语言处理(NLP)系统中,如何通过精细调整(fine-tuning)和提示优化(prompt optimization)来提升多阶段语言模型(LMs)的性能。文章提出了一种新的优化策略,即交替优化提示和模型权重,以解决在缺乏中间阶段金标签的实际场景中的挑战。实验结果显示,这种联合优化方法在多跳问答、数学推理和特征基础分类任务中,相较于单独优化权重或提示,分别实现了高达65%和5%的性能提升。

原理

本文提出的“BetterTogether”算法通过交替进行提示优化和权重微调步骤来优化语言模型程序(LM programs)。该算法的核心在于,通过先优化提示再微调权重,然后再次优化提示的方式,来提升模型的整体性能。这种交替优化的策略基于一个假设:在语言模型自我学习如何处理由LM程序定义的任务时,优化提示和微调权重都是至关重要的。具体来说,提示优化可以为微调提供更成功的数据点,而微调后的提示优化则可以进一步调整LM程序的行为,从而提高质量。

流程

算法的工作流程如下:首先,对程序的提示进行优化(OPTIMIZEPROMPTS);接着,使用优化后的提示对模型权重进行微调(FINETUNEWEIGHTS);最后,再次对提示进行优化。这一流程在算法1中详细描述,并在算法2中通过Bootstrap-∗家族算法具体实现,这些算法通过执行程序并记录在最终输出正确时的输入输出对来进行优化。

应用

本文提出的优化策略不仅在理论上有显著的性能提升,而且在实际应用中也显示出巨大的潜力。特别是在需要复杂推理和多步骤处理的NLP任务中,如多跳问答和数学推理,这种交替优化的方法能够显著提高模型的准确性和可靠性。未来,这种方法可能会被广泛应用于各种需要高级NLP能力的场景,如智能客服、自动编程助手和复杂问题解答系统等。