海康、YY、抖音、CVTE、招银科技、比特大陆(计算机视觉算法或深度学习算法岗)面经


本人211小硕,本科非211(说实话这个挺吃亏),研究方向:计算机视觉、模式识别
一、第一个面试是海康,电话面:
首先说项目,然后挑项目里的算法模型进行提问,比如你用的什么模型提取人脸关键点、用什么模型进行人脸检测等,要求把每个模型的原理能表述清楚,最后问了两个python的问题:怎么遍历文件夹和python的数字精度是多少(汗-_-||,第二个完全没注意过啊)。这次面试基本没有问机器学习的内容,可能会留在二面问吧,毕竟第一次面试太紧张了,说话都哆嗦,一面就挂了。所以面试一定要调整好心态,把面试官当做是学术交流的对象,不断地给他输出你会的知识点,不要把他当成上级,显得畏手畏脚就不好了。

二、YY,笔试过了,武汉现场面:
先说项目,与海康不同的是,面试官挑出项目中的一个模型,然后不断深入进行提问。比如项目中用了CNN,那么请介绍CNN的特点,为什么CNN有效,哪些方法可以防止过拟合,Dropout的原理是什么,梯度消失和梯度爆炸原因、面对类别不均衡的数据集怎么办(后悔那晚没听计算机视觉第二期的直播课啊,seven老师讲了两种方法,我当时只说了一种,但是面试官可能还是需要另一种的答案),面对数据集小且不均衡的数据集怎么办等等。。基本是深度学习的问题,大体我都答上来了,本以为过一面没问题,但是莫名地把我给挂了。我觉得这可能是一面刷了一波学历吧。。

三、抖音,过笔试,视频面:
项目说完,中间稍微提了些项目的问题,接着开始问机器学习的内容:SVM的原理、SVM的软间隔和硬间隔的区别、惩罚系数对SVM的影响等,决策树相关的知识(具体的问题有些忘了,反正也是介绍原理之类的)。最后问我会什么数据结构和算法吗,我说还行吧,结果丢了我一道编程题:给定一个正整数数组,求一个连续子数组满足子数组的最小值跟子数组和的乘积最大,返回这个积和子数组区间。一脸懵逼,中途面试官提供了一个思路,但我觉得时间复杂度仍很高,最后放弃了。。后面想想,也许就按他思路写一遍,能出来个结果就行,不一定非得最优,最重要的是考察你的写代码能力。

四、CVTE(医学图像处理岗),电话面:
由于CVTE的视觉岗满人了,我就投了这个岗位。。首先问我了解过医学图像吗?知道医学图像分割吗?我说不会,但是接触过普通图像的分割,也不是很了解,只是扯了下用FCN的图像分割。接下来就是机器学习问题轰炸:SVM原理、核函数怎么用的、正则化方法、决策树算法有哪些、xgboost和GBDT的区别、boost和bagged分别是降低偏差还是方差,为什么?等,考察的大多数是决策树集成学习方面的问题。最终以岗位不合适把我挂了。

五、招银科技,笔试加电话面加现场面:
电话面基本是机器学习的问题:了解哪些机器学习模型、SVM的支持向量是什么、什么是过拟合、过拟合了怎么办、梯度消失怎么办、boost和bagged方法区别,还问了求大数据的top-k问题。现场面3轮:一面是应该是技术人员,他问我用什么语言,我说python,他还感觉有点诧异,也许银行大部分招java岗吧,然后给了我一张纸,要写各种排序算法的时空复杂度和是否原址排序,又写了一个爬楼梯的代码、手推了下梯度下降算法;二面应该是技术总监了,详细聊了下项目,期间我问了招银有没有做视觉的,他说很少,我心里就想凉了一半,对金融推荐系统这一块我不熟悉,而且这边的总监对我做的项目也不了解;三面HR,主要聊本科的大学生活。面完回去等通知,等到现在还没消息,估计是凉了,岗位实在不合适。

六、比特大陆,笔试加视频面:
时间安排的比较紧,一人30min,不能超过时间,一面介绍项目,问SVM原理,欠拟合和过拟合怎么办,用什么激活函数,项目中的模型用的学习率等,最后给了编程题:把一个随机顺序的数组按mod3=0放左边、mod3=2放中间、mod3=1放右边的顺序进行排序,要求空间上原地排序,时间上单次遍历的时间。由于前面用的时间太多,编程题时间比较紧,我编到一半就让我说说思路就好了,然后我说了我的思路,他说恩不错,可以。。。就过了一面,第二天二面,换了个人,也是开始介绍项目,又问SVM原理(- -,我也是醉了,不跟一面的人沟通下么),balabala说了一堆之后,就直接给编程题:给定一个整数数组,求任一元素减去该元素右边任一元素的差值的最大值。先写了一个,说时间复杂度太大,我就一直卡在用动态规划上去了,当天状态也不好,最后没优化出来,给挂了。其实面完的时候,瞬间想出来了,根本不用去踩动态规划的坑T T。

以上就是我的部分面试经验了,下面我总结一下:
1、面试千万不要紧张,千万不要紧张,千万不要紧张(重要的事说三遍),把面试当做同学或同事间的正常交流,而且大多面试官很友好,不会说因为你不会哪个知识点就鄙视你。面试也是你学习知识的一个途径嘛。
2、学历真的还挺重要的,好多大公司一面在面试结果差不多的情况下优先985,211,所以学历不是很好的童鞋要尽量把自己会的都展示出来,秀出自己技能!(我是么得秀)
3、面试的时候千万不要自己提起你听过但又不熟悉的知识点,不然面试官一问你,你就尴尬了。
4、基础的算法还是要了解下的,像我这种本科不是计算机专业的,只能靠刷leetcode或牛客网、七月在线上的题来积累下经验了。
5、机器学习,深度学习的理论知识要掌握清楚,这是必备技能。
说了这么多,希望我的惨痛的面试经验能对大家有用吧T T。在全民皆算法岗的现在,打铁还需自身硬呐,自己修为还是不够,还是得继续搬砖修炼,春招再战!
觉得有用的童鞋请点下右上角的关注,谢谢啦~~~~~
已邀请:

微信用户469411

赞同来自:


抖音的编程题,哪位大佬做出来的话可以分享下思路和代码。。现在我还不是不清楚最优解怎么解的

要回复问题请先登录注册

返回顶部