百度面经

今天无聊,写写我面百度相关性团队的经历吧.

总体来说,百度的面试我表现得不好,也暴露了我的一些弱点.

第一次面试是上上周了,当时不是很想面试,而且和面试官沟通也不是很顺畅,导致面试的效果很差.

面试的问题不大记得了,除了问我项目相关的问题之外还记得两个.

一个是作为拍拍搜索的负责人,你认为拍拍搜索今年需要达到的目标是什么,需要怎么去分解任务以达到该目标?这个问题我不是很会,只好说了一下我的理解,但是面试官说任务分解的细节没有说清楚.

另外一个是说认为web搜索的相关性怎么做,我的答案是分成两个部分,一部分是页面的重要性,主要可以通过链接分析的方法来获得,另外一部分是结果和query的相关性,除了传统的方法之外还可以通过learn to rank或者社会化推荐等方法来分析相关性.但是据面试后的反馈来看面试官对这个答案也不满意,不过似乎是由于我没有列出传统的td/idf或者概率模型的方法让他觉得我对相关性这一块不了解?

第二次面试是昨天,这次面试时的状态和表现一般,也是我的弱点集中暴露的地方.

首先还是问项目经历

先是问拍拍这边的相关性是怎么做的,我大致说了一下有不同重要性的域,与query的匹配程度,商品的重要性程度等几个因子,然后是一个线性组合,最后使用实时的点击反馈的方法来优化排序.这里面试官似乎不满意的两个点是线性的系数和反馈的方法.其实我也知道在改善算法之后应该最好能有个测试集来获取它的好坏并调节,但是由于这边一直没有人手才做好的测试集所以只好在线上灰度放量来反馈.然后是问作为相关性的负责人对相关性之后的改进和看法,我说主要是加入更多的因素,当然有更多的因素之后系数估计不能再用上山法来优化,而要使用NN,最终的目标还是提高成交,不过我觉得王道还是做推荐,像亚马逊那样.对目标的回答面试官似乎还是不满意.

然后是大致问推荐的这一块,这个的回答还算可以.

之后问到了分布式和实时索引部分,这时面试官问搜索时对多个Item的倒排的合并是怎么做的.我说求交集是用的多路归并,并集是用的一个类似于填充bitset的做法,之后的反馈是说面试官认为这种求交的方法会有潜在的问题,不过我现在也不知道指的是什么.

最后的问题是叫我说几个同义词识别的算法,我大致说了比较经典的几种,一个是基于词典解释的,比如wikipedia,一个是基于web页面的文本在分词之后通过贝叶斯来计算两者之间的相关度的,一个是通过词语的分类来计算词语的特征并通过计算向量距离来判断词语的相似性,最后一个是通过判别用户查询的session中的共现概率.不过似乎面试官不大满意,一直问我有什么可以基于搜索引擎的同义词识别算法,我就是说可以通过词语的搜索结果的相似率来判断,不过被面试官否了,然后想起似乎有一种基于词典的PageRank的方法可以用来识别同义词的,不过不记得细节了,结果被面试官以为我是瞎忽悠....然后面试官问了一下这几种方法的精确率和召回率,我只能大致说了一下自己的想法和猜测.

之后就是今天收到电话说通知我去三面,但是由于二面的原因我觉得如果还问我这方面的问题的话面试结果也不会太好,而且去北京的时间本来就短,还是好好玩为上,于是百度家的面试就到此为止了.

总而言之觉得自己的问题有以下几点:

1.技术管理的能力确实不行.两次面试都问到了项目规划和项目分解的问题,答得都不好.

2.对新的论文看得比较少,对老的算法大多认为知道就可以了,要用的时候再重新看看论文或者翻翻书就可以,结果面试的时候比较吃亏.

3.面试的准备不足,第一次完全是裸面,第二次也没怎么准备.如果之前好好看看相关性方面的书和论文的话应该会好不少.

原文地址:https://www.cnblogs.com/triStoneL/p/1986556.html