微信扫码
与创始人交个朋友
我要投稿
数据增强是一种已知的可以有效扩展训练数据集的方法。对于自然语言处理(NLP)任务,人们可以使用同义词替换、字符替换(如有意引入拼写错误)、随机交换和反向翻译等方法。
为了解决这一问题,最近的一些论文探索了使用LLM来扩展微调数据集。这种方法被证明比传统的数据增强方法更有效。然而,这些方法通常会在所有可用的训练数据集上应用基于LLM的数据增强,而不考虑LLM对各个训练数据点的预测准确性。论文观察到,对于算术和阅读理解等各种推理任务,LLM可以正确解决微调数据集中较简单的示例,但可能难以解决较难的示例。对于LLM已经取得高精度的数据点继续进行数据增强是次优的。
假设论文有一个大型语言模型 M(如 GPT-3.5 或 LLaMA2-7B),它是在某些源数据集(如 Common Crawl)上预训练的。目标是通过使用一个小的种子数据集 D 来调整 M(从此称为学生模型)以适应一个新的目标领域,其中 D 与预训练数据集相比可能具有未见过的特征(例如具有特定术语的医疗数据集,或具有特定特征的私有数据库)。在这种情况下,模型的零射击或微调性能可能不尽人意。虽然已探索了解决这一挑战的策略,例如通过第 2 节中讨论的增强的few-shot学习方法,但在这里论文严格关注如何使用 LLM 来丰富给定的目标数据集 D。这种方法与上述技术是正交的,提供了一种可与它们一并应用的补充解决方案。
需要注意的是,LLM2LLM与知识蒸馏不同。知识蒸馏通常适用于教师模型在目标数据上具有高精度的情况。然而,在这种情况下,教师模型在目标数据上的表现也可能不佳(例如,在私有数据库的情况下,教师缺乏特定领域知识)。但是,如果教师模型具有足够的推理能力,当给定提示和答案时,可以生成概念相似但语义不同的示例,那么论文的框架就可以提高性能。
LLM2LLM的端到端算法如算法1所示。受Self-Instruct[55]的启发,论文使用教师模型Mteacher从训练期间模型预测错误的数据点生成合成数据,以针对学生模型中的这些缺陷。更详细地说,论文首先在给定的目标数据D0上训练基线学生模型Mstudent,并评估其性能(算法1的第4-5行)。然后论文过滤结果,保留学生模型难以正确回答的错误训练示例(第6行的Ei)。接下来,论文提示教师模型创建在概念上一致但在语义上不同的额外训练数据点(第7行,具体提示见附录B.4)。教师模型不一定需要更大,尽管这可能会提高性能。对教师模型的主要要求是具有推理能力,能够遵循数据增强指令,并能够创建与错误示例相似的数据点。该过程在图1中有示意性说明。
应用10次LLM2LLM迭代后的最终模型精度如表1所示。在低资源数据情况下,即仅有74个可用示例(GSM8K训练数据集的1%),普通微调只能达到0.99%的测试精度。然而,LLM2LLM通过基于模型错误的数据点迭代生成391个额外示例,将精度提高到19.56%。如果略微增加可用数据至149个种子示例(训练数据集的2%),论文就可以达到25.70%的精度。如表2所示,如果只依赖普通微调,论文需要10倍以上的训练数据点才能匹配这一精度。
在图2中,论文还展示了在GSM8K和CaseHOLD数据集上,基线精度如何随着每次应用LLM2LLM而提高。论文可以观察到,在LLM2LLM的前几次迭代中,尤其是在低资源数据领域,测试精度会出现急剧增加。
在GSM8K数据集上,LLM2LLM比朴素微调方法高出20%以上,比EDA高8%以上,比AugGPT高5%以上。类似地,在CaseHOLD数据集上,LLM2LLM比微调基线高约35%,比EDA高2.3%,比AugGPT高1.1%。这些改进,尤其是与AugGPT相比,可归因于LLM2LLM根据模型遇到困难的地方生成更有针对性的示例的能力,而AugGPT则是毫无区别地增强数据。这使得LLM2LLM能够更有效和更针对性地利用增强数据量。
在GSM8K数据集上,从上一次迭代的增强数据中生成增强数据得到的精度为18.3%,而使用种子数据进一步增强则可将精度提高到23.75%。在CaseHOLD数据集上论文观察到类似的趋势。正如3.1节所讨论的,当使用增强数据进行进一步增强时,性能下降的一个潜在原因是偏离了原始数据分布。
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-03-30
2024-04-26
2024-05-14
2024-04-12
2024-05-10
2024-05-28
2024-07-18
2024-04-25
2024-05-22
2024-04-26