LLaMA2模型调优案例

LLaMA2引入了一系列预训练和微调大语言模型,参数量范围从7B到70B。相比LLaMALLaMA2的训练token增加了40%,上下文长度更长,支持旋转位置编码, 并且利用了分组查询注意力机制来节省参数量,从而加速训练和推理。LLaMA的高效、开源以及对商业使用的宽容使得它成为目前客户最愿意尝试训练的模型。

本小节将以NPU平台上的客户实际成功案例来介绍LLaMA2-70B模型的训练过程。

主要模型与优化器初始配置

表1 初始配置表

配置项

说明

数值

tensor-model-parallel-size

张量并行度

8

pipeline-model-parallel-size

流水线并行度

8

num-layers

层数

80

hidden-size

隐状态维度

8192

ffn-hidden-size

前馈网络隐状态维度

28672

num-attention-heads

注意力头的数量

64

normalization

归一化方法

RMSNorm

num-query-groups

查询组数量

8

micro-batch-size

微批大小

2

global-batch-size

全局批大小

1024

seq-length

序列长度

4096

max-position-embeddings

最大输入序列长度

4096

hidden_dropout

隐藏层dropout

0.0

attention_dropout

注意力层dropout

0.0

lr

学习率

1.5e-4

lr-decay-style

学习率衰减方式

cosine

min-lr

最低学习率

1e-5

weight-decay

权重衰减

1e-2(过低)

clip-grad

修剪梯度

1

lr-warmup-fraction

学习率预热步数占比

0.01

adam-beta1

adam优化器梯度动量参数

0.9

adam-beta2

adam优化器梯度方差参数

0.999 (参数过大)

adam-eps

adam优化器极小值参数

1e-8

问题分析及优化方案