算法打工人阿旺 level
获赞
107
粉丝
133
关注
0
看过 TA
758
中山大学
2026
算法工程师
IP属地:山东
阿里高级算法工程师,多模态/大模型/搜广推方向辅导
私信
关注
今天老师给大家分享推荐算法3轮面经,供各位同学参考。1️⃣第一轮1、先自我介绍,我的习惯是经历简单介绍一下,然后自然转向准备最充分的一个项目开始详细讲,面试官感兴趣的话最好,不感兴趣的话会直接打断的。主要介绍了项目的背景,难点和解决方案,面试官关心的点主要集中在问题抽象和损失函数,讲清楚为什么这么做,项目大概聊了半小时左右2、机器学习基础:推导 lr,写出loss和梯度(比起推导svm来说简直就是送分题,要是写不出来的话估计会直接挂,基础还是要好好准备)3、算法 链表对折 1 2 3 4 5 变成 1 5 2 4 3拆解一下题目,(灵活)找到链表的中点 牛客题霸: 链表中倒数第k个节点 是找中点的复杂版,都是双指针解法翻转后半段链表 牛客题霸: 翻转链表合并两个链表 牛客题霸: 合并两个有序链表 是复杂版2️⃣第二轮1、先介绍项目,主要聊了项目背景和收益,收益具体怎么衡量,项目如何上线生效2、算法题 m*n的二维数组,只能往右或者往下,找最短路径,n空间 牛客题霸: 矩阵的最小路径和3、有了解过设计模式吗?(答了常见的工厂模式和单例模式,对应的应用场景,简单扯了一下装饰器模式,也是看xgb源码看到的,其实不会用)4、系统设计需要注意什么,如何设计一个系统,系统性能如何评估,需要考虑哪些指标(考察点应该是线上的系统了,指标比如内存使用率,qps,99 39 49时间之类的)5、之前帮阿里云录制过一些深度学习的入门课程,简单聊了一下相关的内容3️⃣第三轮1、先介绍项目,主要聊了项目背景和收益,收益具体怎么衡量,项目如何上线生效2、介绍xgbgbdt和xgb的区别(居然没有问lgb)怎么选最优分裂节点,怎么加速,预排序有什么作用,怎么分箱,等宽还是等深怎么处理缺失值的,预测时候缺失值怎么办3、为什么离职,希望一份什么样的工作4、有没有什么问题想要了解的(问了业务场景 工作内容)📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
查看10道真题和解析
0 点赞 评论 收藏
分享
翻遍各种大模型的实现,虽然结构上可能保留了 dropout 的实现,但是采样概率都设置为 0 了。唯一一个比较新的,还用 Dropout 的模型是 Meta 训练的 Galactica 模型。那为什么现在不用了呢?核心还是要弄清楚 Dropout 的使用场景。Dropout 之前在深度学习当中是一个特别好用的方法,可以防止过拟合,提高泛化。所以说,当模型较大,数据较少的时候,使用 Dropout 是比较合适的。现在大模型处在什么状态呢?✅预训练在预训练阶段,目前可能还是处于欠拟合的状态。之所以说可能,是基于目前公开的一些论文的出的结论。但是现在闭源的公司在采用大量数据合成的情况下,已经训练足够充分或者接近充分也说不定。以 llama 一系列论文为例,训练 llama 1 的时候,龙猫 Scaling law 里面提到 GPT3 是一个训练很不充分的模型。然后给出的数据配比的建议是,10B 的模型要采用 200B 的 token 来训练。但是 llama 1 采用了 7B 的模型,训练量 1T 的 token 发现性能依然有提升。而且预训练所有的语料一般只过一个 epoch,某些特定的领域可能过 2个 epoch,可以认为样本的重复率很低。所以,在数据足够多,多样性足够而且没有太多重复的情况下,大模型在预训练阶段仍然没有过拟合的风险。也就完全不需要采用 dropout。✅Dropout 就完全不需要了么?如果上面的条件不能满足,Dropout 还是有用武之地的。比如前面提到的 Galactica 模型。这个模型和其他大模型不太一样的地方是训练了 4.25 个 epoch,因为他们认为高质量的数据更重要一些,但是又没有那么多,所以就 repeat 数据了。在论文《To Repeat or Not To Repeat: Insights from Scaling LLM under Token-Crisis》 中,详细列举了数据 Repeat 对训练 LLM 的影响,并且证明了 Dropout 可以缓解数据重复带来的性能损失。在文章《Can LLMs learn from a single example?》中,也提到了在 SFT 的时候,少量的重复数据就会降低模型的性能。这也符合常理,SFT 的数据分布和预训练的通常是不太一样的,重复的数据会让模型拟合新的分布,从而忘掉旧的分布。文中同样也提到 Dropout 可以缓解数据重复带来的影响。所以 Dropout 在数据量较少,多样性不高,需要 repeat 的场景下,依然是一个减少过拟合的很方便的手段。比如现在已经有一些在 LoRA 微调的时候采用 Dropout 的研究了。
0 点赞 评论 收藏
分享
今天老师整理了大模型入门的几个学习步骤、目标和需要掌握的基础知识,供初学者快速掌握基本路径。1️⃣前置知识: Python 基础、 Linux 基础🌟学习内容1.熟练掌握 Python 语言,熟悉常用的Python 库和工具,如 NumPy 、 Pandas 、  Scikit - learn 、 PyTorch 等。2.具备 NLP 相关的基础知识,包括文本预处理、分词、词性标注等。3.对大模型有一定了解,包括Transformer 模型的结构和原理、基于注意力机制的自然语言处理技术等。2️⃣Step1:NLP相关基础知识🌟学习内容1.了解文本预处理、分词、词性标注、命名实体识别、词向量表示等基础知识。2.掌握机器学习中的数据预处理、特征提取、分类、回归等基础算法,并了解其在 NLP 领域的应用。3.了解大规模 NLP 任务中的常用技术和方法,如深度学习中的 Transformer 模型、 BERT 、 GPT 等。3️⃣Step2:GPT API 调用及 Prompt 设计🌟学习内容了解 GPT API 的调用方式和基本操作,熟悉 Prompt 设计技巧和要点,能够结合自己的任务调用 API 实现对应的任务代码。4️⃣Step3:模型微调( Fine - tuning )🌟学习内容了解常见的微调模型的基本流程和原理,熟悉数据集的构造、训练、评估等过程,能够独立构建 QA 对,在服务器上对模型进行微调。5️⃣Step4: RAG (外挂数据库)🌟学习内容RAG 作为目前最火的一个 LLM 落地方向,可以结合私有数据(表格、 word 、 txt 、 pdf 、数据库皆可)实现本地问答,且训练成本较低,可以快速实现效果。✴️有需要提升面试能力和辅导项目的同学可以后台联系我~
0 点赞 评论 收藏
分享
今天老师给大家分享推荐算法3轮面经,供各位同学参考。1️⃣第一轮1、先自我介绍,我的习惯是经历简单介绍一下,然后自然转向准备最充分的一个项目开始详细讲,面试官感兴趣的话最好,不感兴趣的话会直接打断的。主要介绍了项目的背景,难点和解决方案,面试官关心的点主要集中在问题抽象和损失函数,讲清楚为什么这么做,项目大概聊了半小时左右2、机器学习基础:推导 lr,写出loss和梯度(比起推导svm来说简直就是送分题,要是写不出来的话估计会直接挂,基础还是要好好准备)3、算法 链表对折 1 2 3 4 5 变成 1 5 2 4 3拆解一下题目,(灵活)找到链表的中点 牛客题霸: 链表中倒数第k个节点 是找中点的复杂版,都是双指针解法翻转后半段链表 牛客题霸: 翻转链表合并两个链表 牛客题霸: 合并两个有序链表 是复杂版2️⃣第二轮1、先介绍项目,主要聊了项目背景和收益,收益具体怎么衡量,项目如何上线生效2、算法题 m*n的二维数组,只能往右或者往下,找最短路径,n空间 牛客题霸: 矩阵的最小路径和3、有了解过设计模式吗?(答了常见的工厂模式和单例模式,对应的应用场景,简单扯了一下装饰器模式,也是看xgb源码看到的,其实不会用)4、系统设计需要注意什么,如何设计一个系统,系统性能如何评估,需要考虑哪些指标(考察点应该是线上的系统了,指标比如内存使用率,qps,99 39 49时间之类的)5、之前帮阿里云录制过一些深度学习的入门课程,简单聊了一下相关的内容3️⃣第三轮1、先介绍项目,主要聊了项目背景和收益,收益具体怎么衡量,项目如何上线生效2、介绍xgbgbdt和xgb的区别(居然没有问lgb)怎么选最优分裂节点,怎么加速,预排序有什么作用,怎么分箱,等宽还是等深怎么处理缺失值的,预测时候缺失值怎么办3、为什么离职,希望一份什么样的工作4、有没有什么问题想要了解的(问了业务场景 工作内容)📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
查看9道真题和解析
0 点赞 评论 收藏
分享
翻遍各种大模型的实现,虽然结构上可能保留了 dropout 的实现,但是采样概率都设置为 0 了。唯一一个比较新的,还用 Dropout 的模型是 Meta 训练的 Galactica 模型。那为什么现在不用了呢?核心还是要弄清楚 Dropout 的使用场景。Dropout 之前在深度学习当中是一个特别好用的方法,可以防止过拟合,提高泛化。所以说,当模型较大,数据较少的时候,使用 Dropout 是比较合适的。现在大模型处在什么状态呢?✅预训练在预训练阶段,目前可能还是处于欠拟合的状态。之所以说可能,是基于目前公开的一些论文的出的结论。但是现在闭源的公司在采用大量数据合成的情况下,已经训练足够充分或者接近充分也说不定。以 llama 一系列论文为例,训练 llama 1 的时候,龙猫 Scaling law 里面提到 GPT3 是一个训练很不充分的模型。然后给出的数据配比的建议是,10B 的模型要采用 200B 的 token 来训练。但是 llama 1 采用了 7B 的模型,训练量 1T 的 token 发现性能依然有提升。而且预训练所有的语料一般只过一个 epoch,某些特定的领域可能过 2个 epoch,可以认为样本的重复率很低。所以,在数据足够多,多样性足够而且没有太多重复的情况下,大模型在预训练阶段仍然没有过拟合的风险。也就完全不需要采用 dropout。✅Dropout 就完全不需要了么?如果上面的条件不能满足,Dropout 还是有用武之地的。比如前面提到的 Galactica 模型。这个模型和其他大模型不太一样的地方是训练了 4.25 个 epoch,因为他们认为高质量的数据更重要一些,但是又没有那么多,所以就 repeat 数据了。在论文《To Repeat or Not To Repeat: Insights from Scaling LLM under Token-Crisis》 中,详细列举了数据 Repeat 对训练 LLM 的影响,并且证明了 Dropout 可以缓解数据重复带来的性能损失。在文章《Can LLMs learn from a single example?》中,也提到了在 SFT 的时候,少量的重复数据就会降低模型的性能。这也符合常理,SFT 的数据分布和预训练的通常是不太一样的,重复的数据会让模型拟合新的分布,从而忘掉旧的分布。文中同样也提到 Dropout 可以缓解数据重复带来的影响。所以 Dropout 在数据量较少,多样性不高,需要 repeat 的场景下,依然是一个减少过拟合的很方便的手段。比如现在已经有一些在 LoRA 微调的时候采用 Dropout 的研究了。
简历中的项目经历要怎么写
0 点赞 评论 收藏
分享
04-29 07:46
已编辑
中山大学 算法工程师
0 点赞 评论 收藏
分享
结合最近辅助修改的简历及项目,老师总结了部分大模型微调简历的踩雷点。🙅‍♂️错误示范:在 x任务中,获取 xxx 条数据,通过规则 or 脚本清洗出 x 条数据,然后微调 y 大模型,在业务上提升 x 个点。✍🏻原因:大模型微调的平台是现成的,基模是现成的,体现不出核心能力。✅应该怎么写?首先介绍业务背景:业务是一个销售对话业务,机器人是销售,代替真人,直接面对用户。我们会给模型设定任务,任务是 prompt 。步骤1️⃣.提取训练数据问题:1.真人通话每通电话任务是未知的,我们训练数据是任务+通话的 pair 对。2.真人通话很乱,与客户的对话是各种交叉的,导致 asr 后并不是一人一轮。解决方案:1.首先通过大模型 prompt 对该通电话提取任务,得到任务+ pair 对。需要用到 cot + reflection +多 Ilm 一致性+ debating 的模式。2.使用大模型根据以上任务和真人对话,让大模型编写出通话内容。提问,为什么要编写而不是直接用?步骤2️⃣.制定训练数据集问题:1、正常的对话内容,前面几句和后面几句基本上一致的。都是问候和拜拜,但是也有一些差异。2、因为都是相似场景,虽然任务不同,但是很多场景语义很相似。解决方案:1、基于轮次的权重采样:通过轮次设定权重进行 weighting sample 。解决问候和拜拜的高占比问题。2、基于语义的采样:使用 bert 对对话内容进行 embedding ,然后使用层次聚类通过调节阈值聚类出相似语义的类。对一个类里的样本进行随机采样,提问,为什么要对重复语义的数据进行下采样?3、基于客户类型和产品的采样,因为很多产品是热品,导致对话内容有偏,用户类型一样,需按照类型调整整体比例采样。提问,为什么要这么采样?步骤3️⃣.制定训练数据集我们直接把输出当作 target 进行训练。使用的 lora 训练,但是 lora alpha 设定成为4倍的时候达到了比较好的效果,经验值不同任务不一样,提问,在各种情况下要怎么调?步骤4️⃣.dpo训练问题:v1版本训练时,很多输出内容是对的,但是输出的语气不太像真人,机器人味还是很严重。解决方案:由于训练本身是有 ground truth 的,因此使用v1训练的模型,预测训练集,使用大模型对比两者语气不符合训练集的拿出来,使用训练集的 ground truth 和模型的预测数据作为 dpo 训练对,对v1版本模型重新训练。📳这里老师只是简要进行概括解答,具体情况和详细解答可以咨询辅导,如果想了解项目辅导,提升面试能力,欢迎后台联系。
简历中的项目经历要怎么写
0 点赞 评论 收藏
分享
今天老师结合辅导经验,分享一些丰富项目经历的方法,供各位同学参考学习。✅关于怎么找项目这个问题,其实来源可以是很多的,比如数据竞赛: Kaggle 、百度 AlStudio 、阿里天池等✅Github 高 Star 项目✅项目辅导:在辅导中老师会带各位同学接触实际大厂的高级别项目,能够满足技术栈和大厂契合,有应用场景,有可以发布论文的创新点或者能解决业务问题的整体Pipeline,并且有明确的优化思路(比如版本迭代)。也很重要的是✴️你能否把你的项目完整且精彩的写在简历上并且讲述给你的面试官听。📳过程分为三步:1️⃣明确想做的任务和方法:任务:拿 NLP 举例,主要分为四大任务:分类任务、生成任务、序列标注、句子关系判断方法:主流方法 or 前沿方法。还是拿 NLP 举例,主流方法可以是 BERT ,前沿方法当然就是大模型微调啦2️⃣找到相关代码+多迭代明确任务和方法之后,就可以找找 Github 先跑通一个 Version 1了。接下来比较关键的一步就是如何优化你的 Version 1了。比如你可以从数据预处理、加入小 trick 、对比不同模型性能等多种角度来以此尝试,试图能否提升性能与效果。其实这就是面试官想看到的,因为大家可以想想互联网的一个最重要的特点不就是飞速的迭代嘛,很多的算法岗业务也是如此:要不就是开辟新业务,要不就是用新方法重新做一遍旧业务,一旦优化成功了,你的新模型就成功上线了。3️⃣写好故事+讲好故事简历书写(这一篇笔记先不具体展开了),但大致可以按照下面一部分的几个角度来切入讲好故事:面试前提前准备好下面几个问题,数据是什么,方法是什么(对应八股要准备好),项目的目的是什么﹣﹣让面试官有个总体了解是怎么迭代算法与模型的,性能对比情况如何﹣﹣体现你的工程能力与优化能力,遇到过什么困难,是如何解决的﹣﹣提升真实性,让面试官直观的感受到你是自己做的,还有什么改进空间﹣﹣体现你的思考与沉淀。📳如果想进行更加详细具体的项目辅导,提升面试能力,欢迎后台联系。
简历中的项目经历要怎么写
0 点赞 评论 收藏
分享
今天老师给大家梳理了部分大厂搜广推算法岗面试真题,供各位同学参考学习。1.PPNet的核心思想是什么?为什么要 stop gradient ?什么时候不需要这样操作?2.多目标模型很容易遇到跷跷板问题或者两个 loss 数量级相差很大,优化速度差异太大,你知道有什么优化方法吗?3.NEG loss 和 NCE loss 有什么区别? infonce loss 公式是什么4.召回业务一般怎么定义负样本? bce loss 的公式是什么?简述一下 Pointwise , pairwise 和 listwise 的区别是什么?召回一般用什么 loss ?5.粗排的作用?怎么验证粗排精排的链路一致性?用什么指标可以衡量链路一致性?6.大模型了解吗?怎么在推荐中应用?比如怎么在召回中用?大模型训练分成哪几个阶段?简述一下各个阶段在干什么7.千万级别的整型数组,怎么获取其中出现次数最多的前 N 个数?(考数据结构)8.讲一下你知道的机器学习里面的算法,比如 AdaBoost , GBDT , XGBoost 这些。 Bagging 和 Boosting 的区别?随机森林是什么9.讲一下Word2vec是怎么做的?怎么降低计算复杂度?10.你知道的中心极限定理有哪些?11.双塔模型优势和缺点,怎么改进?12.粗排的目的是什么?有哪些指标,粗排应该向精排看齐吗?13.说一下 BN 的公式,哪几个参数是在训练时更新,在推理时还更新吗?简述一下测试过程中的 BN 怎么算。 BN 和 LN 的区别?14.当神经网络的权重初始化为0时,会遇到什么问题?15.你能抽象地归纳出序列建模发展的脉络吗?以及它的最终形态应该是什么样子?📳对于想求职算法岗的同学,如果想参加高质量项目辅导,提升面试能力,欢迎后台联系。
查看15道真题和解析
0 点赞 评论 收藏
分享

创作者周榜

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