一位95后程序员的分享:如何拿下年薪45万的offer?

导读:本文作者诚朴求食最近就算法/机器学习的岗位面试了一圈大的互联网公司,分享了他的一些面试经验,春招+秋招两大块,希望对算法或者机器学习/深度学习感兴趣的朋友准备面试有点帮助。

本人(男,学历双985)从三月份从百度实习回来开始,一直准备机器学习算法面试,前前后后面了不少公司,以下面经一并送上。

<<<前端是我一辈子的信仰,写代码直到50岁>>>
关注微信公众号:web前端学习圈
回复关键词【CSDN】领取2020年最新web前端系统学习教程(视频+笔记+素材+源码+项目实战)全套整理约50G
另外公众号每天都会分享学习方法,知识干货,实战案例,面试技巧,经验分享等相关文章,关注web前端学习圈=关注5000+前端大牛

【春招阶段】——按时间顺序

1【阿里巴巴蚂蚁金服算法实习生】

19min简历面

百度的项目介绍CNN、LSTM、RNN

介绍下LR

结果:挂完电话没出20min显示reject

2【京东北京算法实习生,销量预测相关】

33min电面 

组里有十台GPU,每个上面四块卡 

多分类项目:数据怎么预处理的,模型的调优以及改进,其中有没有数据不平衡的问题。 

百度的DBSCAN项目,为什么不打标签,做监督学习,DBSCAN中的参数。 

最后问了ResNet后更新一点的网络,这个没回答上,我说了GAN增强对抗网络,但是好像不是之后出的。 

对CNN也有一些了解。 

问我对其他算法的理解程度,回答的不太好。应该说对里面的公式都推导过,每个算法怎么来的怎么工作的都明白。 

word2vector怎么做的,讲一下其中的原理。

结果:本以为答的还可以,结果也是一面挂,面试官短信说不具有不可替代性。

3【58同城算法实习生】

现场面试30min在南大宣讲会上

如何进行分词,算法原理,分词的几种方法,正向最大匹配法,逆向最大匹配法

word2vec 算法原理,输入是什么,输出是什么,这个要详细了解

LR公式推导 损失函数 如何多分类 什么情况下用LR

在一个有序数组中查找一个数,怎么最快 二分法 O(logn)

在一个无序数组中查找第k大的数字,怎么最快   堆排序O(n+k*logn) 建立堆要O(n),每次找出最大的要O(logn)

结果:很多基础问题没答对,甚至二分写错了,LR损失也没说上,当时还是too young too naïve,很明显没有通过面试。

4【招商银行信用卡中心数据与AI岗】

酒店面试20min左右 

在项目中遇到过哪些问题,怎么解决的? 

对文本进行向量化,数字化,然后开始模型训练。 

怎么提升的准确率,你做了哪些? 

从85%到90%多你花了多久?我说20天,平均每天半天的时间。

你认为你是努力大于聪明还是聪明大于努力?

你的缺点是什么? 

你有没有女朋友? 

你以为打算在那边发展? 

为什么选择金融? 

对互联网有没有考虑?互联网金融

结果:通过面试,拿到实习资格,但选择了直通终面,因为去了其他公司实习,后续有讲。

5【网易云音乐推荐算法实习生】

55min杭州网易现场面 如何去掉电视剧中的广告?

 详细介绍下word2vector 

介绍百度的项目,用到的聚类,为什么不用Kmeans,和DBSCAN有什么区别,Kmeans的复杂度是多少 

LR推导,推到梯度那里 

聊聊树,ID3为什么相比C4.5能会过拟合,信息熵,条件熵,信息增益,信息增益率

CNN的项目有没有,CNN作文本也可以,回去跑一个tf的mnist模型 

说一下CNN的过程 

Xgboost相比GBDT的好处 

一个求概率的题,5000个黑球5000个白球,每次摸两个,如果同色,放一个黑球进去,如果不同色,放一个白球进去,求最后剩一个黑球的概率。 

L1 L2正则化,怎么挑选特征的,L2对于那些特征作用小的系数就很小么? 

L1为何能选取稀疏矩阵? 

写个算法吧,快排,说了下递归,结果面试官说让我用非递归实现

结果:非递归快排没写出,一面挂。

6【携程算法实习生】

一面:酒店预约的五点,6:40才开始面,现场13min 

介绍下BSpline算法(介绍了下业务场景,阅读的KDD论文,先用MATLAB实现,然后用JAVA实现的等等) 

介绍下DBSCAN算法的业务场景,介绍下DBSCAN的原理 

你的新闻多分类怎么做的,one vs rest还是one vs one,sklearn里是怎么实现的 

GBDT也可以多分类,为什么你选用了LR 

新闻多分类最后只使用了准确率作为参考么,有没有层次分类,或者分层查看哪一层更准确,哪一层错误率高=

结果:面试官心不在焉,明显不想招人了,未通过一面。

7【腾讯应用研究机器学习——被调岗系统测试】

一面:55min 

百度的BSpline算法,怎么做的,原理,有没有投入到线上使用,最后效果怎么样 

手写快排 

看我的github 

跟我介绍一下你的LR 

在百度做的数据分析,分析的哪些数据 

介绍在百度的业务 

如何查找一个文件夹下所有文件的大小和,用什么数据结构,我说用树,然后遍历,遍历用后序比较节约时间,最后访问根节点 矩阵迷宫问题(我说了动态规划)  

二面:40min 

从浏览器输入一个网址,到返回的整个过程。是怎么寻找到服务器的 

QT4A的底层有看过么,是怎么实现的。我说看过,用的是源码,adb shell的命令行,查找的控件,UISpy,有没有对控件做一些封装 一万个数去排序,用什么方法比较好,随机顺序。当N很小时,快速排序慢,归并排序快,N很大时,无序,堆排序快,有序,快速排序快

结果:面试中表现出不希望被转岗,未通过。

8【微软苏州算法实习生】

一面 50min 

稍微问了下项目和多分类系统 

开始写代码,写一个buffer,带有读和写操作,写是从每次读的后一个位置开始 

写完后开始询问如何保证线程安全,写一下 

如何实现写读安全,两个读的时候不加锁(没有答上)  

二面 50min 

自我介绍 

询问java基础,构造函数私有的情况,单例模式 

protected和private的区别 

final和finally的区别 

图的最短路径问题 

写一个实际场景的算法,trigger和alarm的时间关系

三面 75min 

自我介绍 

多分类的项目,数据怎么获取的,如何进行训练 

开始写算法,四道 

topk 要求空间复杂度O(1),时间复杂度没要求,有重复数字,不能改变原有数组

 矩阵找数 剑指offer原题 

链表找公共节点 

链表找环

结果:一共手撕6道题目,通过面试,拿到了cong邮件实习资格,但最终没去实习。

9【今日头条算法实习生】

50min 

一个女面试官 

很和蔼 

写了20多分钟的程序

 一个新闻多分类系统,怎么做的,数据预处理怎么做到 

怎么获取的数据,去掉停用词,特征维数的选取 

xgboost和gbdt的区别,shinkage,列抽样,并行化,优化方法,XGBoost还支持线性分类器 

项目都很基础,所以没有什么可以问的 

xgboost用的不都是CART树 

DBSCAN的原理 

分词的处理有没有用过跳词?????? 

分词的语料库用的哪里的 

其他的分词工具了解不 jieba 

树模型不适合one hot编码 

auc是多少 

树模型要不要做归一化 

测试集怎么拿到的。。。 

写一个算法:找到二叉树每一层的最大值

结果:面试官说项目经验少,建议转开发,我拒绝了,当天面试结束。

10【拼多多算法实习生】

一面,40min左右 

自我介绍 

说一下新闻多分类这个项目怎么做的 

讲一下word2vec word2vec里面有CBOW和skip-gram两种方式,他们的区别(这个没答好) 

说一些特征选择的方法,PCA的原理讲一下 

了解SVD么,说一下SVD和PCA的区别(这个没答好) 

讲一下EM算法,E-step和M-step都是怎么做的(这个没答好) 

介绍一下LR 

了解梯度下降么,牛顿法和梯度下降的区别 

SGD和BGD的区别 

RNN和LSTM讲一下 

深度学习了解么,讲一下CNN的结构 

介绍下CNN的优化方法,adam和动量(这个没答好) 

GBDT和XGBoost的区别 

了解LightGBM么,说一下LightGBM和XGBoost的区别 

讲一下DBSCAN的原理 

如果Kmeans没有设置k,需要怎么计算 

背包问题:了解动态规划么,一个书包体积是V,有若干个m V的物体,最后让书包最重,把方法和递推公式说一下 讲一下快速排序的思想,最坏时间复杂度,什么情况造成的,如何避免(三数取中) 

(对方是拼多多广告团队,主要做点击率预估、广告分发等,算法团队还有图像、搜索等部门)

结果:一面通过,邮件邀请二面,因为当时已经确定实习地点,所以拒绝了二面。

11【华泰证券证投部大数据算法研究员】

14min 

问项目,问图像的项目,如何增加鲁棒性,然后问java的Integer和int的区别,初始值都是啥,然后问python如何得到一个文件夹下的目录 

sql中的游标知道么 

问我的数模做了什么题目,用的什么模型。 

你为什么选择金融行业?

你觉得自己在这个行业有哪些优势?

结果:通过,5-8月去了华泰证券实习。

以上是我的春招经历,最终拿到了招行信用卡、微软和华泰证券三个实习offer,我选择了华泰证券四个月的实习。以下是秋招的面试经历。

640?wx_fmt=gif

【秋招阶段】——按时间排序

12【华为fx项目深度学习工程师】

电面45min 

自我介绍 

问项目: 

数字图像水印,实现的原理,对图像压缩之后的效果 

逻辑回归的新闻多分类:数据处理方面,如何调优 

验证码识别:怎么实现的多任务 

深度学习方面: 

验证码识别中网络的结构,自己做了哪些修改,做过哪些优化(回答了添加全连接层,batch_size,epoch个数等)

 vc维 

两个矩阵同构和相似的定义 

BP环节什么最重要,回答了激活函数 

优化中如果遇到悬崖边怎么处理 

微积分中梯度的物理意义(速度下降最快的方向和下降的速度多快,一个量化值) 

在学校学习过哪些这方面的课程(数据挖掘,线性代数)应该再说一下cs231的 

两个正太分布的相加还是正太分布么,相乘还是正太分布么? 

平时看过哪些书,作者是谁? 

简历要对口,投的深度学习,就要主要写深度学习的项目,机器学习的岗位就主要写机器学习。 

查准率查全率好像说反了。。。

结果:面试官说我岗位不合适,建议优招换下岗位。

13【vivo杭州人工智能事业部推荐算法工程师】

一面 男面试官 27min 

自我介绍,问了是否是保研,是否双985 

介绍项目 

介绍几个机器学习模型中需要注意的地方 

还是介绍项目  

二面 hr  

20min 男hr 

自我介绍 

问学校项目和实验室做项目的区别 

问项目中最棘手的地方是哪里 

问自己在nlp方面的优势 

偏向哪个城市 

问我的有没有什么问题

结果:通过面试,很快拿到了录用书,然后电话讲薪资,直接给了SSP。

14【招商银行信用卡中心数据与AI终面】

20min 

春招直通 

自我介绍 

通过谁知道的招行卡中心,学长 

为什么想来这里 

对以后的打算等

结果:通过面试,拿到offer

15【阿里妈妈联盟技术算法工程师】

电话80min 

自我介绍 

Java容器的了解,map的存储方式,如何构建map,有序的map,treemap,如何扩容,n个数插入进hashmap,时间复杂度,每次扩容时要移动所有元素 

Python range xrange 哪个是使用迭代器循环,哪个是先生成list再循环 

数据结构,介绍下链表,了解递归么,然后电话描述如何递归翻转链表 

机器学习,介绍lr,数据成什么分布,loss函数,似然函数,求对数,怎么求最优,什么方法优化,使用时的注意事项,如何防止过拟合,l1 l2的原理,什么时候用l1 什么时候用l2 

深度学习,了解哪些,lstm dnn 深度学习有哪些过拟合方法,了解哪些激活函数,激活函数怎么选用,各有什么优缺点 

详细介绍下lstm 三个门 每个门的输入和输出 输入是什么 

介绍一个你所做的项目,介绍了华泰的特征选择模块 

你有什么要问的问题

结果:面试已过去一个多月,至今未二面,状态仍是待安排面试。

16【华泰证券证投部算法研究员】

hr面 7min 

自我介绍 

问我对金融的看法 

为什么选择金融行业 

未来3-5年内的职业规划 谈一谈自己的缺点

结果:通过

17【拼多多算法工程师】

一面:50min 

百度的项目 

华泰证券的项目 

算法题,求最小编辑距离  

二面:50min 

华泰证券项目 

Adam 和 SGD 的区别 

LR的推导 

交叉熵的物理含义,softmax的物理含义 

xgboost的工程上的改进 

求数字数组中最长的斐波那契数列长度  

三面:hr面 

对拼多多的看法 

自己在专业课这么多的情况下为何还参加了那么多的竞赛和课外活动 

社团活动锻炼了自己哪方面的能力,这些能力在现在对你有什么影响 

你期望的offer,我提了40w 

你为什么选择来拼多多(面向工资编程)

结果:通过,已拿到offer,但给的稍低

18【百度机器学习工程师】

一面 65min 男面试官 玄武假日酒店

1、自我介绍 

2、介绍新闻多分类的项目,数据获取,特征获得,特征处理 

3、百度地图实习项目,DBSCAN 

4、算法题一:两个语料库,一个千万级别,一个万级别,返回万级别中的词条有没有出现在千万级别的语料库中,考虑时间复杂度空间复杂度等,词典树(多叉树) 

5、算法题二:循环移动,一个数组,给定移动第几位,以及右移多少位,若移动到数组尾部则从头来 

6、介绍下华泰证券实习中的项目,详细介绍下项目如何优化的 

7、写一下LR的损失函数 

8、讲一下L1和L2的区别 

9、说一下BP 10、Java中的ArrayList是链表还是数组,为什么插入和删除可以O(1)  

二面,55min,很和蔼的一个面试官 

1、自我介绍 

2、涨停股的预测错误率,在华泰做的啥 

3、百度地图做的啥,留用了为啥不留 

4、数组查找题,升序数组,旋转一下,在旋转数组中查找有没有目标数字,二分法当时又写错了一点 

5、概率题,三个硬币,一个正正,一个反反,一个正反,随机取了一枚,抛出是正面,求背面也是正面的概率 

6、论文作者归类,如何查找作者 

三面 55min 

1、自我介绍 

2、算法题,给定一个字符串,给定一个很多子串的集合,求满足能完整无重叠的拼成字符串的所有集合 

3、上题修改为求用最小子集的拼成字符串的集合 

4、递归,动规,记忆搜索 

5、LR的损失函数,梯度下降的矩阵形式 

6、对加班的看法 

7、有哪些offer,身边同学的offer情况 

8、想来北京还是上海 

9、提问题,想不想来度秘做nlp,我拒绝了说想做广告或推荐 

10、逻辑回归损失函数中为什么要除m样本数

结果:本以为面的不错,结果没有拿到offer。

19【腾讯机器学习应用研究方向】

一面 qq语音 63min 

1、自我介绍 

2、java 问String、StringBuffer、StringBuilder的区别,问hashmap是不是线程安全,currentHashMap线程安全的原理 

3、华泰的项目(特征是什么,用了这么多模型最后选了啥,bagging,有哪些特征,开高低收量,9:15-9:20集合竞价大单撤单比例,对模型的可解释性如何操作,有没有做过特征组合) 

4、问我的博客啥时候写的 

5、百度的项目(路人轨迹拟合,DBSCAN算法,为什么选用这个算法) 

6、新闻多分类(多少个类,怎么做的特征,如何拼接在一起,面试官持怀疑,这样拼接词向量能到97%准确度??) 

7、算法题:一棵普通的二叉树(不是二叉搜索树),已知两个节点,求他们最近的公共父节点)用了递归 

8、智力题:一个猴子,离家25米,有50根香蕉,猴子手里最多能拿25根香蕉,每走一米吃一根,问最后回到家最多能剩多少根香蕉?  

二面 qq视频+qq语音 30min 

1、自我介绍 

2、这么多模型是在哪里学的,有没有上课学(研一数据挖掘课程+自己找项目做) 

3、RF、GBDT、XGBoost的区别 

4、遇到的最有挑战性的项目(百度BSpline) 

5、新闻多分类数据集怎么获得的,特征怎么做的 

6、了解最新的一些nlp常用的模型么 

7、算法题:一个有序整数数组,(a,a+1,a+2,a+3,….a+m,a+m,a+m+1,….) 大小为N,其中有一个重复的数字,编写函数实现返回重复数字。 

8、(这题在逗我???最后做错了,用了O(n)的查找复杂度,其实可以二分的,因为是连续数组)

 9、现在拿到的offer有哪些,是不是主要想在江浙沪发展。 

10、你有什么问题么

结果:二面估计是因为编程题想太简单了,未通过。一个多月后又被安全部门挖到简历邀请面试,不过因种种原因拒绝了面试。

华为FX科学家计划没通过以后就没有面试过,邀请过现场面没去拒绝掉了;网易考拉推荐算法秋招给了两次杭州面试的机会,最后也都没去

以上就是个人所有的面经,最后只剩华泰和拼多多两家offer,其他都已经拒掉了。希望我的面经对大家有所帮助~

猜你喜欢

转载自blog.csdn.net/l1063951462/article/details/106993286