Superfiltering:快速指令调整的弱到强数据过滤
内容提要
本文综述了降低大语言模型指令微调数据需求的研究。研究表明,仅需不足原数据0.5%的样本即可训练任务模型,性能提升2%;1k–6k样本足以取得良好效果;人工指导数据优于GPT-4合成数据,并具有跨能力泛化性。此外,还介绍了InstructMining筛选高质量数据、过滤算法将样本减少五倍,以及reflection-tuning和软提示提升鲁棒性。
延伸解读
数据效率的突破性发现
文章指出,仅需不足原数据集0.5%的样本即可训练任务特定模型,且性能可提升2%。这表明指令微调中数据量并非绝对关键,高质量的小规模数据可能更有效。同时,1k-6k样本足以在传统NLP基准上取得良好性能,为资源有限的研究者提供了实用参考。
人工数据与合成数据的效率对比
研究发现,人工指导的数据在效率上明显优于GPT-4合成的数据,且随数据量增加能持续提升模型性能,而合成数据无法达到这种效果。这提示在构建指令数据集时,应优先考虑人工标注或指导,而非完全依赖合成数据,以确保模型能力的有效提升。
跨能力泛化与数据构建指导
指令数据带来了强大的跨能力泛化性,域外评估结果也反映了数据量和参数规模的影响。此外,InstructMining等方法可筛选高质量数据,过滤算法能将训练用例减少五倍而无明显性能下降。这些发现为更高效的数据构建提供了具体方向,有助于在公共基准上实现实际性能提升。
Q&A
指令微调最少需要多少数据才能达到不错的效果?
研究表明,仅需1k-6k个指令微调样本的子集就足以在传统NLP基准测试和基于模型的评估上取得良好性能。
人工指导的数据和GPT-4合成数据在指令微调中哪个更好?
人工指导的数据在效率上明显优于GPT-4的合成数据,并且可以随着数据量增加不断提高模型性能,而合成数据则无法达到这种效果。
InstructMining是什么?它有什么作用?
InstructMining是一种用于评估指令遵循数据质量的方法,使用该方法选择高质量数据进行微调,所选择的数据集表现出更优的性能。
如何将训练用例数量降低五倍而不明显影响性能?
设计一个过滤训练用例的算法,分为三个步骤,可以将训练用例数量降低五倍,同时并未出现明显的性能下降。
reflection-tuning是什么?它如何提升模型性能?
reflection-tuning是一种利用Oracle LLM自省和提高数据中指令和回应质量的方法,用反思调整后的数据训练的LLMs在各种测评中表现优于使用现有数据集训练的模型。
如何提高指令微调模型的鲁棒性?
通过引入“软提示”嵌入参数并优化这些参数来最大化语义等效说明的表示之间的相似性,从而提高指导微调模型的鲁棒性。