LLaMA-META发布单卡就能跑的大模型
2023年2月25日,Meta使用2048张A100 GPU,花费21天训练的Transformer大模型LLaMA开源了。
1.4T tokenstakes approximately 21 days
以下是觉得论文中重要的一些要点
1)相对较小的模型也可以获得不错的性能
2)不一定要专业语料,精细处理的开源语料也可以
LLaMA使用CommonCrawl、C4、Wikipedia、Books等语料,并且引入了Github、XrXiv、StackExchange等开源专业语料,模型也具备了不错的写代码、处理数据公式和推理的能力。
3)各种稳定模型训练的优化技术必不可少
LLaMA基于Transformer模型架构,并且应用了各种优化技术以加速和稳定模型的训练过程。
参考GPT3的训练经验,使用RMSNorm标准化每个transformer block输入,标准化输入能提高训练的稳定性。
参考PaLM经验,使用SwiGLU激活函数替代ReLU激活函数。
参考GPTNeo,使用RoPE位置编码替代原来的绝对位置编码。
同时LLaMA引入causal multi-head attention以减少计算和存储开销,重写了transformer的backward以减少冗余计算,同时考虑GPU的计算和通信的重叠加速训练。
LLaMA使用AdamW优化器,并采用warmup技巧。其实我觉得AdaMax可能会更好些,AdaMax在Speech上相比AdamW更稳定,当然Speech数据和文本数据还是有较大差别的。
4)LLaMA的模型的结果还是可以的
LLaMA在多个指标上同样获得了不错的性能,获得和GPT3差不多的性能。
类似于GPT-3,LLaMA也能没经过调优直接应用到下游任务,具体为zero-shot task和few-shot task。
zero-shot不给参考例子,在给定q时直接让模型生成回答a。few-shot则类似于给出参考例子,给出1、5或64个qa对作为参考,然后在给定同类型的q让模型生成回答a。以下是一个one-shot的例子。
在zero-shot和few-shot类任务中LLaMA获得不错的性能,并不比更大的模型差(分数越高越好)。
同当前大模型GPT-3,Gopher、Chinchilla、PaLM相比,LLaMA在多个指标上获得明显的性能提升,并且LLaMA在数学推理任务上获得更好的性能,数学推理据说在chatGPT上栽了跟头。
虽然LLaMA在保证回答正确、没有偏见和对人类有用上花费了很多优化,但正如论文所说,由于预训练语料中的一些偏见,模型可能会产生一些匪夷所思的答案。模型要真正服务人类,可能还是需要使用RLHF,使用人类反馈指导模型对问题回答的选择。
---
[1] LLaMA.
[2] LLaMA: Open and Efficient Foundation Language Models.
[3] Illustrating Reinforcement Learning from Human Feedback (RLHF).