百度机器学习实习面试经历

一面:

上来应该先看的是项目。我项目里有一个关于无监督聚类的研究,他问了一下有监督和无监督的区别,我的回答他应该不满意。

接下来问的是编程语言,问主要问C和C++,比如C++的virtual关键字,C的friend关键字,inline关键字的作用和具体是怎么实现的,这一块C好久没有复习过了,答得非常不好。

Python用过什么内置的数据结构。

由于语言那块答得不好,所以接下来问的问题明显简单了好多,这也是导致面试没过的最直接原因吧,还是没能发挥出自己的优势来。

问了一下LR的损失函数,SVM的损失函数,稍微讲一下原理。

问了一下矩阵秩的几何意义,这个概念具体有什么用。

写一个链表的数据结构,链表和数组的区别,在内存中的存放。

算法题:走台阶问题,n个台阶,一次走一步或者两步,最后走n阶有多少种方法。让用两种方法实现,递归和非递归。

问了问数据库。这块我不熟悉,也是面试失败的一个主要原因,问了问范式有什么用,为什么用的时候不用级数很高的范式。

问了问kaggle上的做过的一个项目,简单介绍了一下。

Linux的知识,问用没用过linux,查找目前系统中运行的程序有哪些用什么命令。

说一下自己的优缺点。

写一下网络的7层协议,帧在哪一层,socket在哪一层。

问知不知道hadoop,以wordcount为例子来说一下hadoop的数据走的流程,在sort阶段发生在什么时候。

知道哪些聚类方法。

想在他们那实习得到什么。

接下来就是一些闲聊了。


二面:

上来还是自我介绍,在说说自己做过的项目,然后稍微聊了一下项目的东西。

接下来给一个题,去掉字符串中相邻字符中的重复字符,比如abbcdb,处理完是abcdb,我用的是On的时间O1的空间

然后又给了一个题,让完成一个类,这个类有两个接口,其中一个接口在每次用户访问百度的时候都会执行一次,第二个接口返回最近一个小时用户的访问次数,也就是那个接口运行了多少次,类中的数据结构自己设计。让完成这两个函数。这个我没做出来,有会的朋友可以留言告诉我一下具体怎么做,非常感谢。

然后又问了问做的那个kaggle的项目,然后问了问LR,问LR的损失函数,向量更新的时候有什么方法(牛顿,梯度下降),牛顿和梯度下降的原理,这两个收敛的速度怎么样,所谓的收敛快中的快是以什么为标准理解这个”快”。


之后说出去商量一下,然后。。。就没然后了,告诉我今天面试结束,直接把我送出去了。


总结:

一面面的知识范围太广泛了,自己有的地方属于知识的盲点,面试一开始就疯狂地“我对这块不怎么了解”,导致面试官降低对我的期望,比如面向对象,数据库,基本就宣告了我的GG。

二面面试官比较着急,问的没有那么广了,但是深度上来了,虽然能说一些,但是被步步逼问就GG了。

问题是没有发挥出自己的优势,我的算法题还是不错的,但是面试中的算法题实在是有点简单了,根本构不成自己的加分项,而扣分项太多了。

接下来要好好学一下Java了,面试对语言的重视程度还是挺高的,要对语言的一些细节有清楚地了解。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值