机器学习岗位相关的电话面试记录

匿名网友 匿名网友 发布于: 2016-01-03 00:00:00
阅读 172 收藏 0 点赞 0 评论 0

接触机器学习这个领域已经快一年了,上过Ng的机器学习课程,看过《统计机器学习》,《机器学习》,参加了两次阿里天池的大数据比赛,成绩都不好,打算再捋一遍基础的书本知识,总觉得实践部分做的不是很足,所以一直打算找算法方面的实习,一方面锻炼自己的动手实践能力,加深对理论知识的理解,毕竟以后打算做机器学习算法方面的工作,另一方面为明年找工作做一下准备。然后投了四个公司的算法工程师的实习岗,有两个有回复,都是比较心仪的公司,有一个第二天就回复了,安排第三天就电话面试。这也是人生的第一次电话面试,基本没什么准备,感觉发挥的比较一般,问的问题都是比较基础的东西,都是基于自己做过的项目问的,自己很多地方还是理解的模糊,回答的支支吾吾。

  • 首先问了最近做的项目。介绍了最近用GPU做人脸特征点识别的项目,因为面试之前hr联系我的时候透漏我说这个组是做深度学习的图像方面的东西,所以先把这个项目说了一下。问到了具体的实现过程,因为是自己最近做的项目,所以都还是很了解的,介绍了平台的搭建,神经网络的结构和卷积神经网络,问了几个具体的小知识点,最后输出的回归层,激励函数等等,回答的比较顺利。
  • 然后又问了其他的项目,就说起了去年做的阿里的天池大数据比赛。因为时间比较久了,自己也没有准备回答的不好,很多问题都支支吾吾。比如用的随机森林和LR模型的区别,优缺点,学习过程,都没有回答上来,最后问了一个简单的决策树的模型,大致介绍了一下分类空间的切割,面试官看到我对这个问题回答的不好,也没又再继续追问了。感觉整个面试在这里就开始减分了,怪自己没有提前把这个项目再回头仔细整理一下。
  • 然后问其他项目。介绍了一下现在实验室是射频方面的,做的东西和算法方面的联系不大,面试官好像没听过射频方面的东西,我大致说了自己做桌面软件和驱动开发的,然后和算法方面联系不大,他就没有具体问了。
  • 问熟悉的编程语言和是否熟悉linux。
  • 最后问了一个算法问题。在数组a中寻找两个数的和为b的问题。其实这是一个比较简单的问题,自己也有印象以前刷算法题目的时候做过,但是当时还是挺紧张的,没有记起来最优的解决方法了。想了大概又三分钟左右,给出了暴力破解和排序以后列出其中一个值查找另一个值,变成一个二分法的查找问题,然后问了我复杂度,nlog(n)。问有没有线性复杂度的算法,在指引下,想出了hash方法。然后又问我如果是寻找4个数的和?当时感觉到应该是会用到刚才得到的解决方法,但是没想到分割的方法。然后回答了dfs的方法,我叙述的过程中,他说是4层循环的话复杂度是n^4,然后说把4个数分割成2个数之和,在按刚才的方法求解,算法是n^2,我当时就没明白怎么是n^2的,然后就嗯嗯的过了。回来再看这个问题也没明白怎么是n^2,如果和是b那么当b很大的时候b分成的两个数的组合就太多了,与n没有关系啊。这个复杂度怎么算?
  • 然后问我有什么问题。问了如果我入职需要做的工作和具体的项目要求,回答是gpu下的图像算法类的,用到caffe。
  • 挂了电话才发现自己紧张的不行,手一直在抖,真是没出息,一直告诉自己找工作是一个双向的过程,面试就是跟对方聊聊做过的东西和对产品的理解,没想到面试的时候还是慌张了,不过多面试几次应该能克服这个问题。面试官应该是一个年纪不大的男生,沟通起来还是没问题的,没有多严厉,问的东西都是比较基础简答的。几个地方需要注意下,一是回答问题的逻辑性和层次性要分明还有一个是加强基础知识点的练习,这些都是硬性的指标,说不定在哪里就会问你。需要总结的知识点有几种强分类器要特别总结一下,随机森林,adaboost等,分类器的用途,特性比较然后就是动手能力了,多刷算法题目和多做相关项目。目前已经对基础知识都有了整体的了解,下一步是实践和把这些知识点细化整理的过程。结果就顺其自然吧。

评论列表
文章目录