当前位置:AIGC资讯 > AIGC > 正文

LLaMA: Open and Efficient Foundation Language Models

*背景

已有的大模型越来越多的追求更大的参数量以实现更高的性能,但有研究表明更小的模型在更大的数据集上同样可以表现良好,因此本文旨在通过大量公开可用的数据集来训练一个语言模型同时取得SOTA的性能,模型大小从7B到65B,并且开源相关模型代码。(https://github.com/facebookresearch/llama)

*Pretraining Data

预训练数据的数据构成以及分布比例,具体的文章中描述了每个数据集的获取以及预处理方式。数据包含了各种类型以满足多种需求和学习到各种任务形式,例如网页内容收集CommonCrawl,代码相关的Github、多语言的Wikipedia、学术论文相关的Arxiv。

*模型

Tokenizer:

tokenizer使用的是BPE(Byte-Pair Encoding),对于连续的数字全部分割成独立的个位数进行处理,对于未知字符则转化为byte进行编码处理。

模型架构

和其他大语言模型一样,LLaMA使用Transformer的Decoder来作为基本模型,在此基础之上总结和凝练了已有大模型的一些修改策略以及架构优化方案,具体的包括:

Pre-normalization[GPT3]:在Normalization之后进行跳跃连接,可以有助于梯度的传递从而提高训练的稳定性,同时使用RMSNorm 作为归一化层。 SwiGLU激活函数[PaLM]:使用SwiGLU替代ReLU激活函数可以提高模型性能。 Rotary Embeddings[GPTNeo]:移除了原始Transformer论文中的绝对位置编码,相应的使用旋转位置编码(Rotary Positional Embedding - RoPE)来添加位置定位信息。

工程优化

除了在模型上进行优化同时在工程方面也使用了一些技巧来进行加速计算,例如:

更加高效的Masked Multi-Head Attention实现机制(减少对于mask部分的计算)以减少计算量和显存的需求; 在forward的过程中存储线性激活的输出从而减少在反向传播时的计算量(用空间换时间)。

结果评估

模型的评估主要从Zero-shot和Few-shot出发,结合Free-form Generation和Multiple Choice tasks两种任务形式。对比的模型主要分为开源语言模型、闭源语言模型以及基于指令微调的模型,如下表中所示:

Type Model non-publicly available GPT-3、Gopher、Chinchilla、PaLM open-sourced OPT、GPT-J、GPT-Neo、 instruction-tuned OPT-IML、Flan-PaLM

模型评估方式主要包括以下几个方面:

常识推理问答(Common Sense Reasoning) 闭卷知识问答(Closed-book Question Answering),在模型没有看到涉及结果部分文字的基础上进行问答评估。 阅读理解(Reading Comprehension) 数学推理(Mathematical reasoning) 代码生成(Code generation) 广泛多任务理解(Massive Multitask Language Understanding),给定多项选择问题进行求解,问题及选项涉及到多个领域知识,从而考察模型的理解和泛化能力。

指令微调(Instruction Finetuning)

LLaMA同样进行了指令微调的实验在MMLU上对比,通过在指令数据上进行微调训练进行评估,可以发现模型的性能有极大的提高,得到的模型取名为LLaMA-I。相应的与其他模型进行了对比,在中等模型规模上的取得了不错成绩,但是与SOTA模型(GPT code-davinci-002)还是有差距。

模型偏见

LLaMA同样对模型所存在的偏见以及带来的不良社会影响进行了评估,主要包括:

侮辱、仇恨言论或威胁等不良言论的评估(RealToxicityPrompts) 模型偏见(性别、宗教、种族/肤色、性取向、年龄、国籍、残疾、外貌和社会经济地位等)(CrowS-Pairs) 性别偏见(WinoGender) 生成真实内容的能力(TruthfulQA)

结论

在本文中,作者展示了一组不同规模大小开源的语言模型(LLaMA-7B~LLaMA65B),并与其他SOTA语言模型进行了对比评估。值得注意的是,LLaMA-13B在比GPT-3参数量小10倍以上的情况下表现优于GPT-3, LLaMA-65B与Chinchilla-70b和PaLM- 540b具有可比的竞争力。与之前的研究不同,本文研究表明,完全利用公开数据进行训练,而不诉诸于专有数据集,就有可能实现最先进的性能。本文的模型进行开源发布,希望可以促进科研和工业界的进展。未来的工作计划之一则是结合指令微调进一步提高模型的性能。

更新时间 2024-06-17