2019年春招实习面经

2019年11月28日16:35:51 6 385 °C
摘要

我是2020届硕士,求职意向是计算机视觉算法工程师。经历过兵荒马乱的秋招,回头看找实习整理的面经,感觉还是相对容易的。

2019年春招实习面经

写在前面的话

我是2020届硕士Ariel,求职意向是计算机视觉算法工程师。经历过兵荒马乱的秋招,回头看找实习整理的面经,感觉还是相对容易的。

我在找实习的时候没有特别明显的地域倾向性,所以北京杭州的很多公司我都投递了,可以自己做一个excel表,把投递的和没投递的公司都记录下来,因为到面试后期有可能就记混了。

针对简历,我个人觉得最好要有三个项目,最起码一定要有一个项目准备的非常充分,可以和面试官聊很长时间,因为一旦无话可说就是他问你的时候了,总有一个问题是你不会的,这样就比较减分。电话面或者视频面的时候记得开启录音功能,面试结束及时整理笔记。

每一次面试都是非常宝贵的经验,面试官不断对你的项目挖掘提问,你也不断的完善充实,到后来这个项目几乎就是烂熟于心,几乎没有面试官能问倒你了。

大家刚找实习的时候不要直接投递大厂,因为可能只有一次机会,建议先找小厂或者心中排名靠后的厂练手,此外,能走散招走散招,能走直推走直推。找实习对大多数同学来说可能都是持久战,不要轻易放弃,祝大家都能找到合适的实习。

拿到的实习Offer:网易伏羲、地平线、旷视科技、百度

网易伏羲人工智能实习生

一面:

这是我第一次参加的电话面试,比较紧张。就聊了13分钟。主要讲了项目经历(这应该是简历面),还问了我实习时间,说是想带实习生发paper。通过这次面试,我发现自己有很大的不足,面试的时候头脑放空,讲原理的时候语无伦次,表达的不好。所以还是应该对经常问到的东西多加练习。

一直围绕项目在提问,问的非常细致(我省略项目的问题是因为每个人的项目不一样,我的问题对其他人可能没有太多的参考价值,但是这并不说明项目不重要。在面试的时候讲清楚项目,每一个点都非常了解,面试官扩展延伸也回答的非常好,是面试特别特别特别重要的一点)。还问了深度学习框架的使用。TensorFlow和pytorch哪个用的多一点?对TensorFlow有什么感觉吗?平时有遇到什么坑吗?有遇到特别难以解决的问题吗?

二面:

是个温柔的小姐姐视频面试。

  1. 项目。
  2. 对语义分割网络的理解,DenseNet网络的理解。
  3. 代码:有这样一个数组A,大小为n,相邻元素差的绝对值都是1,如A={4,5,6,5,6,7,8,9,10,9}。现在给定数组A和目标整数t,请找到t在数组中的位置。
  4. tf.nn.sparse_softmax_cross_entropy_with_logits和tf.nn.softmax_cross_entropy_with_logits的区别?

  5. 逻辑回归的公式和交叉熵的公式。

  6. 训练TensorFlow的时候有没有出现空值的时候?如何解决?

三面:

HR面试。其实HR可能对专业性的东西没有那么了解,主要还是通过你的表达,分析你的掌握程度。聊的最多的还是项目,你在这个项目中收获了什么,遇到了什么问题?怎么解决的?这个项目有什么实际应用?每周都有看顶会顶刊论文吗?最近的一篇对你帮助最大的文章是什么?自己有发表论文吗?(对论文还是比较看重的)。如果面试的是学术性比较强的组,paper还是非常重要的。

地平线视觉算法实习生

一面:

  1. 项目。
  2. 熟悉tensorflow的data flow吗?怎么把数据送进网络,有哪几种方法?

  3. 决策树的loss?

  4. 决策树分类过程。

  5. 实习希望得到一个什么样的锻炼。

二面:

  1. 项目。
  2. 代码。两道LeetCode原题:1和442。
  3. yolo1和2的区别。

旷视视觉算法实习生

旷视科技的面试风格就是编程+思维+概率。

一面:

  1. 项目。
  2. 讲语义分割的发展流程。
  3. 对模型压缩有什么了解。
  4. 你有看其他新的论文吗,什么领域都可以,就是深度学习这块?

  5. 你觉得mobilenet做了哪些优化呢?

  6. 代码。1)一个数组长度为N,元素值范围为1-N,均为整数,问数组中是否有重复的数?2)一个数组长度为N,无序,求第K大的数?3)一个数组长度为N,一个数占了一半以上,求这个数?
  7. __init__.py的作用是什么?

  8. 如何在/A路径import /B路径下的模块C呢?

二面:

  1. 项目。问了模型有多少层,参数量和flops是多少。
  2. 个人的研究兴趣点是什么。
  3. resnet的结构性特点。
  4. 残差网络为什么有用。
  5. 除了resnet还有什么可以改善梯度消失或者梯度爆炸。
  6. BN作用。
  7. 除了BN还了解其他归一化操作吗。
  8. 神经网络接分类器,softmax和SVM的分类器有什么区别吗?

  9. 代码。求一个数组的Longest Increasing Subsequence(LIS)。
  10. 概率题。有10个红球,20个黄球,30个蓝球,一次取一个球,问最后一个摸到红球的概率是什么?

三面:

  1. 项目。我对三面的印象还是非常深刻的,面试官语气非常严肃,一直抠着点很仔细的问你,真的问到我怀疑人生。比如复现模型前后的精度是多少,什么标准评价的,没有达到你的预期你觉得是什么原因导致的,如果让你刷点你觉得可以从哪些方面入手之类的。
  2. BN的均值和方差是怎么更新的?

滴滴算法实习生

滴滴我投了两个部门。第一次机缘巧合投的是机器学习岗,一二面面试官都不是做深度学习的,所以DL的知识没有问太多。基础知识考查的比较多。

  1. python深拷贝和浅拷贝的区别
  2. python反转如何实现?

  3. 一串数组如何快速实现平方?

  4. C++的指针常量和常量指针的区别是什么?

  5. 讲一下C++的继承。

  6. 写shell,给定一个csv文件,第一列乘客性别(F、M),第二列是历史订单数量,求女性的平均发单数。(awk实现)

  7. 概率题。在作弊检测系统中,如果一个用户确实存在作弊行为,但是此系统没有检测出的概率为 5 %;误检为作弊的概率为 1 %;我们已经知道,一个用户作弊的概率为 0.1 % 。目前一个人被此方法检测出有作弊,那此人确实有作弊的概率接近多少?

  8. 代码。1)给定一个由整数组成的数组,在该数组中找出一个连续子数组,若该连续子数组中各元素的和最大,则称为这个数组的最大连续子数组。请计算出最大连续子数组之和。比如数组{2,4,-7,5,2,-1,2,-4,3}的最大连续子数组为{5,2,-1,2},最大连续子数组的和为5+2-1+2=8。2)给定一个链表,给定这个链表的头结点,实现删去这个链表的任意某个结点。3)字符串匹配:?能替代任意单一字符,* 能替代任意字符串(包含空字符串),实现bool Match(char *s, char *p)。
  9. 给一个多边形,已知多边形各个顶点的经纬度,如何判断一个点是否在多边形内。

  10. 正则化方法。
  11. 讲LR。

第二次投的是AI lab计算机视觉算法实习生,我当时感觉自己面的挺好的,但是一周内也没有通知。大概20天之后给我打电话约二面,原来是之前面试官有事耽搁了,我当时已经有确定的offer选择了,就没有再面了。

  1. 项目。
  2. 代码。LeetCode223:Rectangle Area
  3. 算特征图的输出和感受野。(网上有很多这种题,特征图计算时注意卷积向下取整,池化向上取整,感受野计算top-down)

爱奇艺算法实习生

面试官要求立即到岗,而我时间又没那么宽松,所以就止步一面了。

  1. 项目。
  2. 模型压缩了解多少。比如量化。
  3. 介绍朴素贝叶斯。
  4. 介绍逻辑回归。
  5. 数据增强怎么做。

百度计算机视觉算法实习生

百度做cv的部门很多,一般都是部门独立招聘,所以我总共面了三个部门。我个人觉得视觉技术部的面试难度是最大的,因为这是AIG做cv的核心,不容易通过而且转正难度也比较大。其次是深度学习技术平台部,主要做paddlepaddle的,涉及模型复现之类的工作,这个部门要求至少实习六个月,所以即使我当时面试通过了但是实习时间不允许。

部门1:

  1. 讲一个你自己满意的项目。

  2. 你自己设计的多尺度模块是怎么实现的,yolo3也有多尺度,你比较一下这两个多尺度有什么不同?
  3. yolo3的尺度输出有什么关系吗?

  4. 介绍yolo3的原理、结构和改进?yolo3的上采样是怎么做的,反卷积吗?

  5. yolo是怎么实现one stage的?(应该从输出channel的数据分布回答)

  6. IOU是怎么做的?

  7. 讲非极大值抑制算法。

  8. 写非极大值抑制算法代码。

  9. 讲一下装饰器?

  10. python的多线程有什么需要注意的地方吗?

  11. 什么时候用python的多线程,什么时候用多进程?

  12. SVM支持向量的点在哪?两条线中间的点是什么,两条线之外的点是什么?

  13. BN层的作用是什么,可学习参数是什么?如果输入是3*32*32*64,可学习参数是多少个?

  14. 如果卷积核是4*4*3,一共有五个卷积核,卷积参数是多少?(不要忘记偏置)

部门2:

  1. 项目。
  2. mask rcnn和yolo这种专门做检测,deeplab专门做分割有什么相同和不同之处呢?

  3. 如果让你设计语义分割网络,encoder和decoder应该具备什么条件呢?

  4. 你觉得用空洞卷积和用比较大的卷积有什么区别吗?

  5. 你觉得空洞卷积可以用在检测里吗?

  6. 你了解anchor的概念吧,假设v1也有anchor,v2和v1的anchor有什么区别吗?

  7. python里的multi-processing的多进程package有用过吗?

  8. python和C++面向对象有什么不同?python的面向对象体现在什么地方,优势是什么?

  9. python有dict数据结构,C++里有相似的数据结构map,你了解吗?你说一下dict背后的原理?如果我有一个巨长无比的dict,有成千上万个key,现在我还有100个key,如何判断这100个是否在那个dict里?

  10. 你能说一下pytorch的data parallel实现机制吗?或者说batch size是256,有8张卡,如果我用这个机制,是每张卡256,还是把256均分到8张卡上呢?tensorflow是一样的处理吗?

部门3:

  1. linux你用的是什么版本?你觉得linux和ubuntu的关系是什么样的,linux为什么会有很多发行版本?你觉得这些发行版本之间不一样的地方在哪里?
  2. 快排和归并排序有什么一样和不一样的地方?他们的最好最快平均时间复杂度是多少?

  3. 快排的流程?base你现在选的是最左边的数,你觉得怎么选择base可以提高快排效率

  4. 动态规划和贪心有什么区别?

  5. 在配置环境的时候经常会用到linux下的path,还有一种library path,你觉得这两个有什么区别?

  6. 进程和线程有什么区别?

  7. 你觉得python3和python2.7比有什么好处呢?

  8. 比如一个256*256的图片,你用numpy数组读进来,是3*256*256的形式还是256*256*3的形式?opencv读入的通道顺序是什么样的?

  9. 你觉得SVM和LR在分类的时候,他们的损失函数有什么不同?比如有很多样本,不管是SVM还是LR都能找到直线把他们切分开来,你觉得这两种算法在切分的时候这条线不一样在哪里呢?

  10. .SVM怎么处理线性不可分问题?你能举一个核函数的例子吗?为什么引入核函数之后,线性不可分的问题就解决了?

  11. 朴素贝叶斯的公式是什么?朴素是什么意思?

  12. 除了mobilenet你还了解其他什么小的网络?mobilnet v2和mobilenet有什么区别?你觉得mobilenet2中的结构有什么好处?为什么起作用?

  13. 你觉得densenet和resnet有什么最根本的区别?

  14. 如果有一个网络比较大,你想压缩它可以有几种方法?

  15. 量化是怎么做的?有了解过知识蒸馏吗?

  16. mobilenet v2和v1有什么区别?

  17. tensorflow的variable scope和name scope的区别?

  18. 二叉树怎么对它进行镜像翻转?你给我讲一下后序遍历?用非递归的形式讲。

抖音算法实习生

偏向机器学习,字节跳动对数据结构的要求还是非常高的。

  1. 有向无环图的前馈计算(就给你个有向无环图,自己定义数据结构实现)。
  2. 抛硬币如何抛出三分之一的概率。

  3. 逻辑回归的损失函数,逻辑回归推导 。

作业帮算法实习生

代码写的不完整,就直接gg了。

  1. 项目。
  2. 代码。1)LeetCode原题:22. Generate Parentheses。2)LeetCode原题:LeetCode836:Rectangle Overlap + LeetCode223:Rectangle Area

腾讯微信计算机视觉实习生

一面:

  1. 简要概括项目主要做什么。
  2. 你的项目模型输入是什么,数据集多大,数据增强怎么做的,怎么衡量做的好坏。
  3. 公开数据集有什么,数据集里都是什么图片,用什么装备采集的?
  4. 比如语义分割分割出猫和狗,但是如果狗这片区域里有几个像素点是猫,应该怎么处理?

  5. 实际场景:朋友圈的文本信息都给你用,设计一个情绪文本分类器。要求输入一个自然语言,你能判断出这个情绪是高兴的还是不高兴的。不会NLP没关系,就说应该用什么样的思路做就可以。

  6. 一段绳子,裁两刀可以拼成一个三角形的概率有多大。

二面:

写代码。

  1. 给定一个非空整数数组,求数组的中位数。
  2. 给定k个有序数组,返回这k个数组的交集。

阿里计算机视觉算法实习生

阿里最开始投递的是蚂蚁金服,简历面就gg了,蚂蚁金服难度还是比较大的,看重项目paper之类的。之后被另一个部门捞起来了,因为已经到春招后期了,所以面试的记录没有整理。

但是整体面试的风格还是印象非常深刻的,一面是简历面,大概面了一个小时吧,项目基础知识,基本上能问的都问了,而且没有提前邀约,就是直接打电话约你面试,不允许你换时间准备这种。

然后就是正式的一面,这个印象也非常深刻,因为当时我觉得自己简历上的项目已经准备的很充分了,但是这个面试官仍然把我问住了,而且是我从来没有思考过的点。剩下又面试了两三次,发挥的也一般,因此实习也就没去上阿里了==

weinxin
微信公众号
分享技术,乐享生活:Jack Cui公众号每周五推送“程序员欢乐送”系列资讯类文章,欢迎您的关注!
Ariel

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:6   其中:访客  3   博主  3

    • avatar ssss123 来自天朝的朋友 搜狗浏览器 Windows 10 重庆市 电信 4

      大佬,你好。请问下计算机视觉算法工程师,在面试过程中会不会涉及数据结构与算法方面的知识呢?

        • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Mac OS X 10_14_4 北京市 百度网讯科技联通节点

          @ssss123 涉及,这是必考知识点。

        • avatar keplerE 来自天朝的朋友 火狐浏览器 Windows 10 北京市 联通 1

          喜欢你做的网站。没看到数据结构的内容☺,可以分享下吗

            • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器 Mac OS X 10_14_4 北京市 百度网讯科技联通节点

              @keplerE 感谢支持,数据结构的内容少一些,有一些刷题系列的,还有一些排序算法的讲解,其它就没有写了。
              都在这里:https://cuijiahua.com/blog/learing-algorithm/
              可以看看。

            • avatar cccccandy 来自天朝的朋友 谷歌浏览器 Mac OS X 10_14_5 北京市 联通 0

              看了好几篇文章,觉得楼主写的很好,忽然看到楼主原来是2020的,那岂不是和我一样,哈哈哈哈,tql,当然我不做视觉,我做开发的~

                • avatar Jack Cui Admin 来自天朝的朋友 谷歌浏览器  Android 9 Redmi K20 Pro Build/PKQ1.181121.001 北京市通州区 联通

                  @cccccandy 啊,这篇不是我不写的,网站投稿的,哈哈。我2019的~