百度推荐策略部二面凉经

前言

楼主是社招,面试的算法工程师岗位。上个月面过一次百度的推荐策略部,但是当时那个面试官很不友好,鸽了我三次,而且每次都是迟到之后才跟我说改时间。最短迟到了四十分钟,最长一次迟到了一个半小时。最后问的问题也鼻子不是鼻子眼不是眼,体验很差,因此没写面经。

这次还是面试这个部门,这次的面试官非常nice,考察也很全面,体验也很好,只是自己还是太菜,二面几个题没答上来,估计凉了。写一下面经帮助牛油。

一面比较简单,而且面试官很nice,因此表现不错。很多问题我忘了,就记了一些有印象的。

1)kmeans是有监督还是无监督
2)xgb模型的原理
3)FM相比于LR的优势(自交叉、稀疏特征不太影响训练、可以得到embedding,进行高维交叉,推理未出现过的特征组合)
4)介绍一下DIN 和 DIEN
5)概率题:男性得色盲的概率是 5%,女性得色盲的概率是0.25%,求一个人是色盲的前提下是男性的概率。(贝叶斯公式推导一下就可以,当时不知道P(男)怎么算,后来面试官说可以认为是1/2)
6)算法题本来要做堆排序,后来面试官说时间不太够(幸亏没做,我不会手写堆排序,面完赶紧学了一下。。。),所以算法题出的是给一个m * n的矩阵,求左上角到右下角共有几条路径?只可以往右和往下走。(leetcode 原题,动态规划,转移方程 dp[i][j] = dp[i-1][j] + dp[i][j-1])

二面

二面被血虐。。。问题很多,很深,很全面。但是面试体验还是不错的,只是我太菜了。。。

1)xgb分裂节点的依据
2)xgb如何处理离散值、连续值
3)如果相邻的连续值比较接近,比如只有小数点后三位的差距,xgb会遇到什么问题吗?(我觉得可能是划分点会处于一种“边界”上?稍微改变特征就会划分到不同的节点?不过xgb是依据分位点划分的,所以说了可能影响不大。这个问题有大神能回答吗)
4)word2vector 如何做负采样?是在全局采样?还是在batch采样?如何实现多batch采样?怎么确保采样不会采到正样本?word2vector负采样时为什么要对频率做3/4次方?
(对负采样没那么熟,别问了QAQ)
5)为了提升xgb模型效果,做了哪些优化?
6)介绍一下 sigmoid 和 relu,relu有什么缺点?
7)介绍一下梯度消失,有哪些缓解办法?
8)深层神经网络为什么不好训?除了梯度消失还有哪些原因?(当时脑子抽了说不出来,今天想起来应该说一下resnet那篇论文里提到的网络退化。。。 T-T)
9)了解图模型吗?了解Graph Embedding吗?
10)知道哪些损失函数?为什么分类问题不能用均方差?(这也是经典的题目,求导后发现预测值越接近label时返回的梯度越小,越难训练)
11)算法题1:开根号(经典题目,牛顿法和二分法。牛顿法注意了解一下那个迭代公式怎么来的;二分法注意如果给小于1的数的话左右边界设置成什么)
12)算法题2:给定一个数组,写一个函数来随机打乱这个数组。
这道题好好说一下,问了很多相关问题,盯着我二十分钟,看着我苦思冥想QAQ。
1、打乱数组的方法我就说一个直观的,生成随机数决定每一个元素去的位置。后来看网上发现这个跟Fisher Yates Shuffle 有点像。
2、怎么证明你这个方法是随机打乱的?磕磕绊绊地写了个数学证明。对于一个元素来说,到每个位置的概率是相等的,因此是随机的。
3、有一个黑盒函数,它的作用是打乱数组,你怎么证明这个函数的随机性?这个问题想了半天,面试官给了很多提示,但是最后还是没想出来。面试后也没在网上找到答案。今天早上突然灵光一闪,或许可以多次运行这个函数,记录每次每个元素被分配的索引的频数,最后计算下频率,看是否是均等概率。早点想出来就好了QAQ

13)抖音这类app怎么做推荐系统?分类问题还是回归问题?当作回归问题的话会不会有什么问题?(提了一下youtube模型,它是对观看时长进行建模)
14)知道哪些推荐算法?(提了很多,后来点了一下百度比较出名的双塔模型)
15)双塔模型有什么问题?(我说不能实时反应客户的行为?)
16)如何改进双塔模型?
17)知道哪些筛选特征的方法?

总结

这次面试虽然也凉了但是学到了不少,平时学习模型的时候还是应该再深入一些,了解模型的细节,以及做法的原因。还有一些主流推荐模型的优缺点和适用场景、改进方法等等。
希望能早日上岸 QAQ

更新三面

没想到一转眼已经收到百度offer了,来更新一下后续三面。
三面是压力面,面试官大哥差点没把我压死。我被怼的体无完肤,一度觉得自己的工作项目就是toy。。。
其实三面也没什么好说的,全程是针对项目提问,看着简历一行一行地问。不过有一个可以抽象出来一个通用问题,我觉得大家一定要准备一下。
就是在面试前一定要想好你项目中每个做法的原因。
举个具体的例子:你在项目中发现了哪些问题/现象,因此你调整了模型的哪个参数?最后取得了什么效果?
因为机器学习和深度学习项目大家很容易盲目的去做,经常是随便试好几个模型,哪个好就用哪个。
但是面试官肯定更希望你能了解模型的细节和原理,有针对性地有充分理由地使用模型、调整参数。
我觉得大家在面试之前可以多准备这方面,就算面试官没有问也可以主动地说出来项目中一些做法的原因。这样可以让面试官觉得你是有独立思考的,而不是随便调包。
不过最好是有深度一点,像 “我发现了过拟合,用了dropout,最后缓解了过拟合“ 这种比较普通的说出来可能也没什么帮助。


再总结

没想到能上岸百度,跟做梦一样,努力终有收获。希望各位牛油也能早日上岸,加油!
#百度##面经##社招##算法工程师#
全部评论
这太难了吧。。沃日的
4 回复 分享
发布于 2020-07-31 14:05
问题3我理解也是影响不大,把数据放大一定倍数,就是正常数据了吧 而数据缩放对树模型没有影响
1 回复 分享
发布于 2020-07-31 16:32
我怎么感觉不难啊🤣,想到了校招手撕决策树的日子。。。 楼楼加油~ 。第三问如果整体较均匀,相邻差异小,基本上问题不大,树不用特征归一化。如果说整体差异很大,好多个局部,每个局部差异小,百分位正好选局部中间这种小概率事件的话,这个特征上临近数据分类抖动大。总体上问题不大,个人观点,同蹲一个答案
1 回复 分享
发布于 2020-08-02 23:11
楼主你好,请问你是实习、校招还是社招?岗位是什么?开发的话,是Java方向还是C++方向?或者其他语言方向~
点赞 回复 分享
发布于 2020-07-31 13:45
人傻了我
点赞 回复 分享
发布于 2020-07-31 14:00
裂开
点赞 回复 分享
发布于 2020-07-31 15:42
这么多问题。。。。
点赞 回复 分享
发布于 2020-07-31 22:42
7月30号算法一面,也被问word2vec的负采样和层次softmax,被问懵了都,估计凉了。唉,还是自己太菜,论文看得不够深😭
点赞 回复 分享
发布于 2020-08-01 13:15
这个也太难了
点赞 回复 分享
发布于 2020-08-01 22:13
社招是不是挺难的,也可能是我对推荐算法不了解吧
点赞 回复 分享
发布于 2020-08-07 18:59
校招二面跟您这个差不多,问了超多问题,感觉跟一面差距太大了
点赞 回复 分享
发布于 2020-08-10 18:12
太难了
点赞 回复 分享
发布于 2020-08-10 18:28
楼主工作几年了
点赞 回复 分享
发布于 2020-08-12 18:43
楼主,厉害啦!是二面之后被捞起来吗?
点赞 回复 分享
发布于 2020-08-26 23:34
楼主,厉害啦,我想问下三面后还有HR面吗?三面完多长时间收到offer?
点赞 回复 分享
发布于 2020-08-29 15:52
楼主入职了吗?
点赞 回复 分享
发布于 2020-08-29 15:54
大佬,我是应届生,面试过了,但是网上总是说,推荐策略部不是研究算法模型,进去就是写if else.
点赞 回复 分享
发布于 2020-09-04 12:49
楼主您好,想知道您这个岗位是要求硕士嘛?
点赞 回复 分享
发布于 2020-09-15 10:26
楼主您好,我接到了同部门校招的offer,请问您入职之后感觉怎么样啊?
点赞 回复 分享
发布于 2020-11-02 22:28
楼主可以给个联系方式吗?,有事咨询,先谢过了。
点赞 回复 分享
发布于 2020-11-15 11:09

相关推荐

过往烟沉:我说什么来着,java就业面就是广!
点赞 评论 收藏
分享
16 136 评论
分享
牛客网
牛客企业服务