算法打工人阿旺 level
获赞
185
粉丝
232
关注
0
看过 TA
1444
中山大学
2026
算法工程师
IP属地:山东
高级算法工程师,多模态/大模型/搜广推方向辅导
私信
关注
深度学习模型参数初始化为0会导致严重的训练问题,主要体现在以下方面:一、参数对称性与神经元退化1.同层神经元输出一致当所有权重初始化为0时,同一层的所有神经元在前向传播中会输出相同的激活值(例如隐藏层神经元输出均为0)。即使反向传播时梯度不为0,所有参数的更新幅度也会完全一致,导致神经元无法学习差异化特征。2.网络退化为单神经元效果由于参数对称性,每一层相当于仅有一个有效神经元在起作用,其余神经元成为冗余计算单元,极大降低了模型的表达能力。二、梯度消失与参数更新失效1.反向传播梯度趋零在激活函数如 ReLU 的前向传播中,若输入为0,其导数也为 O (如 ReLU 在负区间的导数为0)。反向传播时梯度逐层衰减至0,导致权重无法更新。例如,两层 ReLU 网络初始化为0时,所有梯度均为0,参数完全停滞。2.偏置参数的局限性即使偏置( bias )初始化为非零值,若权重矩阵为0,前向传播的输出仍由偏置主导,无法有效传递输入信号的特征信息。三、特殊情况下的例外1.无隐藏层的模型可初始化为0逻辑回归、单层感知机(如线性回归)等无隐藏层的模型,由于参数更新不受对称性影响,初始化为0仍可正常训练。例如逻辑回归的梯度更新依赖输入数据的差异性,参数可通过训练逐步分化。2.偏置参数的初始化策略部分研究表明,偏置可单独初始化为0而不影响训练(如全连接层的偏置项),但需结合非零权重初始化。📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
0 点赞 评论 收藏
分享
XGBoost和LightGBM都是基于梯度提升决策树(GBDT)的集成学习算法,但在实现细节、性能特点和适用场景上存在差异。以下是两者的主要区别:1️⃣树的生长策略· XGBoost:采用层级生长(level-wise)策略,逐层扩展树的节点,树结构相对均衡,适合数据量较小或中等规模场景。· LightGBM:采用叶子节点优先(leaf-wise)策略,每次优先选择信息增益最大的叶子节点进行分裂,能更快减少误差,但可能导致树的深度更深、结构更不平衡,适合大规模数据集。2️⃣特征分裂点选择方式· XGBoost:使用精确分裂法(exact greedy algorithm),遍历所有特征值的可能分裂点,计算信息增益,选择最优分裂点,计算开销较大。· LightGBM:采用直方图分裂法(histogram-based algorithm),将连续特征离散化为多个区间(bins),在区间上搜索分裂点,显著降低计算复杂度,尤其适用于大规模数据。3️⃣对类别特征的处理✔️ XGBoost:不直接支持类别特征,需进行独热编码(one-hot encoding),增加数据维度,可能影响计算效率。✔️ LightGBM:原生支持类别特征,无需独热编码,通过搜索最佳分裂方式处理类别特征,提高处理效率。4️⃣处理大数据的能力·✔️XGBoost:通过块结构(block structure)并行处理数据,适合大规模数据集,但内存消耗较大。✔️ LightGBM:引入梯度单边采样(Goss)和互斥特征捆绑(EFB)技术,减少计算量和内存占用,训练速度更快,尤其适合高维稀疏数据。5️⃣正则化与防止过拟合✔️XGBoost:通过L1和L2正则化项控制模型复杂度,限制叶节点权重和数量。✔️ LightGBM:支持L1和L2正则化,同时通过设置最小数据量叶子(min_data_in_leaf)、最大深度(max_depth)等参数防止过拟合。6️⃣训练速度与内存消耗·✔️XGBoost:计算效率较高,但在大规模高维数据上内存占用较大,训练速度可能受限。✔️ LightGBM:训练速度通常更快,内存消耗更少,尤其在处理大规模数据集时优势明显🍓适用场景建议:✔️若数据量较小、对模型可解释性要求高,或需要精细调参,可选择XGBoost。✔️若数据量大、特征高维稀疏,或追求快速训练和低内存消耗,LightGBM更合适。📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
0 点赞 评论 收藏
分享
1️⃣一面 1、介绍自己的中厂实习,从业务背景,困难,解决方法,自己的产出四个维度阐述。2、 ppo 和 dpo 区别和原理(因为实习做的就是 rl 相关)3、是不是用的 Verl 框架做的 rl ?详细讲一下 verl 框架的训练流程。并讲一下配置文件中 rollout _ batchsize , global _ batch _ size , micro _ batch _ size _ per _ device _ for _ update , rollout . n 等等参数的关系,以及他们如何影响最终更新时每张显卡上的样本数。4、reward function 如何设计的为什么这么设计?5、critic model 作用是什么?为什么有了 reward model 还需要 critic model ?6、有没有了解最近的 rl 方法?过了一遍 grpo , dapo , gspo 过了的主要改进点7、计算机基础八股: B 树和 B 一树的区别。如果 CPU 突然被打满了,如何排查?什么情况下会出现锁,如何解决。8、核心代码模式,写一下大模型预测token 时, beam 树如何构建,如何得到最终的结果( pytorch 简单实现了一下,主要是还是讲明白)9、手撕hot100,中等题,最小生成树。2️⃣二面1、简单介绍中厂实习经历。2、模型蒸馏的数据如何做的?如何清洗蒸馏得到的数据?3、有没有使用强化学习做过数据仿真。这个之前看过一篇论文,刚好讲了一下。4、有没有了解过训练推理一致性这个领域?我讲了一下强化学习领域的推训一致性,固定 flash attention 分块策略, vllm 推理框架固定 page attention 分块策略。5、模型量化如何做的。 gptq , qat 等等,并说明为什么选择了w8a16的量化?6、写一下 ppo 算法的损失函数和 GAE 优势函数。主要还是讲明白7、 grpo 算法中 kl 散度和之前的方法有什么区别?在 dapo 中为何舍弃了 kl 散度?8、模型蒸馏主要的两种方式。硬标签和软标签。9、介绍一下 kmeans 算法,如何设置合适的 k 值。如果在一个非常大的数据量中,如何实时增量更新,并动态管理 k 值。10、一个场景题11、手撕题hot100,中等题,合并 k 个升序链表。📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
查看19道真题和解析
0 点赞 评论 收藏
分享
1.简单介绍实习的整个项目背景2.训练数据是怎么构建的,大概有多少量;测试集如何构建3.为什么你在项目中选择用 Qwen 的模型而不用内部模型;文本检索时有 embedding 初步排序和重排两种模型可选,为什么选择 Rerank 方式做重排,而非其他重排方式4.GRPO/ GSPO 训练的流程是什么,一条数据的处理过程及损失计算方式是怎样的, GSPO 相比 GRPO 做了哪些改进; GSPO 训练时,损失函数是怎么设计的;数据相同的情况下,为什么 GSPO 相比 GRPO 优化效果5.实习项目是否已上线,每天的访问量多少;系统中有很多重复或相似的用户问题,一直检索会浪费资源,有哪些优化方式能节约资源6.传统的记忆机制在使用过程中,该怎么进行更新和遗忘7.一个标准的 RAG 系统包含哪些模块,整个 RAG 流程是怎样的8.结合实践,写效果好的大模型 Prompt 一般有什么经验,其模块或每个部分应该写什么内容;除了你提到的, Prompt 还有其他比较重要的模块或部分吗;假如针对某个任务(比如 RAG 系统最后做总结)写了一个初始 Prompt ,发现结果有问题、不能很好遵循要求,有什么样的优化策略方式;还有其他能想到的优化方式吗9.你自己在以后的工作中,更感兴趣做模型优化还是做应用相关的工作?这方面是怎么考虑的10.手撕三选二:LC200最大岛屿,LC221最大正方形,LC31搜索旋转排序数组📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
0 点赞 评论 收藏
分享
一、模型问题1.梯度爆炸( Gradient Explosion )⭕原因:反向传播时梯度指数级增长,导致权重更新后输出溢出。表现为 Loss 骤增后突变为 NaN ,梯度值远超正常范围(如>1e5)。✅解决:1️⃣梯度裁剪:限制梯度范数(如 PyTorch 的 clip _ grad _ norm _( max _ norm =1.0))。2️⃣降低学习率:初始学习率设为较小值(如1e-4),或使用自适应优化器( Adam )。2.权重初始化不当⭕原因:初始权重过大(如方差过大)或过小,引发激活值指数级变化。✅解决:1️⃣使用 Xavier ( Tanh / Sigmoid )或 He 初始化( ReLU )。2️⃣避免全零初始化导致对称性破坏。二、数据问题1.输入数据含异常值⭕原因:数据中存在 NaN 、 Inf 或极端值(如全零、极大/极小值),导致前向传播计算溢出。✅解决:1️⃣使用 numpy . isnan ()或 torch . isnan ()检查输入和标签数据。2️⃣确保数据预处理正确(如归一化、标准化),避免未处理的离群值。2.数据预处理缺陷⭕原因:未归一化的数据(如图像未除以255)或缺失值处理不当,引发激活值过大。✅解决:1️⃣对输入数据执行归一化(如缩放到[0,1]或[-1,1])。2️⃣对缺失值填充合理数值(如均值)或剔除异常样本。三、训练策略问题1.混合精度训练问题⭕原因:FP16精度下数值范围小,易出现上/下溢出。✅方案:1️⃣启用梯度缩放( GradScaler in PyTorch )。2️⃣关键计算(如 Softmax )转为FP32。2.学习率过高⭕原因:过大学习率使权重更新剧烈,输出超出浮点范围。✅调整:使用学习率调度器(如余弦退火、 Warmup 等学习率调整策略)。📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务