简记华为FX三面(算法工程师-机器学习岗)

此篇文章记录于2018年笔者当时校招之路

时过一年,又是一轮毕业季,故放出此私密文章,为广大应届生分享笔者当时校招之路,虽因种种原因,与华为失之交臂。

笔者当时应聘的是算法工程师-机器学习岗位,所以基本和机器学习相关。码字不易,错别字海涵,提醒必改!

第一面、电话面,点到为止,确认是否有准备,如果准备不充分,建议放弃此次机会,问的很基础,大约16分钟。比如softmax函数,dropout函数作用,梯度截断等,网上都能查到相应的解释,由于笔者一直做的是cnn,所以不是很清楚梯度截断,直接回答不清楚,结束后,让我参加一个笔试,这次面试总结下来就是点到为止,确认专业方向相同,可以继续闯关。

笔试三道题,FX好像分两批笔试,第一批笔试题笔者没有参加,不过听说特别难,所以第一批没有过的同学好像还有参加第二次笔试的机会,可能由于第一批笔试比较难的原因,第二批笔试大大大大降低了难度,笔者参加的是第二是笔试,也做了相应的记录,2小时的时间,不到一小时解决,题目是很基础的,笔试分享如下

 

 简记华为FX笔试题(一)之字符串加密

 简记华为FX笔试题(二)之字符串输入

简记华为FX笔试题(三)阶乘

笔试结束后,受邀请现场面

现场面共有三轮,第一轮、第二轮都是技术面,第三轮是HR面。总结前两轮,第一轮问的很细,覆盖很广,应该是重点考察理论知识能力;第二轮主要是问项目实现流程,算是考察解决问题的能力

现场面、第一轮:在现场一大波985院校身边,笔者作为非985.211研究生,还是有点压力的,在渡过等待期后,终于报到笔者的姓名,开始了第一面。还是先谈简历项目,初步了解后开始进入你问我答阶段。项目相关的我就不先介绍了,主要谈谈面试官问的问题(注:以下只是笔者当时答题的思路,不代表正确的答案):

先问项目,必然的,从项目才能了解你会什么?总体面试管对我项目的评价是,你用深度学习和其他人不一样啊,(哈哈,深度我只是当工具使用)

1、面试官:能简单说说机器学习的相关内容么?

笔者:BP等传统的机器学习算法、聚类、决策树、KNN、CRF(条件随机场)、SVM等。

2、面试官:能谈谈随机森林么?(笔者项目使用过随机森林)

笔者:随机森林是通过构建多个决策树,通过树的投票决定类别。(此时面试官好像不太满意,毕竟说的太浅了)笔者继续作答,决策树的生成大体是根据信息增益或者信息增益比的确定树的节点,而随机森林通过随机训练数据,以及随机特征构建决策树,最后通过投票表决的方式选出最优。

3、面试管:随机森林除了做分类回归外,还能干啥?(笔者当时也有点懵,一般随机森林就做这些啊,好在笔者想到周志华老师近期的一篇论文,深度随机森林)

笔者:我看过周志华老师最近的一篇文章,用了多个随机森林。。(话没说完)

面试官:不是深度随机森林,我指的是其他作用。

笔者:其他作用的话,我用随机森林来看过特征的权重,来确定特征的重要性,类似于特征选择

4、面试官:研究生和本科时候专业好像和计算机不相关啊(笔者专业控制工程,本科电气工程与自动化)像数据结构之类的学么?

笔者:也是计算机相关的,学的。

面试官:能简单谈一下有哪些数据结构么?

笔者(有点不确定面试官的意思):队列(得到面试官示意后继续回答)、栈、链表、二叉树等

面试官:说一下常用排序算法吧。

笔者:冒泡(第一个想到的就是冒泡)、选择、插入、归并、希尔、堆排序等。

面试官:能说一下哪个最快么?

笔者:其实要看具体情况的,我一般喜欢使用快排的方法。

面试官:如果有上亿级别的数据,你该怎么排序呢?

笔者:(这个问题笔者在面阿里的时候被问过,可惜当时没有准备,还好事后,弥补了点数据结构的知识)

笔者: 堆排序(我也不知道为啥,第一时间想到堆排,面试管说怎么堆呢?)我把数据分成N份,对每一份排序就行

(其实还想到其他排序,如建议一个哈希表等)

5、面试管:我看你项目是使用caffe和tensorflow,能说说两者的区别么?

笔者:分类的话我喜欢用caffe,因为快。分割的话我喜欢用tensorflow,因为简单点(这部分我也不知道怎么回答,也不知道面试管满不满意)

6、能说说tensorflow的运转机制么?

笔者(不知该如何组织语言):tf是按照图的形式流动的,每次计算都要先创一个图,如果做成tfrecord数据的话,还有一个数据流读取。(这部分是凭感觉回答的)

面试官:说说你参加的比赛几个网络的的区别吧

笔者:参加的是一个分类的比赛,有今日头条搜狗举办的,用了三个网络,alexnet、vgg、resnet,最后用级联的方法取出最优

7、面试官:逻辑回归对特征有什么要求?

笔者(看过,但是一下子想不起来,只好把逻辑回归的公式写了一遍):我一般用来做二分类,多分类的话我喜欢用softmax

面试官:逻辑回归要求特征之间是相互独立的,才会有比较好的效果.

8、面试管:能说说通信协议么?

笔者:不是很懂(有点慌了,这部分没接触过)

面试管:没关系,多进程多线程了解么?

笔者:不怎么清楚(其实了解点,但是不怎么清楚,没有敢回答)

面试管:没关系,我这边没问题了,等下一轮吧。(过了的意思)

现场面、第二轮 

一段时间等待后,开始第二轮面试,第二轮面试管应该是一个主管级别的,和第一轮面试管一样,也是很有亲和力的,先平复你紧张的情绪,再问项目

面试官:先谈谈自己吧

笔者:初步简单介绍了一下自己的项目(由于第一轮说的太多了,这时候表达有点不清,自己都感觉到了)

面试官:重点讲一下自己最好的项目吧

笔者:就是简历上的第一个项目(包括项目介绍,项目目的,项目实施方法,以及后续模型更新等),一直把面试官讲懂了

面试官:那数据呢?标注很复杂吧。

笔者:标注是一个大麻烦,但是我通过聚类先预标注了,所以相对轻松。

面试官:有什么兴趣爱好么

笔者:平时喜欢写写博客,(可能口有点干,面试官没听懂)就是爱分享,喜欢分享一些技术帖子

面试官:用什么平台呢

笔者:csdn

面试官:点击量有多少了,写了多少了啊

笔者:20多万,原创帖子100篇左右,转载不算

面试官:有体育爱好么?比如打球,跑步

笔者:篮球吧,一般一周能玩两到三次,都是晚上出去投投,白天没有时间。

面试官:有什么问题要问他的么?

笔者:能提前接触数据么?产品有落地么?

面试官:数据是保密的,你可以过来实习的。还在研发中,但最终肯定是要落地的,整个设备部,就我们做人工智能的。还有问题么?

笔者:没了。

面试官:好了,出去吧。(有点慌啊,我还要等下轮呢?别挂我啊)

笔者:还有下轮么?

面试官:好像还有一轮,你问问外面,如果有就有(这下我才放心了,过了)

现场面、第三轮 

第三轮是HR面,主要问职业规划,对华为公司的看法,以及期望薪水等,期间还问了专利是不是第一作者,参加的比赛是什么性质的,以及是不是保研本校还是考研的,估计和薪水挂钩吧。结束后还提供了午餐券,很丰盛(哈哈)

华为面试官很和蔼,很亲近,问的问题也很专业,给笔者的印象很好。

总体这次面试经验,是找工作的第一个现场面,提前准备特别重要,数据结构等基础知识特别重要、项目必须非常熟练、不熟练的不要写(并不是越多越好),然后就是刷题,笔试都不过,哪来的面试机会呢?

最后,祝大家顺利取得心怡的offer!

你可能感兴趣的:(笔试面试相关)