一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?( 二 )


最近发布的LIMA论文可能是一次微调上的突破,研究结果表明,仅在1000个示例上进行微调的65 B LLaMA模型(以有监督的方式)并不落后于ChatGPT / GPT3.5等更大的模型 。

一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
论文链接: https://arxiv.org/abs/2305.11206
研究人员发现,在57%的情况下,GPT-4仍然更好,但他们观察到,在43%的情况下,LIMA优于或相当于GPT-4,已经非常强了;或者从另一个角度来看,大约有一半的情况,LIMA可以优于GPT-4的前身ChatGPT/GPT3.5(也叫DaVinci 003) 。
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
不过还有一个问题是,同样是有监督微调后的LLaMA模型,为什么LIMA的表现比Alpaca好这么多?
首先,LIMA基于65B LLaMA模型,而原始Alpaca模型基于7B LLaMA基础模型 。
为了公平对比,作者使用65B基础模型复刻了Alpaca的训练过程,即使用原始Alpaca项目中描述的52000个样本进行训练 。
所以可以得出结论,差异实际上来源于作者为LIMA精心策划的训练集的质量,使得LIMA可以击败在52倍数据上训练的相同的65B LLaMA基础模型 。
不过还缺少的一个基线对比和消融研究是LIMA与使用RLHF而非有监督学习进行微调的65B LLaMA基础模型 。
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
虽然LIMA的实验结果非常有前景,不过有一篇论文的研究结果也需要注意,模仿学习得到的语言模型可能并没有想象中的那么强 。
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
论文链接: https://arxiv.org/abs/2305.15717
最近几个月,根据来自其他语言模型(如ChatGPT)的数据对LLM进行微调已成为常见做法,不过研究人员发现,众包工作者对这些所谓的模仿模型评价很高 。但事实证明,这些模仿模型只倾向于模仿上游语言模型的风格,而非真实性 。
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
LIMA论文虽然没有使用模仿数据,而是使用精心设计的数据集,但仍然值得强调的是,评估结果有时似乎好得令人难以置信,我们需要更好的基准测试 。
人类反馈强化学习的替代方案
最近几个月,有监督微调成了微调语言模型的新范式,比如LIMA论文也是使用有监督微调,但也存在其他方法来替代基于人类反馈的强化学习 。
直接偏好优化(DPO,Direct Preference Optimization)也是一种全新的、可替代强化学习的方法,使用接近策略优化(PPO)的人类反馈,用于ChatGPT等指令微调模型 。
研究人员表明,在RLHF中拟合奖励模型的交叉熵损失可以直接用于微调语言模型,而且根据基准测试,使用DPO更有效,并且在回复质量方面通常也优于RLHF/PPO
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
多个epoch训练会怎么样?
微调模型需要一个预训练的基础模型,所以一个很自然的需求就是获得更好的基础模型 。
对经典的机器学习模型、深度神经网络以及最新的视觉Transformer模型训练数百个epoch是很常见的操作,不过大型语言模型通常指训练1个epoch,如果训练超过一个epoch会发生什么?
一文解决所有「语言模型」疑问:能不能训多个epoch?怎么微调效率高?需要多少条数据?

文章插图
论文链接: https://arxiv.org/pdf/2305.13230.pdf
事实证明,互联网上的高质量文本数据比想象中的更少,此外,如果受版权保护的材料在未来被要求删除,可能会进一步缩小数据集的规模 。
论文实验结果表明,要是因为数据量少就训练多个epoch,可能会导致模型过拟合 。


推荐阅读