新加坡科技设计大学提出FLACUNA:提高LLMs问题解决能力!
深度学习自然语言处理 原创
作者:wkk
最新的LLMs的问题解决能力参差不齐,其中四年前提出的基于T5的LLM在解决一般问题的任务上,仍然优于最新的基于解码器的LLM(如LLaMA和VICUNA等)。这种性能差异主要可归因于预训练数据集,主干架构和指令数据集。本文中,利用VICUNA进行试验探索以上三个因素的影响,同时设计了FLAN-MINI数据集对VICUNA进行微调。
进NLP群—>加入NLP交流群
论文链接:https://arxiv.org/pdf/2307.02053.pdf 代码链接:https://github.com/declare-lab/flacuna 模型链接:https://huggingface.co/declare-lab/flacuna-13b-v1.0 FLAN-MINI数据集链接:https://huggingface.co/declare-lab/flan-mini
简介
ChatGPT以及GPT-4在绝大多数基准测试集上的性能超越了之前最先进的模型。然而想要在本地运行175B大小以上的模型条件十分苛刻。因此促使了许多研究人员根据ChatGPT或GPT-4生成的一组不同的指令示例,对可管理大小的LLM进行微调,从7B调整到30B,促进了LLM的发展。这些模型在一些特定的基准测试任务上已经达到了接近ChatGPT的性能,但总体概括能力仍然难以评估。 InstructionEVAL发现微调数据集决定了特定任务的性能。据观察,FLAN-T5,在FLAN Collection指令数据集上微调的T5检查点,在涉及强大推理和解决问题技能的任务上优于VICUNA和Alpaca。这促使本文在FLAN-MINI Collection数据集上对VICUNA进行微调。本研究的主要贡献如下所示:
通过FLAN-MINI上的参数有效微调,提高VICUNA的问题解决能力。 设计了一个指令调优数据集FLAN-MINI,它包括一组不同的任务和模板。
训练详情
FLAN-MINI数据集:考虑到FLAN集合的规模较大,本文选择其子集,该子集在降低总体数据集规模的同时保持高水平的任务多样性。下表中,展示了FLAN子集中包含的特定任务,以及它们各自的数据集大小。
保留VICUNA的交流能力:VICUNA表现出显着的聊天能力,达到了ChatGPT的90%性能。这表明它作为ChatGPT等闭源大语言模型的开源替代方案的巨大潜力。为了确保FLACUNA能够保留VICUNA的学习知识和聊天能力,本文结合了各种ChatGPT数据集到FLAN集合中。
架构:在VICUNA模型中使用了LORA来对FLAN MINIcollection进行微调。在所有查询和值投影层上插入了低秩适配器,因此可训练的参数总数为6.55M,仅为原始13B VICUNA模型参数总数的0.05%左右。最大输入序列长度设置为1280,利用bf16精度促进了高效训练。
超参数:FLACUNA在4×A6000 GPU上训练1个 epoch。使用16个梯度累积步骤,每个设备批量大小为2,总批量大小为 128,同时使用了3000个warm-up steps和2e-5的学习率。
评估任务和结果
解决问题能力:为了评估指示大语言模型的问题解决结果,使用了一系列测试基准,包括深入研究不同主题的真实世界考试,包括复杂的指令、算术问题、编程挑战和因果推理任务。为了在这些基准测试中表现出色,模型需要对世界表现出深刻的理解,展示了多跳推理能力、展示创造力和使用大量其他认知技能。
与人类价值观保持一致:注意到LLM与人类价值观相一致的重要性,采用HHH数据集进行测试。该基准展示了人类和对话助手之间的互动对话,挑战模型辨别和提供最合适的回应能力。它包括61个与诚实有关的样本、59个与乐于助人有关的样本和58个与无害有关的样本,以及43个属于“其他”类别的独特实例。
写作实验:在写作实验中,使用了IMPACT数据集。这个综合数据集由50个不同类别的提示组成,即信息性、专业性、议论文性和创造性。并使用ChatGPT在相关性和一致性方面对模型的反馈进行评分,评分范围为1-5。
实验结果:作为基线,选择了VICUNA和STABLEVI-CUNA。
Few-shot问题解决能力:下表展示了来自INSTRUCTEVAL基准测试的五个数据集上FLACUNA的结果,重点是解决问题的任务。在5个任务中的4个中,FLACUNA的表现优于VICUNA,比LLaMA主干的平均性能提高了5.6分。然而,在HumanEval数据集中,它在与代码相关的问题解决任务上的表现略差,差0.6分。总的来说,在五个任务中,flacuna与VICUNA相比,平均提高了5.1分。
zero-shot问题解决能力:本研究对FLACUNA进行了zero-shot性能评估,并将其与VICUNA和STABVICUNA进行了比较。下表中显示的结果表明,与竞争对手相比,FLACUNA的性能飞跃显著。这种改进可归因于FLACUNA在高质量FLAN指令数据集上训练。
HHH数据集评估:使用HHH评估结果如下表所示,其中FLACUNA比VICUNA表现出令人印象深刻的11%的改进。值得注意的是,FLAN-MINI指令数据集集合旨在增强VICUNA的问题解决能力,但它也对其HHH性能产生积极影响。这一观察结果与FLAN-T5的经验一致,在对FLAN进行微调后,其T5主干的性能提高了24.2%。
写作评估:FLACUNA虽然主要擅长解决问题,但本文研究为了保持VICUNA的写作和聊天能力。为了实现这一点,将GPT-4生成的会话数据集合并到FLAN-MINI集合中。然而,在FLACUNA的写作表现中发现了一些问题。在某些情况下,它会生成代码片段,以响应与编码无关的提示。这种行为归因于显著的数据不平衡,其中会话数据集仅占整个数据混合的8.2%。及时的工程技术可以帮助纠正这些问题。写作评估的结果如下表所示。
prompt和FLACUNA响应示例
prompt:
FLACUNA's response:
总结
本篇论文研究了如何使用FLAN数据集来优化VICUNA语言模型,以增强其问题解决能力。论文重点研究了第三个关键因素——指令数据集的影响,并通过使用FLANMINI指令数据集来微调VICUNA。该数据集包括FLAN大型指令数据集和一些源自ChatGPT/GPT-4的代码相关数据和对话数据,涵盖了许多需要问题解决能力的任务。实验结果表明,通过在FLAN数据集上微调VICUNA,可以获得增强的问题解决能力,并在INSTRUCTEVAL基准数据集上取得了显著改进。
进NLP群—>加入NLP交流群
微信扫码关注该文公众号作者