一些面试的建议:
我最近换工作,基本上轮了一圈大的互联网公司,下面是我的面经,希望对nlp或者机器学习深度学习感兴趣的朋友准备面试有点帮助,有些问题我答得不准希望不吝赐教;
--- 某新闻app ---
round1:
1:cnn做卷积的运算时间复杂度;
2:Random forest和GBT描述;
3:(看到kaggle项目经历)为什么xgboost效果好?
4:leetcode;
round2:
1:工程背景;
2: python熟悉程度;
3:leetcode;
round3:
1:项目介绍
2:项目最难的是什么
3:项目做的最有成就感的是什么
4:生活做的最有成就感的是什么
5:一天刷多少次我们的app
不评论;
--- 打车公司 ---
1: LSTM结构推导,为什么比RNN好?
需要说明一下LSTM的结构,input forget gate, cell information hidden information这些,之前我答的是防止梯度消失爆炸,知友指正,不能防止爆炸,很有道理,感谢;
2:梯度消失爆炸为什么?
答案:略
3:为什么你用的autoencoder比LSTM好?
答案:我说主要还是随机化word embedding的问题,autoencoder的句子表示方法是词袋方法,虽然丢失顺序但是保留物理意义;(?)
4: overfitting怎么解决:
答案:dropout, regularization, batch normalizatin;
5:dropout为什么解决overfitting,L1和L2 regularization原理,为什么L1 regularization可以使参数优化到0, batch normalizatin为什么可以防止梯度消失爆炸;
答案:略
6: 模型欠拟合的解决方法:
答案:我就说到了curriculum learning里面的sample reweight和增加模型复杂度;还有一些特征工程;然后问了常用的特征工程的方法;
7:(简历里面写了VAE和GAN还有RL,牛逼吹大了)VAE和GAN的共同点是什么,解释一下GAN或者强化学习如何引用到你工作里面的;
答案:略
传统机器学习
1:SVM的dual problem推导;
2:random forest的算法描述+bias和variance的分解公式;
3:HMM和CRF的本质区别;
4:频率学派和贝叶斯派的本质区别;
5:常用的优化方法;
6: 矩阵行列式的物理意义(行列式就是矩阵对应的线性变换对空间的拉伸程度的度量,或者说物体经过变换前后的体积比)
7: 动态预测每个区域的用车需求量;
对于打车公司,我的感觉很好,hr态度和面试官态度都很好,包括最后跟老大打完电话约去公司聊一下确定一下;全程hr都是有问必答;
有一次为了去前面那个新闻app,而改了打车公司面试时间,hr态度都很好;
最后我已经决定了去深圳,不能去打车公司也有点遗憾了;
而且打车公司问的问题很专业,全程下来都是ML算法,不考脑残的leetcode;我根本没时间也不想再去刷leetcode就为了个面试;
--- 手机公司 ---
round1:
1:LSTM相关的问题;
2:python写k-means;
3:想不起来了
round2:
1:业务相关的问题
2:leetcode
3:具体业务问题,也就是如何量化句子之间的相似度;
round3:
1:记不起来了
手机公司最近在搞发布会,面试过了一个星期再通知我去复面,我果断拒绝;
全程深度学习的东西基本上不问,问了一两个看来他们基本不用,然后就是leetcode;
手机公司做智能家居蛮有前途的;面试官态度很好;
--- 搜索公司 ---
三轮
1:怎么样识别文本垃圾信息;
2:(数据结构)树合并;
3:工作涉及到的业务知识;
4: python如何把16位进制的数转换成2进制的数;
5:MySQL的键的一个问题;
6: linux下如何把两个文件按照列合并
7:map-reduce的原理(问的基础,因为我简历没有mapreduce);
8:NLP方面的想法;
9:职业规划,专家型还是领导型;
10:如果给offer是不是直接来此公司;
说实话,搜索公司最耿直,一下午面玩完全没有任何磨磨唧唧就给了口头offer;
如果留在北京,首选肯定是它了;
后面问我在面其他哪些公司,如果给了offer去哪家,我说就这家,那时候也没想到后面的两家深圳公司也过了,感觉蛮愧疚的,就冲这个态度也应该去此公司的;
真的不像网上流传的那些;而且此公司最后面的manager是我见过态度很好而且感觉可以依靠人;
---大厂---
1: 链表逆转
2:1亿的文本如何放在100台机器上两两做相似度计算
3:40亿数据如何用2G内存排序
4;遍历树
5:HMM原理