长文 | 2023届校招算法岗知识总结

简介: 长文 | 2023届校招算法岗知识总结

大家好,我是对白。


为今年校招的同学准备了一份笔面试经验大礼包。主要结合本人当年校招时候的经验以及近两年工作学习过程中的感悟收获。主要面向搜推广nlp岗位的同学。


总体而言,个人认为算法岗要找的好,除了本身的长期积累沉淀的硬实力之外(Paper,比赛,实习,项目),主要考核的就是两个方面的能力:“基础扎实程度"和"前沿知识广度”。


文章内容包括四个部分:基础能力(基础扎实程度)、搜推知识(前沿知识广度)、nlp知识(前沿知识广度)、总结。其中,基础部分变化不大,前沿知识部分相较于我当年校招时变化较大,在此做了更新,希望能够帮助到大家。


1. 基础能力



1.1 Coding基础


Leetcode刷200题+剑指offer(可在牛客网刷),尤其是链表、树、动规。做信息竞赛的可忽略。这部分其实在笔试阶段和一面阶段都会涉及,是考核基础能力的关键一环。尤其是一面的时候,如果没有做出来代码题,其实挺影响面试官给分的。题目难度视具体情况而变,大部分情况下"中等题"即可,当然实习和校招、不同公司都会有所差别。如果是博士,这个环节可能不会做硬性要求。


1.2 机器学习基础


机器学习基础变化不大。当年我主要看的李航老师的统计学习方法(LR,SVM,EM,最大熵,集成学习等)),值得反复看好几遍,每一遍都会加深理解;尤其是学习理论:贝叶斯决策理论/假设空间概念/经验风险, 结构风险/各类损失函数之间的区别与联系/极大似然估计, 最大后验估计, 贝叶斯估计的区别与联系。此外,还涉及一些通用的基础能力,例如:


  • 树模型系列论文深入理解,gbdt,xgboost,lightgbm,catboost;


  • 深度学习基础:过拟合问题、收敛性问题,dropout,bn,ln等;学习器,各种optimizer原理及对比;BP原理;各种激活函数等,最好用numpy手写一遍MLP,包括train+infer。


  • 评估体系:Precision, RecallF1, AUC, ndcg,涉及如何选择、指标的内涵、指标和样本分布关系、离线验证等。


这个部分重点关注原理+推导。


关于面试重点:


  • 树模型知识:很爱问的知识。推荐wepon大神的总结:GBDT算法原理与系统设计简介:http://wepon.me/files/gbdt.pdf,这份资料似乎链接打不开了。故特意上传了,公众号后台回复”GBDT“即可获取。


  • 贝叶斯决策理论个人觉得非常重要,是机器学习/深度学习等各类学科的基础。这里头最重要的MLE, MAP, 贝叶斯估计的区别与联系,参考李文哲老师的总结:机器学习中的MLE、MAP、贝叶斯估计


1.3 数学基础


数学题,比如贝叶斯公式算后验概率(求概率),优惠券收集问题(求期望),蓄水池问题(采样)等。还包括一些偏智力的题。这类问题主要难在理解题意,对数学中的概率/期望/微积分/极限等知识点会有些要求。之前看到的部分概率题总结,排版有点问题,凑合着看一些题型。有时间可以复习下概统、线代等课程,没时间可以看看别人的总结,比如:


互联网面试概率题总结:https://blog.csdn.net/BertDai/article/details/78070092


1.4 工程/大数据基础


如大数据处理或分布式系统原理等。对于大数据题,如:海量数据求中位数等,主要涉及到哈希,堆,bit等数据结构,外加map-reduce编程范式的灵活应用。这类题型的总结百度一下非常多。


2. 搜推广知识



找搜索推荐广告岗位的同学,这部分的学习要同时关注工业界和学术界,尽量从工业界的应用入手,来看看都用了哪些学术界的成果。这部分在面试过程也是必考核的点。


2.1 按照模型演进


  • 传统的方法:LR+GBDT(facebook文章),FM,FFM,LambdaMART。


  • 深度学习的方法:Youtube DNN,Wide & Deep,DeepFM,DIN等。


  • 图模型在推荐上的应用:GE、GNN。


可参考我的万字推荐系统/排序学习和图模型调研(推荐阅读⭐)




  • 万字长文 | 图表示学习中的Encoder-Decoder框架


2.2 按照系统漏斗


笔者近年来阅读过的经典文章,值得读一读,对面试很有帮助。


查询理解:搜索上重要模块


  • 业界盘点|Query理解在搜索中的落地技巧



召回:主要涉及向量化召回、样本选取的艺术、双塔模型、多兴趣召回,还涉及模型索引联合建模等


  • 样本构造:负样本为王:评Facebook的向量化召回算法,召回模型中的负样本构造


  • 向量召回:KDD’21 | 揭秘Facebook升级版语义搜索技术,KDD’21 | 淘宝搜索中语义向量检索技术


  • 多兴趣召回:推荐系统多兴趣召回最新进展


  • 双塔召回:双塔召回模型的前世今生(上),双塔召回模型的前世今生(下)


  • 模型索引联合建模:阿里深度树匹配召回体系演进,字节跳动Deep Retrieval召回模型笔记,TDM到二向箔:阿里妈妈展示广告Match底层技术架构演进


粗排:涉及全链路一致性、双塔粗排、对比学习、蒸馏等


  • 阿里广告技术新突破:面向最终目标的全链路一致性建模


  • 久别重逢话双塔


  • 张俊林:从对比学习视角,重新审视推荐系统的召回粗排模型


  • 知识蒸馏在推荐系统中的应用


精排


  • 阿里妈妈搜索广告预估模型2021思考与实践


  • 万字长文梳理CTR点击预估模型发展过程与关系图谱


  • 你真的懂CTR建模吗?


  • 阿里妈妈搜索广告瘦身之路?


重排:


  • 重排序调研


  • KDD’20 | Airbnb搜索多样化重排序


2.3 按照技术方向


特征工程:


  • 谈推荐系统特征工程中的几个高级技巧


特征交互:


  • 一文梳理基于Graph的特征交互在CTR预估中的应用,


  • 特征交互新路线|阿里 Co-action Network论文解读


多目标建模:ESMM、MMoE、ESSM,PLE等。


  • 多目标学习在推荐系统的应用:


https://zhuanlan.zhihu.com/p/291406172


长短期序列建模:DIN、DIEN、SIM、MIMN等。


  • 浅谈行为序列建模


  • 用户行为序列建模方法调研


  • Recsys’21 | 基于Transformers的行为序列建模


多兴趣建模:MIND、ComiRec等。推荐系统多兴趣召回最新进展


图模型:2****W字长文:漫谈图神经网络推荐系统


对比学习:


  • 谈推荐场景下的对比学习


  • 张俊林:从对比学习视角,重新审视推荐系统的召回粗排模型


冷启动:


  • 新用户冷启推荐技巧总结


  • 冷启动系统优化与内容潜力预估实践


多模态:


  • 十篇文章速览多模态推荐系统的最新进展


因果推断:


  • 快手因果推断与实验设计


  • 清华崔鹏 | 因果推断发展、思考和推荐系统应用


其它的方向:模型蒸馏,纠偏、跨域推荐、元学习、多模态等。


2.4 实战


深度CTR模型开源项目:



图模型开源项目:


  • DGL:Aws开源更新的更频繁,支持多种深度学习框架,可能更值得关注;


  • PyG:斯坦福开源的pytorch的框架;


  • PGL:百度开源,PaddlePaddle写的;


  • Euler:阿里开源的,可以细致观看各类Encoder实现 (如ShallowEncoder, SageEncoder等);node2vec实现;底层C++图引擎可以关注random walk和alias sampling的实现。仅作为学习。这个框架维护的不够及时,灵活性以及分布式实现上仍然存在很多不足。


各大Top赛事开源方案:


KDD 2020 Debias推荐赛题冠军方案


KDD 2021 图模型OGB-LSC开源方案:https://ogb.stanford.edu/kddcup2021/results/


3. nlp知识



这部分新工作也是层出不穷,个人可能也没有follow的很快,可能遗漏了一些,可以参考下。


  • nlp常见的概念:词法、句法、语义等;困惑度等。


  • 了解重要的四大类nlp任务:分类任务、序列标注任务、句子关系判断任务、生成式任务。


  • 传统的模型:语言模型、HMM、CRF、LDA等;当年会问,现在可能不一定会问。


  • 深度学习模型:RNN, Seq2Seq,Transformer。


  • 预训练模型,涉及传统非上下文感知的word2vec系列 (如Glove和PPMI等)、上下文感知的BERT系列、Prompt Tuning、大模型、多模态等。


  • 邱锡鹏老师的survey:PTMs| 2020最新NLP预训练模型综述





  • 大模型:清华刘知远:大模型「十问」,寻找新范式下的研究方向


  • 多模态预训练:从顶会论文看多模态预训练研究进展


  • 预训练在工业界的应用:相关性模型、交互式BERT/双塔BERT、模型蒸馏、命名实体识别、查询理解等。


  • 对比学习:丹琦女神新作:SimCSE


  • 近年来的其它热点方向,知识图谱,问答QA统一建模,预训练在图像上的应用MAE;MLP/CNN/Transformers之争;



8c104cc9779c0c2c3be924424e052d98.png


总结



最后总结下,个人认为算法岗要找的好,除了本身的长期积累沉淀的硬实力之外(Paper,比赛,实习,项目),4者至少取其二。


主要考核的就是两个方面的能力:


  • 基础扎实程度 (编程coding基础;ML/DL算法的数学基础):基础扎实意味着围绕某个知识点,面试官不管怎么问,都难不倒。目标是应对笔面试过程中coding以及对知识深度的考察。


  • 前沿知识广度 (follow时下科研趋势,如GNN,BERT,知识图谱,对比学习,因果推断等;以及了解工业界中推荐/搜索/nlp的整体应用和流程等)。以应对面试中的对知识广度、开放性问题的考察。


相关文章
|
3月前
|
编解码 算法 前端开发
往年 | 大疆雷达算法校招笔试题目解析
往年 | 大疆雷达算法校招笔试题目解析
55 1
|
5月前
|
算法 前端开发 测试技术
校招字符串相关高频算法题汇总【C++实现】-3
校招字符串相关高频算法题汇总【C++实现】
40 0
|
5月前
|
算法 Java API
校招字符串相关高频算法题汇总【C++实现】-2
校招字符串相关高频算法题汇总【C++实现】
27 0
|
5月前
|
算法 API C++
校招字符串相关高频算法题汇总【C++实现】-1
校招字符串相关高频算法题汇总【C++实现】
24 0
|
12月前
|
机器学习/深度学习 自然语言处理 算法
校招进阿里,我的主搜算法7年技术之路
本文作者回顾了过去7年主搜算法技术之路,现在回看每次变化都是最好的安排。
7970 1
|
算法 Java
整理牛客网---阿里校招笔试后端Java版,dfs和算法题。
整理牛客网---阿里校招笔试后端Java版,dfs和算法题。
464 0
|
算法 程序员 数据安全/隐私保护
200 道算法面试题集锦!Python 实现,含华为、BAT 等校招真题!
200 道算法面试题集锦!Python 实现,含华为、BAT 等校招真题!
333 0
200 道算法面试题集锦!Python 实现,含华为、BAT 等校招真题!
|
1天前
|
算法 数据安全/隐私保护 计算机视觉
基于二维CS-SCHT变换和LABS方法的水印嵌入和提取算法matlab仿真
该内容包括一个算法的运行展示和详细步骤,使用了MATLAB2022a。算法涉及水印嵌入和提取,利用LAB色彩空间可能用于隐藏水印。水印通过二维CS-SCHT变换、低频系数处理和特定解码策略来提取。代码段展示了水印置乱、图像处理(如噪声、旋转、剪切等攻击)以及水印的逆置乱和提取过程。最后,计算并保存了比特率,用于评估水印的稳健性。
|
2天前
|
存储 算法 数据可视化
基于harris角点和RANSAC算法的图像拼接matlab仿真
本文介绍了使用MATLAB2022a进行图像拼接的流程,涉及Harris角点检测和RANSAC算法。Harris角点检测寻找图像中局部曲率变化显著的点,RANSAC则用于排除噪声和异常点,找到最佳匹配。核心程序包括自定义的Harris角点计算函数,RANSAC参数设置,以及匹配点的可视化和仿射变换矩阵计算,最终生成全景图像。