应邀请来参加技术征文。本人2019年毕业,目前2019秋招已结束,拿到了阿里巴巴,腾讯,美团,华为的机器学习算法工程师offer,来到这个网站与大家分享面经。
先介绍一下楼主背景,985本+美国专排top15硕,有Amazon+Intel+美团的实习,现在秋招结束了,来回馈广大网友!
美团AI算法提前批(已拿两提前批offer和一个转正offer)
提前批 第一轮: 应邀参加了7月17号清华双选会,在现场先是各个部门介绍自己的算法团队。 一人可以选两个部门面试,每个面试就大概15min-30min 两个部门共问到的问题有(模型多是根据项目问):
- xgboost原理,怎么防过拟合
- gbdt推导
- boosting和bagging在不同情况下的选用
- DBSCAN原理和算法伪代码,与kmeans,OPTICS区别
- LSTM原理,与GRU区别
- 算法题:翻转中间由各种符号隔开的字符串 然后就说回去等通知
第二轮第三轮: 7月20号在望京,每个部门两轮 共问到:
- EM算法推导,jensen不等式确定的下界
- xgboost和lightgbm的区别和适用场景,推导xgboost
- LR的推导,损失函数
- gbdt推导和适用场景
- DNN的梯度更新方式,把momentum,RMSprop,Adam的公式写出来
- 算法题:2sum,3sum,4sum
- 算法题: 从右边看被遮挡的二叉树,求露出的node
- 概率题,抽蓝球红球,蓝结束红放回继续,平均结束游戏抽取次数
第四轮: hr面 就聊聊人生聊聊理想
7月23-24号左右,两天把offer都发了,让意向选择,我说想等我的转正面结束再选择,因为我还有一个部门的转正机会。
转正面: 主要就是介绍了实习期的工作,讨论做得好和不好的,然后写了一个快排一个归并,聊聊各排序算法的复杂度,稳定性,适应性,较简单,之后就是hr聊了聊。
总结:美团面试比较喜欢考察算法题,和白板写bug-free的代码
腾讯技术研究-机器学习提前批(已拿offer)
腾讯一面,电话面
- 扣简历的项目,扣的很细
- xgb,rf,lr优缺点场景。。。真的逢面必问,有不了解的可以留下评论,我可以提点拙见,最好还是自己去网上扣一下这题
- 算法题,单链表判断是否有环 (leetcode easy),以及判断环入口
- 算法题,给前序和中序,求出二叉树
- 是否写过udf,问udaf,udtf区别和一些细节
腾讯二面,电话面
- 扣项目,问简历,其中涉及的算法和上面差不多
- 问推荐算法,fm,lr,embedding
- 算法题,10亿个32位正整数,求不同值,只给1GB内存。。。我只答出来4GB的情况,时间负责度还不是最优的,所以稳稳凉了,如果有人知道怎么解1GB,求回复,感谢
腾讯三面,onsite
- 算法题: topK给出3种解法
- 算法题:二叉树的最大深度和最小深度
- 协同过滤的itemCF,userCF区别适用场景
- 扣项目,问简历,其中涉及的算法和上面差不多
- 对项目中一些技术选型产生质疑,并友好的一起讨论了这个问题
- 推荐系统的大概步骤,解决冷启动。。。
腾讯四面 最后技术总监面,onsite
- 算法题:名人问题,给出最优解法
- 问了一下项目和简历
- 自我评价优缺点,怎么改进
- 描述一个算法项目从kickoff-落地的全过程
腾讯五面 总监面完立刻就hr面了
hr面就是常见的问题,城市啊,薪资待遇啊,对部门的评价,对总监的评价 然后就在系统中提示offer报批中。。。
总结:腾讯面试会考一些业务中多遇到的问题,同时也很注重产品与技术的交互
阿里机器学习算法工程师(共面了两个部门,一个社招流程一个校招流程,拿了校招流程的offer)
校招部门: 一面:
- 扣简历,问得太细了,每个项目都要回答如果再做一次,有什么改进的地方,算法上和模型选择上改进的地方,同时对项目中技术要点聊得很细
- 算法题:反转链表
- 算法题:trim二叉搜索树
- 其他模型题都是在问我做的项目时同时穿插这问
- 非常友好的给我介绍了半小时这个部门做的事情,面试官真的非常友好,而且给我描述的很细,让人非常有欲望去
二面:
- 扣简历
- CNN为什么比DNN在图像识别上更好,这题我答得很烂,有好答案的欢迎留言
- LSTM内部的cell长啥样,有几个gate,分别怎么求出来的
- 数据倾斜怎么造成的,怎么处理数据倾斜问题
- 用mapreduce实现10亿级以上数据的kmeans
- rf和gbdt基分类器区别,里面的决策树分别长啥样,怎么剪枝
- 说一下gbdt的全部算法过程
- 算法题:丑数
三面:
这面是总监面,主要根据我的经济学背景,没有写题,只是讨论一小时怎么把经济学的知识带到算法领域。考察我的交叉背景。 其实这面是最难的,非常不好回答很多问题,但这些问题对大多数牛友没意义,所以就不分享了,有相同经济学背景的想知道可以私信我。
四面 (交叉面):
- 聊了简历上做的项目,对其中一些项目做得不太满意,问我一些改进的方式
- XGBoost推导和优点
- 介绍了LSTM,里面的每个gate是干什么,怎么得出的,并与GRU做了对比
- 让我挑一个最熟悉的模型讲,我说都可以,于是他问了GBDT,FM和FFM模型
- 也聊到了我做算法的初心,为什么一个经济学的来做算法,有哪些优势,同时也给了我很多建议,希望我打牢基础,很感谢他的建议
hr面 (视频面):
聊了一个小时
- 怎么理解大数据
- 怎么理解算法
- 数据的价值在哪
- 怎么看待数据贩卖,对还是不对
- 怎么看待阿里,和其他公司比较,why阿里
另一个部门面到4面交叉面后就结束了,没有hr面,应该是凉了或者进备胎池了 具体就不说了,因为没拿到,总之套路差不多,我搞砸了3面总监面,很砸很砸!
总结:阿里的任何一面都不能搞砸,感觉有一面B+了,基本就进备胎池凉了。阿里除了问技术,更会问一些你能为团队带来什么的问题,和一些开放性问题
华为算法工程师(hr说面试通过了,等流程,但具体offer还没有下来)
海外视频招聘,一共两面,没什么特殊的,比较少见的是问了C语言的常见坑和解决办法,其他基本差不多,整个过程感觉不太一样,感觉华为的面试确实不怎么考察技术。也可能是我太烂了。
如果大家觉得这篇文章有用,求点赞评论,毕竟是来参加这个技术征文比赛,我的非科班算法自学之路和一些学习方法写在了这篇文章,也欢迎大家关注: juejin.im/post/5ba1a5…
我在参加掘金技术征文?征文活动链接