一面
自我介绍,项目介绍,问了下面试官是否用有深度学习,他说没有用过,于是我就少说项目细节。
之后说笔试编程题做的不太好,问是不是基础不太好,我直接回答,平时用的比较少,更多用MATLAB,c++是在用CAFFE,tensorflow需要调试时看,卷积以及一些基本loss有看过底层代码。
编程题有:
1、 判断n是否为素数
数学概率论问题:
1、 不满秩的矩阵A,AX=b,什么情况下无解
提示:【1 2】【X1】=[1]
1 2 X2 0
2、 描述K-means聚类
评价:语言表达中等,编程基础较差,只用matlab,caffe等,数学基础有,经过提示后可以回忆起来。
不通过,具体由***裁定
二面:
项目聊的很细致,聊到具体改进实现,IOU精度,速度,问模型大小,面试官质疑320*240大小的输入,即便第一层就缩小了很多,在手机端实现实时17fps很难。问我为什么没有尝试用VGGnet,或imagnet基础上微调。这样更容易收敛,而随机初始化很容易不收敛。
1、 写softmax loss函数,sigmoid函数,
Sigmoid能否用于分类?多分类如何用sigmoid实现?或用svm二分类器实现?
3、 Pca,svm有用过吗
4、 防止过拟合的方法
5、 Bn作用
6、 写段程序,实现线性回归,给数据X,初始w设为0.01,y=wx,实际为y=2x,x=[0,1,2,3,4,…500]
7、 写最小二乘法的公式推导
8、 梯度下降,牛顿法,拟牛顿法有什么区别
9、 说明下resnet如何实现100层网络仍然能收敛
总体来说,面试官问的很深入,你懂的会了的很深,不懂的点到为止,从交流中了解你到底几斤几两,知道什么不知道什么。自己还是基础差,编程基础差,基础算法差。所以很容易给人只会调参的印象,深度学习的理论知识也很深,需要学习的还很多,加油,基础巩固。