算法工程师:双非渣硕是如何获得百度、京东双SP

本人本科硕士皆双非,和牛客大佬们没得比,目前拿到的还可以的offer就是百度SP和京东SP,都是做的推荐算法,其他的不说了。

先说一下个人经历吧,学校比较水,实验室没有项目,实习经历:腾讯实习+滴滴实习   比赛经历:几个数据挖掘竞赛Top5的名次。

个人感觉,算法岗确实看学校,但如果简历还可以的话,还是有面试机会的,内推投的简历,80%都给了面试机会吧。

百度提前批(feed部):

3轮电话面,远程桌面coding。

百度的面试风格其实是比较好把控的,基本就是项目问答、coding、机器学习算法、CS基础,偶尔会有些概率题智力题。

算法题:

1. 两个有序数组求中位数(leetcode)

2. 判断平衡二叉树(剑指offer)

3. 最长上升子序列(lintcode)

4. 二叉树转双向链表(剑指offer)

5. LRU cache实现(leetcode)

6. House Robber(leetcode)

机器学习问题:无非就是树模型(gbdt、xgboost、rf、lightgbm)原理,LR、FM原理,w2v原理,深度学习在推荐系统上应用(和面试官讨论了google的两篇paper,其中wide&deep network讲的时间比较长),神经网络embedding层和w2v中的embedding的实现区别,其他的记不清了。

CS基础:进程线程区别,多线程实现方式,线程冲突是什么、怎么解决,TCP三次握手细节,海量数据排序(分治),其他的不记得。

京东提前批(广告部):

2轮电话面,远程写code。

京东的面试个人觉得不是太难,广告部今年招人比较多,面试内容的话也是围绕项目+机器学习算法来问的,本人有京东算法赛Top20,可能也是个加分项吧。

算法题:链表翻转、判断平衡二叉树、最长公共子序列、海量数据topk问题、蓄水池抽样算法

机器学习问题:也是简历上写的算法来问的,以及问了一些DL的基础,不难。

蘑菇街:

2轮电话面+1轮CTO面。

蘑菇街的面试只是围绕项目进行的,2轮各30分钟左右,都是在问项目,以及项目中用到的技术、算法,不难。

腾讯:

对实习所在部门的工作不感兴趣,于是提前离职参加了提前批。面了AI平台部,感觉是经历过最难的面试,面试官的问题一个接着一个,有点咄咄逼人,无奈水平不够,跪了,校招时候,做了笔试没被通知面试。

1. 项目介绍 

2. 你这个项目中间哪些地方提升,中间过程分别提升了多少CTR? 

3. 你项目用的分布式LR的是用什么优化方法,参数怎么调的,mini-batch的batch是多少? parameter-server原理,如何解决数据一致性? 

4. 会分布式么,hadoop,spark会么,说说hadoop的灾难处理机制 

5. hadoop一个节点数据量太大拖垮reduce,怎么办,Hadoop本身的处理机制是怎么样的,手工的话可以怎么调 

6. hadoop数据倾斜问题如何解决 

7. L1、L2的区别,L1为什么可以保证稀疏? 

8. 各种最优化方法比较 拟牛顿法和牛顿法区别,哪个收敛快?为什么? 

9. 深度学习的优化方法有哪些? sgd、adam、adgrad区别? adagrad详细说一下?为什么adagrad适合处理稀疏梯度? 

10. DL常用的激活函数有哪些? 

11. relu和sigmoid有什么区别,优点有哪些? 

12. 什么是梯度消失,标准的定义是什么? 

13. DNN的初始化方法有哪些? 为什么要做初始化? kaiming初始化方法的过程是怎样的? 

14. xgboost里面的lambdarank的损失函数是什么? 

15. xgboost在什么地方做的剪枝,怎么做的? 

16. xgboost如何分布式?特征分布式和数据分布式? 各有什么存在的问题? 

17. lightgbm和xgboost有什么区别?他们的loss一样么? 算法层面有什么区别? 

18.lightgbm有哪些实现,各有什么区别? 

阿里的话二面跪了,内推的阿里妈妈,难度比较高,跪了也是意料之中。

还有一些公司的面试没有参加,滴滴(面试时间和腾讯笔试冲突了,放弃),网易(2次笔试都过了,不过拿到百度后就没有去面了),搜狗(电话面了1面后,让去现场面二面,放弃),拼多多(二面被面试官放鸽子)。

其他的offer就是一些小公司了,蘑菇街、YY、Bigo这些,主要还是问项目,参考意义不大。 

PS:Bigo的推荐算法团队非常厉害,都是百度高T出来的,而且今年待遇非常给力。 

下面说一下个人的学习经历吧。 

虽然是CS专业,但实验室做的方向和ML半毛钱关系没有,且实验室也只有我一个人在搞ML,所以也算是野路子出身了。 

理论基础:CS229视频、西瓜书、统计学习方法、数据挖掘导论、推荐系统实践、深度学习 

实践基础:机器学习实战(研一时候照着书上代码打了一遍)、利用Python进行数据分析(照着书敲过一遍)

完成了这些基本功之后就是参加一些比赛了,刚开始入门的时候搞天池和Datacastle比赛,成绩都很水,并且是孤军作战,个中心酸只有亲身经历才能体会,后来研二后开始和一些外校的大神组队,拿了几个还可以的名次,也在大神身上学到了不少东西,所以个人感觉做比赛最好还是要组队,思维更加开阔,一个人闷头做很容易放弃。研二上学期末开始去实习,实习做的也是搜索引擎、NLP、推荐算法相关。

再说一下面试需要准备哪些吧。

算法工程师的面试其实就是围绕几项来展开的。

1. 机器学习算法理论:LR、SVM、树模型、FM/FFM、EM、LDA、word2vec、推荐算法等等,都会被问到,需要懂得算法的推导、适用场景、使用的Trick、分布式实现。

2. 深度学习相关:CNN、RNN、LSTM的基本原理,不同激活函数的差异等等,如果是面的传统机器学习岗的话,DL问的不深,但一定会问。

3. 数据结构与算法:leetcode高频题、lintcode高频题、剑指offer,大概这三样准备好就够了,校招前保证100多道题的积累量,面试时候写code应该就手到擒来了。

4. CS基础:计算机网络、操作系统,推荐书籍:王道程序员面试宝典,这本书对于突击面试很有帮助。

5. 分布式:Hadoop/Spark这些,属于加分项,会问点基本原理,还是需要看一下。

6. 编程语言:虽然做比赛都是用的Python,但C++或者Java必须掌握其中一个,面试也会问一些语言相关的

7. 海量数据处理:经常问的就是海量数据排序

Anyway,个人的秋招结束了(其实结束很久了),虽然有些遗憾,但拿的offer和薪资也都挺满意了,知足,开始弄毕业论文了,希望能顺利毕业吧,就写到着吧,语序有点混乱,凑合着看吧。

PS:最近私信我的朋友太多,这里再补充点吧。

对于学校不那么好的、又立志找算法工作的同学,这里给点建议:

一、尽快去实习!如果是3年学硕的话,研二上学期中下(11月-次年2月) 就可以去进厂里实习了,这样做的好处是可以避开春招实习生的招聘高峰,比较容易进大厂,据我所知,像百度、滴滴、头条这些公司都有常年在招实习生的,当然了,大部分是在北京。那么怎么找这种实习呢,推荐几种投简历的渠道:1. 实习僧 2. nlp job 3. 北邮人论坛的实习板块。对于学校不那么好的同学,如果简历上有一二线公司的实习经历,那么内推简历通过筛选的可能性就大的多了。

二、 关于数据挖掘比赛,很多同学问我如何入门这块,我的建议是分步进行,1. 先熟悉python的基本语法、numpy、pandas、sklearn、gensim、keras这几个比赛中常用的库的使用;2. 精读优秀比赛选手的代码,学习比赛的套路;3. 做完以上两步,就可以开始参与比赛了,天池、CCF、DataCaslte、Kaggle等平台的比赛都可以,不要贪多,同一个时间段最多参加2个比赛就可以,然后每天坚持优化结果,虽然过程可能会有点枯燥,但是最终会有收获的,经过观察与亲身实践,这类比赛比较吃经验(套路),要想取得比较好的名次,通常需要参加几次比赛积累失败的经验才行,过程少则半年,多则一年。

三、算法题一定要刷! 如果时间紧,就刷上面说的三件套(leetcode高频题、lintcode高频题、剑指offer),当然,要多刷几遍,做到看到题目立刻想到思路并写出bug free的代码。如果时间比较充裕,可以刷刷leetcode中medium和hard的题目,锻炼思维与编码熟练度,总之,刷题是一个持之以恒的过程,切忌三天打鱼两天晒网!

四、专注于一个方向! 发现有些同学(包括我年轻时候),总喜欢这搞点那搞点,今天学一下机器学习,明天学一下Java后台,后台再学一下前端。这种方法对于大部分人来说是错误的(大牛忽略)!你要搞机器学习就专心搞,三条线并行搞:1. python -> 刷比赛  2. java -> hadoop/mapreduce/spark 3. python -> 深度学习,工作没你想象中那么难找。

作者:智障哦

本文来源于牛客网

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量子位

人工智能技术入门该读哪些书?StackOverflow上最推荐这些

王小新 编译整理 量子位 出品 | 公众号 QbitAI 学习人工智能相关技术该读什么书?这是量子位各个微信群中出现频率极高的问题。 今天,我们就从Dev-bo...

43840
来自专栏机器学习AI算法工程

中文情感分析 (Sentiment Analysis) 的难点在哪?

作者:容哲 假设分析的对象是iphone5s的手机评论。从京东、亚马逊或者中关村都可以找到这款手机的评论。大致都如图所示。 ? 情感分析(Sentimen...

67360
来自专栏牛客网

迟来的面经,回馈牛客

写个总结,回馈牛客~ 给自己也给未来面试的同学,少走弯路,命中率更高点~ 祝大家满意的offer多多(迟来的总结 [算法岗-机器学习方向]) 直接上干货 前期...

606140
来自专栏AI研习社

干货!从基础到进阶,长文解析微软量子计算概念和算法(上)

我们谈论的量子计算,是一个完全不同的领域。量子计算让我们能够以秒级、 小时级或者几天的时间去解决那些以现在的技术需要花费上亿年计算的问题,我们完全重新定义了所做...

20320
来自专栏机器学习之旅

写给想转行机器学习深度学习的同学

update 1:很多同学还是私信我,让我推荐或者提供一些电子书给他们,我这边也打包了一些我认为比较重要的,如果有需要的同学可以「邮箱」联系我。申明,我所发送的...

37840
来自专栏AI研习社

博客 | 一份中外结合的 Machine Learning 自学计划

看了Siraj Raval的3个月学习机器学习计划的视频,感觉非常好,地址:https://www.youtube.com/watch?v=Cr6VqTRO1v...

12410
来自专栏牛客网

数据挖掘算法工程师面经

走到现在,校招已经过了一半,自己心仪的公司也基本都走完了校招流程,我的校招随之已经结束了,在家中陪着父母过一个长假。闲下来,想远离代码,远离算法,好好的放松下自...

644100
来自专栏人工智能头条

争议:婚恋网站的推荐系统,怎么做才能让用户不用再回家相亲?

30130
来自专栏AI研习社

读了这些书,才能正确入门深度学习

编者按:本文作者为 Jeffries Consulting 创始人 Daniel Jeffries,他以自己的阅读体验,对当前含金量极高的几本深度学习书籍进行点...

30660
来自专栏机器学习AI算法工程

如何在业余时间学习数据分析?

我是一个web前端开发者和rails程序员,计算机专业出身,掌握Python、Ruby、C、Java编程语言,具有较为扎实的计算机理论基础。 现在工作之外的时间...

51650

扫码关注云+社区

领取腾讯云代金券