合成数据,或许就是大模型的未来。
不久前Jim Fan就在推特上表示,合成数据将提供下一万亿个高质量的训练token。
还有人认为,因为人类无法产生足够多的高质量数据,「合成数据」似乎是实现AGI的关键。
现在看来,确实如此。
谷歌DeepMind和Mila实验室的研究人员发现,「合成数据」能够让大模型数学问题解决,以及代码生成能力大幅提升。
论文中,他们提出了一种全新的方法——,利用AI系统生成数据来自我训练。
论文地址:https://arxiv.org/pdf/2312.06585.pdf
在MATH高级推理和APPS编码基准测试中,使用PaLM-2模型进行测试后,发现与模型大小的扩展相称,并显著优于仅在人类数据上进行微调的模型。
总而言之,利用反馈进行自我训练,可以大大减少对人工生成数据的依赖。
目前,虽然对人工收集的数据进行监督微调(SFT),可以提高大模型在特定任务上的性能,但是获得高质量的人工数据却是一大瓶颈。
尤其,对于复杂的问题解决任务来说更为苛刻,需要大量的资源和专业知识。
为了解决这一障碍,模型生成的「合成数据」却成为一个非常有潜力的替代方案,不仅能够扩展,还可拉低成本。
虽然LLM具备自我评估生成数据的潜力,但最新研究探讨了一种更简单的设置,即由外部标量反馈信号作为每个生成样本的质量指标。
为了研究对模型生成的数据进行训练,研究中人员提出了一种简单而强大的语言模型自我训练方法——。
它仅需要两种能力:1) 从模型生成样本 2) 使用评分机制评估这些样本。
及其适应性,已成功增强了不同领域的语言模型,包括机器翻译、语义解析、偏好对齐和基本推理。
然而,之前的研究主要是将应用在相对较小的语言模型(最多7B参数),对于较大的模型观察到的可扩展性有限。
对此,在这项工作中,主要研究模型生成的合成数据与人类生成的数据,在赛级数学问题解决(MATH)和和代码生成(APPS)基准上有效性和可扩展性的比较。
算法过程非常简单,如下图所示,
针对给定问题/任务,使用少量提示对多个可能的解决方案进行采样,然后对这些解决方案中经过奖励过滤的子集进行微调。
其实,这样的方法已经在此前的研究中讨论过,只不过在这项研究中研究人员使其与EM-RL联系起来。
具体来说,在期望和最大化步骤之间交替进行:
- 生成(E 步):语言模型会为每个输入语境生成多个输出样本。然后,使用二进制奖励过滤这些样本,收集训练数据集。
- 改进(M 步):在上一步生成的训练数据集上对原始语言模型进行监督微调。微调后的模型将用于下一个生成步骤。
在实验过程中,谷歌研究人员针对性地回答了如下五个问题。
训练数据集
研究人员使用Hendrycks的MATH数据集和APPS数据集的代码生成来评估。
模型
研究使用了PaLM 2模型和Google Cloud上的公共API进行实验,包括 PaLM 2-S (Bison)、 PaLM 2-S * (Codey)和 PaLM 2-L (Unicorn)。
与人工生成的数据进行微调相比,的效果如何?
图2和图3分别显示了在MATH和APPS数据集上训练时的性能。
可以看出, MATH从执行的多次迭代中获益,无论是在MATH测试集的性能方面,还是在转移到GSM8K上表现优秀。
另一方面,APPS的大部分收益来自第一次迭代,执行更多的迭代会导致APPS和HumanEval的性能下降。
有趣的是,图 2 和图 3 显示,对模型生成的解决方案进行微调的效果大大优于使用人工编写的解决方案,尤其是 PaLM 2-L模型。
与此同时, 随着模型参数量增加,带来了更大的性能提升。
在MATH数据集上,使用的PaLM 2-S测试准确率提高了5.94%,而使用更大的PaLM 2-L模型则提高了6.34%。
同样,在APPS数据集上,PaLM 2-S*提高了5.6%,而PaLM 2-L提高了6.4%。此外,大型模型的初始性能要强得多,而且随着基线性能的提高,这些基准的改进通常会变得更加困难。
需要多少次迭代才能达到最佳性能?多快会导致训练集过度拟合?
训练测试性能差距。图4显示,虽然训练集性能随着迭代次数的增加而线性提高,但测试集性能却并非如此。
对于MATH数据集,第一次迭代后测试性能的提高幅度很小,而对于APPS,作者实际上观察到第二次迭代时性能出现了倒退。
研究人员怀疑性能倒退可能是由于过度拟合造成的。由于APPS数据集的大小约为MATH数据集的三分之一,因此受此问题的影响更大。
如何影响pass@k和多数投票的性能?
如下图所示,是PaLM-2-L预训练模型和用微调模型的Pass@K结果。
对于固定数量的样本k,使用进行微调可以大大提高Pass@K的性能。
对推理能力的影响
图7显示了经过调整的模型的性能,并与基本PaLM-2模型进行了比较。
研究发现,在BBH的任何任务上,模型性能都没有明显下降。
此外,研究发现在Hendrycks MATH上经过微调的模型在使用CoT提示时明显优于该套件上的基础模型,而在APPS上经过微调的模型也略有性能提升。
为了在真实的评估集上对数学解题能力进行压力测试,研究人员还在2023年匈牙利高中数学期末考试中对模型进行了评估。
评估结果如图8所示。研究发现,最新模型在这次考试中表现出色,超过了除GPT-4以外的所有现有模型。
参考资料:
https://twitter.com/_akhaliq/status/1734447771581640979
文章来自于微信公众号 “-新智元”
【开源免费】DeepBI是一款AI原生的数据分析平台。DeepBI充分利用大语言模型的能力来探索、查询、可视化和共享来自任何数据源的数据。用户可以使用DeepBI洞察数据并做出数据驱动的决策。
项目地址:https://github.com/DeepInsight-AI/DeepBI?tab=readme-ov-file
本地安装:https://www.deepbi.com/
【开源免费】airda(Air Data Agent)是面向数据分析的AI智能体,能够理解数据开发和数据分析需求、根据用户需要让数据可视化。
项目地址:https://github.com/hitsz-ids/airda
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner