上午商汤
一面
- 介绍下自己;
- 第一个项目里面“基于FPGA的分类网络实现”,讲讲具体怎么做的量化和剪枝;
- 谈谈检测模型的发展?比如SSD和Faster R-CNN的区别在哪?
- BN和group normalization的区别;
- ROI pooling怎么做的?还有对齐如何做?
- 来道算法题,有一个A数组和B数组,求
,面试官为了表达题意写了个时间复杂度为O(n**2)的,然后要我写一个时间复杂度低的!先对一个数组A排序,然后让B中每个元素在A里面的位置可以让时间复杂度降低到O(nlogn);
- python里面的装饰器有了解吗?
二面
- 自我介绍下;
- 来道算法题吧!二维矩阵里有很多0和1,有一些1之间是连通的,称为一个岛屿,求岛屿的数量;
- 谈谈检测吧!从R-CNN到Faster R-CNN;
- depthwise conv怎么做的?
- 记不起来其他的了。。。。。。。
下午头条,貌似有三面,面了两面了,在等第三面。。。
一面
- 介绍下自己;
- 写道算法题!
如何求?
- 分类、检测、压缩你最擅长哪个?我问你哪个,你挑一个(哭了),我没说,最后他问了检测,先说了两个模型我都没看过(比教新的,被教做人了,得多跟进下检测的paper了),然后问了YOLO1、2、3的演化过程;
- focal loss的形式,以及它的反向传播表达式;
- BN层的前向传播,以及group normalization;
- 来道算法题,求一个有环链表的起点;
- 再来一道,对带随即指针的链表的深拷贝;
二面
- 谈谈第一个项目,“基于FPGA的分类网络实现”,剪枝和量化是怎么做的?你这个是训练完成后做的,如何将剪枝和量化融入到训练中呢?
- 深度分离卷积怎么做的?它和标准卷积的计算量对比下?深度分离卷积还用在了什么地方?它为什么效率不高?
- 算法题,有一个数组A,长度为N,里面的元素为[1,...,N],k有可能大于N也有可能小于N,从数组索引为0的地方开始,走k步(如果到低从头开始),弹出目前的这个元素,继续走k步,直到数组中只有一个元素了,输出这个元素。
- 记得的就这些了,今天面了四场脑子不够用了。
再更——————————————————
第三面是hr面。。。。。。不过讲真的,头条这个流程是真的到位。