LLM 面试题记录
记录看到的一些大模型相关面试题,以及自己对关键考察点的整理。
鹅厂
1. 大模型中为什么不再使用Dropout
考察点: 对大模型训练范式演变的理解 图示
混淆点: Transformer论文中是由Dropout的,在GPT2.2中也在Residual connection、Attention、Embedding这些地方都加上Dropout。但是到了GPT3,LLaMA中Dropout要么被取消,要么被设置的很小。
Dropout是什么:通过随机丢弃一部分神经元来防止模型过拟合
回答:不是完全不用,是在预训练的过程中越来越少了。
核心原因一: 现在的大模型单论预训练几乎不存在过拟合,现在的大模型训练使用的数据量巨大,且epoch设置为1即每条数据模型只见过一次。
核心原因二: 传统深度学习中数据集规模小,模型容易把训练集的噪声和特殊模式学进去,所以使用正则化手段,提高模型的泛化。现在模型训练的数据量巨大,数据多样性就是最好的正则化,大模型语境下数据规模和数据多样性取代了传统正则化技术的作用
核心原因三: Dropout会拖慢训练和推理效率,去掉Dropout能提升训练稳定性和吞吐量。
细节补充:不是所有位置的Dropout都去掉了,微调阶段可能还会使用Dropout,微调是在特定量小数据展开,可能需要用来防止过拟合。
补充:原始Transformer使用Dropout是因为当时的训练范式是小数据多epoch,而且Transformer最初是为机器翻译设计的,数据规模和现在的LLM完全不是一个量级的。