星海图大模型后训练一面-实习面经

面了一个多小时,整体感觉还不错,欢迎佬交流~
1.zero123
2.你有没有实际对比过普通 DDP 和 ZeRO-1?比如 4 卡情况下,把 optimizer state 或 gradient 切成 shard 之后,显存大概能省多少?
3.CPU offload
4.BF 16 和 FP 16
5.在 DDP 多卡训练 中,通常一个 epoch 的定义是:所有 GPU 协同遍历一次完整数据集,且每个样本在该 epoch 内只被采样一次。但在实际训练中,我们往往是 按 step 数控制训练与保存 checkpoint 的,比如每 5000 step 保存一次模型,这样 checkpoint 很可能落在 某个 epoch 的中间。在恢复训练时,我们一般可以恢复 model optimizer lr step,但 DataLoader / Sampler 本身是无状态的,不会自动恢复到 epoch 中间的位置。在从一个 epoch 中间的 checkpoint 恢复训练时,有没有办法保证数据采样能够“无缝衔接”,继续完成当前 epoch,而不是重新打乱或重复采样数据?
6.当 checkpoint 保存发生在 epoch 中间时,Trainer 是否能正确恢复 DataLoader 的采样状态?如果不能,工程上通常如何保证 resume 后的数据连续性?你是怎么实现的,是否用了 Accelerate或者huggingface 的Trainer
7.DDP中当同时涉及 DataLoader 和 Sampler 时,shuffle 应该由哪一层来负责?
8.PyTorch 的 DistributedSampler 内部是如何根据 num_replicas 和 rank 生成每个进程各自的数据 index 列表的?它如何在不进行进程间通信的前提下,确保多进程训练时样本划分互不重叠且覆盖完整数据集?
9.GQA
10.RMSNorm和LN
11.在实际训练系统中,从吞吐量和资源利用的角度考虑,tokenization 更合理的放置位置是在 Dataset/DataLoader 阶段,还是作为模型 forward 前的一部分?
12.手撕省份数量
全部评论
后训练没论文可以冲吗?单9硕导师放养
点赞 回复 分享
发布于 03-24 12:41 湖南

相关推荐

被横向挂了,希望发出来对大家有帮助!1* 简单概述你简历中的两个项目,包括项目背景以及你的具体分工,是独立完成还是团队协作2* 项目的数据来源是什么?你是如何确定优化目标的?3* 比如数据从 100 条扩充到 1.2 万条,是否全通过自动化生成?生成的样本具体是什么样的?举个例子说明一下生成前后的对比4* 怎么保证自动化生成数据的正确性呢5* 在通过调整参数直到模型回答正确为止的过程中,是否意味着生成的CoT中存在错误逻辑?6* 经过数据清洗后,最终用于SFT的有效数据量是多少?7* 在做微调时,除了 LoRA 是否对比过其他的微调算法8* 你是如何评价微调效果的?测试集的比例是多少?微调前后的准确率分别是多少?原有的模型性能保留了多少?9* LLM常用的结构是什么?10* 说一下Transformer 的整体结构11* 目前主流大模型最常用的位置编码是什么?。12* 写一下多头注意力机制的数学公式。13* 公式中为什么要除以 \sqrt{d_k}?其对梯度消失或梯度爆炸有什么影响?14* 在 Transformer 的 Encoder 和 Decoder 中,哪些部分是可以并行计算的,哪些不可以?15* 除了 LoRA,你还了解哪些微调方法?16* 大模型训练通常使用什么损失函数17* 在机器学习基础中,二分类问题、多分类问题以及回归问题分别使用什么损失函数?18* 你了解哪些优化算法19* 模型训练中出现过拟合的常用解决方案有哪些?20* Dropout 在训练阶段和预测阶段的处理方式是否一致?为什么要这样做?21* 大模型中的“复读机问题重复生成是什么原因导致的?如何从解码策略或训练层面解决?22* 幻觉问题产生的原因是什么?目前常用的工程解决方案有哪些?23* 写出逻辑回归的数学公式。
点赞 评论 收藏
分享
查看20道真题和解析
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务