InstructRetro: Instruction Tuning post Retrieval-Augmented Pretraining

📄 arXiv: 2310.07713v3 📥 PDF

作者: Boxin Wang, Wei Ping, Lawrence McAfee, Peng Xu, Bo Li, Mohammad Shoeybi, Bryan Catanzaro

分类: cs.CL, cs.AI, cs.IR, cs.LG

发布日期: 2023-10-11 (更新: 2024-05-29)

备注: ICML 2024

🔗 代码/项目: HUGGINGFACE


💡 一句话要点

提出InstructRetro以提升检索增强预训练模型的指令调优效果

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 检索增强 预训练模型 指令调优 大型语言模型 自然语言处理

📋 核心要点

  1. 现有的检索增强预训练模型规模有限,影响了指令调优和零-shot泛化能力。
  2. 本文提出Retro 48B,通过在1.2万亿token上对43B的GPT模型进行检索增强预训练,显著提升模型性能。
  3. InstructRetro在多个短问答、长问答和摘要任务上,相较于GPT模型平均提升7%至16%。

📝 摘要(中文)

通过检索增强预训练,自动回归大型语言模型(LLMs)在困惑度和事实准确性上表现更佳。然而,现有的预训练检索增强LLM规模有限,影响了指令调优和零-shot泛化的效果。本文提出了Retro 48B,这是最大的检索预训练LLM,使用Retro增强方法在1.2万亿个token上继续对43B的GPT模型进行预训练。实验结果显示,Retro 48B在困惑度上显著优于在同样数据上训练的GPT 43B,并且在多个零-shot任务上,InstructRetro相较于指令调优的GPT有显著提升,平均提高7%至16%。

🔬 方法详解

问题定义:现有的检索增强预训练模型(如Retro)规模较小(7.5B参数),限制了指令调优和零-shot泛化的效果。

核心思路:本文通过继续对43B的GPT模型进行预训练,使用检索增强方法在1.2万亿token上进行训练,提出了Retro 48B模型,旨在提升模型的困惑度和任务表现。

技术框架:整体流程包括数据检索、模型预训练和指令调优三个主要阶段。首先,从外部数据库中检索相关token,然后在此基础上进行大规模预训练,最后进行指令调优以提升模型在特定任务上的表现。

关键创新:Retro 48B是目前最大的检索预训练LLM,显著提升了困惑度表现,并且在指令调优后,InstructRetro在多个任务上超越了传统的GPT模型,展示了检索增强预训练的潜力。

关键设计:在训练过程中,使用了1000亿个token进行预训练,并且在GPU资源上仅增加了2.58%的使用时间,显示出高效的训练策略。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果显示,InstructRetro在8个短问答和阅读理解任务上平均提升7%,在4个长问答任务上提升10%,在3个摘要任务上提升16%。这些结果表明,检索增强预训练方法在提升模型性能方面具有显著效果。

🎯 应用场景

该研究的潜在应用领域包括自然语言处理中的问答系统、文本摘要生成和对话系统等。通过提升模型的指令调优能力,InstructRetro可以在多种实际场景中提供更准确和高效的响应,具有重要的实际价值和未来影响。

📄 摘要(原文)

Pretraining auto-regressive large language models~(LLMs) with retrieval demonstrates better perplexity and factual accuracy by leveraging external databases. However, the size of existing pretrained retrieval-augmented LLM is still limited (e.g., Retro has 7.5B parameters), which limits the effectiveness of instruction tuning and zero-shot generalization. In this work, we introduce Retro 48B, the largest LLM pretrained with retrieval. Specifically, we continue to pretrain a 43B GPT model on additional 100 billion tokens using the Retro augmentation method by retrieving from 1.2 trillion tokens. Notably, the obtained foundation model, Retro 48B, largely outperforms the counterpart GPT 43B trained on 1.2T tokens in terms of perplexity with only 2.58% additional GPU hours, demonstrating the significant scaling potential of the method. After instruction tuning on Retro, InstructRetro demonstrates significant improvement over the instruction tuned GPT on a wide range of zero-shot tasks. Specifically, the average improvement of InstructRetro is 7% over its GPT counterpart across 8 short-form QA and reading comprehension tasks, 10% over GPT across 4 challenging long-form QA tasks, and 16% over GPT across 3 summarization tasks. Surprisingly, we find that one can ablate the encoder from InstructRetro architecture and directly use its decoder backbone, while achieving comparable results. Our results highlight the promising direction to obtain a better GPT decoder through continued pretraining with retrieval before instruction tuning. Our code and checkpoints are publicly available at: https://huggingface.co/nvidia/retro-48b-instruct-4k.