AI算法 | 训练数据的数量、质量及语言分布等因素对中文大模型性能的影响

已有LLM研究探索了训练数据对模型性能的影响,但这些研究大多集中在英文模型上,对于中文模型的研究相对较少。 今天来看一篇来自贝壳的研究团队在2023年的一篇工作——《Towards Better Instruction Following Language Models for Chinese: Investigating the Impact of Training Data and Evaluation》。 这篇工作的核心目标是提升中文指令跟随语言模型的性能。

AI算法 | 训练数据的数量、质量及语言分布等因素对中文大模型性能的影响

已有LLM研究探索了训练数据对模型性能的影响,但这些研究大多集中在英文模型上,对于中文模型的研究相对较少。今天来看一篇来自贝壳的研究团队在2023年的一篇工作——《Towards Better Instruction Following Language Models for Chinese: Investigating the Impact of Training Data and Evaluation》。

这篇工作的核心目标是提升中文指令跟随语言模型的性能。具体来说,本文关注如何通过优化训练数据的数量、质量、语言分布等因素,以及改进评估方法,来提高开源语言模型在中文任务中的表现。

直接来看实验结果:

图片

词汇扩展的影响

由于LLaMA的词表构建未针对中文进行优化,一个中文字符通常会被拆分为2-3个字节token,这严重影响了模型在中文数据上的微调和推理速度。为解决这个问题,本文基于字节对编码(BPE)算法,使用sentencepiece在1200万行中文文本上训练了一个新的分词器,并将其词表大小设为50K。然后将训练得到的新词表与原始LLaMA词表进行合并,最终得到一个包含79,458个token的新词表。

在相同训练数据(中文Alpaca-3.5&4 + ShareGPT)条件下:

  • 基于LLaMA-EXT微调的模型得分为0.670
  • 基于原始LLaMA微调的模型得分为0.652

结果表明:通过中文语料二次预训练扩展词汇表,显著提升了模型的中文理解能力。这得益于34亿中文词语的持续预训练增强了LLaMA的中文语言表征。

数据质量的影响

由于 ChatGPT 倾向于生成重复性较高的对话场景(如天气查询、机票预订等),因此,通过人工设计首轮对话提示来引导其生成更丰富的内容。首轮对话提示的目的是确定对话的主题和方向,从而让 ChatGPT 在后续轮次中能够生成与主题相关的对话内容。

在首轮对话提示的基础上,ChatGPT 继续生成多轮对话,模拟用户与 AI 助手之间的交互。通过这种方式,可以生成涵盖多种场景和主题的多轮对话数据。

使用LLaMA-EXT模型时:

  • 采用GPT-4生成数据(Alpaca-4-zh)训练的模型得分为0.693
  • 采用text-davinci-003生成数据(Alpaca-3.5-zh)训练的模型得分为0.642

证明:GPT-4生成的高质量训练数据能更有效提升模型性能,数据质量对模型表现具有决定性影响。

语言分布的影响

对比不同语言训练数据的效果:

  • 纯中文数据(zh)训练的模型得分为0.679
  • 纯英文数据(en)训练的模型得分为0.659
  • 中英混合数据(en+少量ShareGPT中文)得分为0.668

关键发现:① 中文数据在中文测试场景中具有优势

② 模型的多语言能力可以实现跨语言知识迁移 

③ 少量中文数据即可显著提升英文模型的本地化表现

数据量的影响

增加训练数据规模:

  • 基础数据量(Alpaca+ShareGPT)得分为0.670
  • 增加Belle-3.5数据后得分提升至0.762

表明:数据量在训练数据量方面,数据量的增加已被证明可以显著提高性能。扩大高质量训练数据规模能持续提升模型性能。但值得注意的是,如此巨大的改进可能部分来自belle-3.5和评估数据之间的相似分布。评估数据的类别、主题和复杂性将对评估结果产生很大影响。

与ChatGPT的差距

  • 本文的最佳模型得分为0.762
  • ChatGPT得分为0.824

技术报告证明中文大模型的训练是可行的,虽然与ChatGPT还有差距。这里需要指出后续RLHF也很重要。

总结

① 词汇扩展和中文预训练是提升中文性能的基础   

② 数据质量比数量更重要   

③ 多语言模型具有跨语言迁移能力   

④ 构建均衡全面的评估集是准确衡量进展的关键

相关资讯

AI算法 | 如何训练自己的大模型?

1、第一阶段:二次预训练模型选择与转换在开始训练之前,需要选择一个合适的基础模型。 本文以LLaMA-7B为例,简单介绍下。 为了方便后续的操作,将LLaMA-7B模型转换为Hugging Face格式。

LLM核心损失函数深度剖析——KL散度与交叉熵损失

在深度学习和机器学习领域,损失函数是模型优化的核心工具之一。 它不仅决定了模型的训练方向,还直接影响模型的性能和泛化能力。 随着大语言模型(LLM)的兴起,对损失函数的理解和应用变得更加重要。

关于LLMs 复读机问题

今天来看一个关于LLMs复读机问题的详细介绍,主要从定义、出现复读机问题的原因和怎么解决三个方面来介绍:1、什么是 LLMs 复读机问题? LLMs 复读机问题:字符级别重复:指大模型针对一个字或一个词重复不断生成。 例如在电商翻译场景上,会出现“steckdose steckdose steckdose steckdose steckdose steckdose steckdose steckdose...”;语句级别重复:大模型针对一句话重复不断生成。