机器学习:2018校招面经真题

先说下楼主的情况吧。楼主统计专业本科生,无实习经历,项目也很水,两个数据分析比赛,没有名次。我估计牛客没有几个比我背景更差的了,但是最后还是拿到offer了,所以还没有offer的同学千万别放弃,听说大公司12月份还有补招。

楼主一共面了两家公司,网易和一家搞机器翻译的创业公司。

网易:

网易的是通过笔试得到的 面试机会,当时收到通知挺开心的,毕竟是第一次通过笔试。

但是网易的面试挺水的,两面技术面都是介绍项目然后手写一题代码,没问机器学习算法。感觉是因为面试官看到我是本科的就对我不感兴趣了。

网易一面:

  1.自我介绍,然后介绍项目。

  2.手撕代码。一个一维数组,只包含整数,可能有重复元素。找出所有和为S的数对(a,b)。

  (遍历数组,用字典存每个元素的个数,然后对于字典里的任一键值k,只需看k和S-k的个数的最小值,复杂度O(n))

网易二面:

  1.自我介绍,介绍项目。。。

  2.手撕代码。依然是和之前一样的一维数组,但是需要找出所有和为S的三个数(a,b,c)。

  (思路还是和前面一样,字典存元素个数,对一个k,找出和为S-k的数对的个数,这样就退化到了二个数和为S的问题。复杂度O(n^2))

然后答完题二面面试官就很诚恳的跟我说我的代码能力挺不错的,机器学习的知识也了解的挺多,但是学历和简历都缺乏竞争力,即使面试过了,讨论环节也过不了。本科生想进网易,除非水平逆天。当时听到这话挺受打击的。。。

三面HR面:

主要就问一些能反映个人特点的问题和简历上写的项目。

网易大概是挂了 ,但是因为之前已经拿到创业公司的offer,所以也没有太失落。


创业公司:

创业公司不大,去年刚成立。拉钩上投的简历。本来我是去面试实习生的,但是一面表现不错,后面直接面正式岗了。最后offer的薪资挺高的,而且CTO答应入职后让团队leader做我的导师,感觉自己运气还是很不错的。

一面:

  1.介绍项目。

  2.讲下项目里用到的 决策树。(讲了下决策树的结构,常见的决策树模型)

  3.讲下CART的分裂结点选择依据。(回归用最小平方和误差,分类用基尼指数)

  4.决策树怎么避免过拟合。(预剪枝和后剪枝,然后 讲了下两种剪枝的过程)

  5..介绍下项目里用到的 LSTM模型。(画了下LSTM cell的结构,然后讲了下每层的 激活函数)

  6.提出LSTM是为了解决什么问题?(梯度消失和梯度爆炸)

  7.为什么LSTM可以解决梯度问题?(这个问题以前没有想过,现场胡编了一个,说gate分担了 一部分梯度的衰减或者爆炸。后来网上查了下发现,如果很久以前的信息很重要,forget gate的值会接近于1,而hidden state的激活函数是identity function,这样梯度就不会随时间改变)

  8..手写代码。

有序数组旋转,求最小元素位置。(二分,mid和末尾元素对比)

青蛙跳n级台阶。给定一个数组,里面包含一步可以跳的台阶数,求跳到n级台阶的最少步数。要求只能刚好跳到n级,跳过了不算。(用动态规划解,开辟一个长度为n+1的一维数组dp,dp[i]代表跳到i级台阶需要的 最少步数。dp[0]初始化为0,其余初始化为-1)

还是跳台阶,但是需要输出路径。给出思路。(一开始回答用广度优先遍历,超过n级则剪枝。面试官要求结合之前的 dp解法,想了下,用二维数组,paths[i]表示跳到i级台阶的最少步数对应路径,在动态规划的过程中知道从哪一级台阶j跳到当前台阶i步数最短,就在paths里添加paths[j]+[i])

二面CTO面:

先随便聊了下。然后手写代码。

  1.类似“aabbccccdeffg”的字符串转化成“2a2b4cde2fg”的形式。(这个很简单,不说了)

  2.一张海洋的高空拍摄图,图中有小岛,设计一个算法计算图中独立的小岛个数。上下左右为相接。(用只包含01的二维数组储存图像,蓝色为0,非蓝色为1。遍历数组,用字典存每个坐标的编号,岛屿编号从1开始,海洋点编号0。最大的岛屿标号就是小岛个数。复杂度O(n))

三面CEO面:

也是先聊了下,然后问几道数学和统计方面的题目。

  1.最小平方误差求最小值。(求导,令导数等于0)

  2.求sum(|Xi-w|)最小值。(w等于所有Xi的中位数的时候。方法是画数轴)

  3.求sum(|wi*Xi-u|)最小值。(加入松弛变量,然后用KKT。类似SVM 软间隔问题求解)

  4.已知一个均值分布,怎么得到正态分布。(Box-Muller transformation)

  5.Box-Muller的本质是什么。(转化公式不记得了,这题没答上来)


面经就这些。补充一下,网易的 面试官跟我透露过,社招会比校招容易进很多,尤其是在12月份。因为大家都在等年终奖。还有网易似乎Xgboost和GBDT用的比较多。想进网易的同学,做几个Xgboost和GBDT相关的项目,学一下hadoop或者Spark,至少自己搭个环境,这样进网易比较容易。

这些都是面试官的原话。最后祝每个还没offer的同学最后都能拿到offer!


作者:Prophet3

本文来源于牛客网

——————————

牛客网(www.nowcoder.com)

- 互联网名企笔试真题

- 校招求职笔经&面经

- 程序员求职实习信息

- 程序员学习交流社区

你可能感兴趣的:(机器学习:2018校招面经真题)