本面经均总结自Cver 公众号等
一、阿里
-
介绍一下LR及其损失函数
-
类别不平衡怎么解决的?
-
ResNet的特点有哪些?
-
为什么要使用1x1卷积,哪些情况可以使用1x1卷积?
-
支持向量机(SVM)的原理
-
SVM有哪些核函数?
-
手写计算AUC曲面面积的代码(伪代码也行)
-
如何解决过拟合?
-
讲一下随机森林(RF)的原理
-
YOLO中如何通过 K-Means 得到 anchor boxes?
-
ReLU有哪些变体?
-
BN和GN的区别?各有什么优缺点?
-
主要用什么语言?(答:C++)
-
线程和进程的区别?
-
C++的指针和引用有哪些区别?
-
静态变量可以类内初始化吗?
-
虚函数表是干嘛的?
-
介绍一下快速排序原理
-
为什么需要四次挥手?
-
Python中的对象(Object)和C++中的对象有什么区别?
-
Python的 lambda用过么?
算法
- 将n个有序链表合并成一个链表(LeetCode No.23)
Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. - 寻找最小连续子序列,返回序列和,以及子序列起始索引和结束索引
二、字节跳动
- 你了解lstm吗
- 你了解xgboost算法吗,说下情况
- 说下你了解的深度学习网络
- 说下bp的过程
- 说一下unet的结构
- 熟悉deeplab吗,aspp是怎样的
- retinanet的focal loss是解决的什么问题,那focal loss有解决背景样本和目标样本的问题吗
- opencv做了哪些数据增强
- faster rcnn回归用的什么公式
- 熟悉smooth L1吗
- 说一下nms的操作,那假如一个类有1000个框,怎么计算iou和去掉大于阈值的框
- 熟悉哪些基础网络,熟悉一些新的网络吗
- 激活函数有哪些,sigmoid存在什么问题,relu的表达式,relu的变体有哪些
- 熟悉normalization吗, 说说bn,bn是做了归一化吗,bn是在哪一维进行操作的,那gn有什么用,bn和gn都在哪用
- 那c++的指针和引用有什么区别,那引用能重新赋值吗,静态变量有什么用,静态变量在哪初始化,能在类内初始化吗,静态函数有什么用
算法题:
- 给定无序的数组,求出 连续相邻的子数组中最小值乘以长度 使得值最大的连续数组
- 输出二叉树每一行最左边的元素
三、 网易游戏—预研
- 深度学习的激活函数
- 深度学习的优化函数
- 说下牛顿法(上面的优化函数我没提)
- BN,BN和普通的Normalization的区别
- 过拟合的相关问题
- svm
算法题:
- 链表怎么判断有没有环,
- 无线长的数据流,找到第N时刻的第K大的数字
四、微软亚洲研究院
- 反卷积具体怎么实现的
- 为什么dropout能减少过拟合
- rcnn, fast rcnn,fater rcnn,yolo,问了我具体的yolo的那个anchor,反正好多具体的东西
五、小视科技
-
Yolov3相比于Yolov2有什么改进?
-
anchor的细节,问到了anchor当中9个anchor的参数数字各代表什么意思?分开后的参数数字又代表什么?
-
anchor在前向传播中哪个地方做了计算。
-
NMS的原理,假设两个人靠的非常近,则会识别成一个bbx,会有什么问题,怎么解决?
-
用什么来标注图片(labelimg),pascal voc的标注的格式(XML)
-
除了检测还会什么dl,答分类,问了resnet的细节,解决了什么问题,是什么结构?为什么能解决这些问题?resnet实现过程,画图说明,add,contact方式的区别和优缺点。相比GoogLenet的优势。
-
读图片数据是用的什么(cv2),什么方式可以增加图片的维度?就是在(w,h,channel)的基础上增加一维Batch_size批量,numpy,TensorFlow怎么做到上述过程?
-
TensorFlow最新版本的改进(Keras变成tf的高级接口了,直接tf.keras)
-
Pytorch当中permute和view的功能(可惜没用过,没答)。。。
六、腾讯
- Faster RCNN和SSD有啥不同,为啥SSD快?(不做Region Proposal,one-stage的)
- 训练加速有什么办法?(答加大batch size,或者先adam再SGD)
- 如果加大batch size需要调节哪些超参数(答加大learning rate,增加epoch)
- STL,红黑树,define const,static区别
- 二阶优化和一阶优化区别
- SVM推导
- xgboost ,gbdt
七、百度
-
看到你项目写到使用过Faster rcnn,请问Faster rcnn的优势是什么,为什么在这个项目使用Faster rcnn
-
能介绍一下 Faster rcnn RPN的作用和原理吗?
-
ROI pooling 的主要作用是什么?知道 ROI align吗? 它们两个的区别是什么?
-
说一下Faster rcnn anchor机制,分别说一下 RPN阶段 两种Loss分别是什么?
-
Faster rcnn有什么不足的地方吗?如何改进?还使用过其它的框架吗?
-
BN的原理
-
能介绍一下你经常用的optimizer吗?
-
解释一下什么是凸优化
-
编程题,手推SVM, 补全CNN部分BP的代码
-
编程题: 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值,就是平时写的滑动窗口最大值
-
编程题: Leetcode 315原题,线段树,好像也是一个算法竞赛题。
-
开放性题目:如何进行数据预处理,如何进行数据归一化等等,最后还抛出一个他们业务中正在做的项目中遇到的问题。
八、商汤
-
请问你在Faster rcnn中使用的哪个基础神经网络模型,VGG还是ResNet? 能介绍一下常用的神经网络模型吗?
-
看到你使用过LSTM,请问LSTM主要解决什么问题,它的三个门分别是什么,有什么作用?
-
能从数学层面分析一下梯度消失或者梯度爆炸的原因吗?
-
说一下dropout可以解决什么问题,为什么有效?
-
请介绍一下你常用的 Loss 函数, cross entropy的原理是什么?,softnms
-
你知道的凸函数求极值的方法有哪些?我们在机器学习中经常使用梯度下降,为什么不使用牛顿法?
-
如何将高维的变量映射到低维?
-
过拟合的原因及解决办法
-
平时使用什么编程语言? 请介绍一下python中闭包的作用?
-
c++中,类成员变量可否同时声明为虚函数和静态函数
-
编程题:找出数组中两数之和为指定值的所有整数对,时间复杂度为O(n)
-
编程题: 找出数组前K的数
-
开放性题目:一个5层的教学楼,每层有若干个教室和大于2个的楼梯,请建立一个数学模型计算出火灾发生时所有人员撤出的时间,并列出你考虑的主要因素
-
BN层原理,怎么初始化,调参心得
-
编程题: 快排
九、旷世
- 实习:说一下deeplab。它与其他state of art的模型对比,画出backbone
- CRF后处理的目的
- 什么是BN
- 多标签分类怎么解决,从损失函数角度考虑
- image caption项目:文本特征用什么提的?提前提好的还是和图像一起训?
- 零样本分类问题。如果测试时出现一个图片是训练时没有的类别,怎么做
- 代码:链表反转
- 代码:mIOU(图像分割的通用评估指标)的代码实现,使用numpy(我直接用了python)
十、平安
- adaboost,xgboost
- LR和SVM区别,高斯核为什么有效
- 对抗过拟合的方法
- kmeans和EM关系,GMM关系
- LR为什么要离散特征
- densenet为什么比resnet好
十一、海康上海
- SVM推导,核函数,惩罚系数,随机森林,决策树
- FPN结构,softnms伪代码 iou伪代码