GPT原理(淘天)page 1

GPT是在大规模无监督文本上进行预训练,再在下游任务中用prompt或微调实现功能。

架构基础是Transfomer。1.self attention。丢弃rnn序列依赖,将序列每个位置的特征,用query、key、value三组向量计算注意力得分。2.multi-head attention。每个头在不同子空间学习不同的关注模式,最后拼接。3.位置编码。常用正余弦函数,区分不同位置的token。

GPT。1.docoder only。和原始Transfomer的encoder-decoder不同,GPT只保留解码器,用因果编码保证每个位置只能看到之前的token。2.自回归。损失函数是最大化训练预料上每个token在给定前文下的条件概率。

训练方式。1.无监督。在common crawl、webtext大规模文本上,做下一token预测,不用标注。2.zero shot。不做梯度更新,仅在prompt拼入指令,模型就能完成任务。3.不用微调。GPT-3用纯in Context Learning简化部署流程。

微调一个7B的模型需要多少显存,需要保存哪些参数(淘天)page 1

模型权重、优化器状态、激活值需要保存,如果是FP32则要大概80GB显存,如果是FP16大概50G显存。

过拟合,欠拟合,怎么解决(淘天)page 1

欠拟合。模型太简单,训练误差大。解决,增加特征维度,或降低L1 L2正则化系数,也可能是训练不足,增加epoch。

过拟合。模型太复杂,训练误差小,测试误差大。解决,减少特征维度,减少模型层数。

讲一讲lora,lora的训练过程,和tta的区别(淘天)page 1

LoRA针对Transfomer的权重矩阵,不直接更新他,而是让增量更新低维,我们只训练两个子矩阵A和B,原始不变。

LoRA训练。1.确定低秩超参。2.插入低秩模块,用两个子矩阵代替增量。3.冻结原模型,requires grad=False。4.前向传播,正常计算。5.反向传播,只对子矩阵求梯度并更新。6.推理部署。

LoRA和TTA。LoRA发生在训练阶段,TTA发生在推理阶段,有两种形式,Test Time Augmentation不更新权重,做多次augment,和Test time adaptation在线微调。

sft、dpo的区别,什么时候用哪个(监督微调和直接偏好优化区别)(阿里)page 1

sft监督微调是用最小化指令相应对的交叉熵损失,只能学习示例中的平均行为,不能和人类偏好对齐。

dpo直接偏好优化,直接最大化模型输出被人类偏好或拒绝的概率差。他将RLHF中的奖励策略优化改成对比分类问题,不用PPO等在线RL。