2023春季实习面试
南京百家云科技有限公司
自我介绍;
(第一个项目)
介绍使用YOLOv3的项目并介绍YOLOv3;
YOLOv3的图像输入大小是什么;
YOLOv5、YOLOv8都出来了为什么要用YOLOv3;
对YOLOv5熟悉吗,说一下YOLOv3与YOLOv5的区别,YOLOv5中加了哪些结构,介绍一下;
YOLOv3最后模型的输出是什么;
多分类目标和多目标分类一样吗;多分类和多标签一样吗,若不一样有什么区别;
softmax的作用是什么;为什么进行目标分类时要用softmax;
若需要给一个目标打多个标签时,应该怎么做;
更加熟悉YOLOv3还是faster-RCNN,介绍一下(回答的是faster-RCNN);
faster-RCNN中图像的输入大小是什么;
介绍一下faster-RCNN的发展史;
你看的faster-RCNN源码中,都进行了哪些数据处理(包括在图像尺寸不满足输入大小时,图像上的标注框应该如何进行缩放);
(第二个项目)
介绍另外一下另外一个项目;
该项目中所使用的数据集是什么,有多少张图片,共有多少种类,类别都是什么;
数据集使用了哪些数据增强,使用了什么库,为什么要这样做;知道这些数据增强的底层实现吗;
在项目中使用了什么方式读取图片?OpenCV和PIL这两种读取图片的方式有什么区别;
项目中使用了深度可分离卷积,介绍一下深度可分离卷积,并介绍一下它的作用;
在该项目中模型共有多少层,输入的图像大小是多少,进行了多少次下采样;
在该项目中使用了注意力机制,介绍一下;
在该项目中最后的输出是怎么样的;
(深度学习)
介绍一下深度学习的激活函数,有哪些优缺点;
梯度下降函数有哪些;在哪会用到梯度下降;梯度下降的参数有哪些;
学习率的作用是什么;
如何设置batch_size;图像处理在什么位置做;batch_size会调用什么函数;
目前在做什么,介绍一下它的原理,代码是如何实现的(说的是NF);
生成对抗网络的生成器和判别器的关系;
tensorRT在转换的时候会转换成什么类型的模型;
在转换的过程中遇到了什么问题,是如何解决的;
为什么tensorRT会减少显存,增加计算量;
一阶段和两阶段的目标检测模型有什么区别;
(算法)
快排;
(其他)
你从上一次实习经历中得到了什么;
- 在上家公司实习你做了什么工作;
- 在上家公司做线材的缺陷检测使用了什么相机,光源;用了几个相机;相机和光源的位置是如何摆放的;是否用到了图像拼接;
- 在上家公司使用的可视化系统是自己开发的吗;
- 在上家公司实习的项目中遇到了什么问题;是如何解决的;
- 学习过flask框架吗;
总结:这次面试时间长达100分钟,感觉比较好,虽然问的问题比较多,有一部分没有回答上来,快排也写的稀碎,但总体还是好的,能够感觉到面试官特别重视。
梅卡曼德机器人(上海)
- 自我介绍;
- 防止过拟合的方法有哪些;
- 介绍一下你的项目(三个都介绍了一下);
- 你多次提到了残差结构,介绍一下残差结构是怎么样的;
- 学习率一般设置多少,有没有自己的调参经验;过大或过小会导致什么后果;
- 介绍一下图像分类,语义分割和实例分割有什么区别;
总结:这个面试很快就结束了,面试官介绍说梅卡曼德的研发主要是在北京,上海这边主要是做项目,比如采集图像2D或3D图像,交给专门的标注公司去做,标注公司做完后检查他们做的是否合格,然后通过项目区去选择合适的方法,用现成的软件设置一下超参数就可以去训练。
武汉TCL工业研究院
- 自我介绍;
- 介绍一下项目(几乎没有发散去问);
- 介绍一下YOLOv3;
- YOLOv3的三种不同尺寸的特征图分别是下采样多少;预测何种类型的物体;
- YOLOv3的一个grid cell产生几个anchor;
- YOLOv3中正样本和负样本是如何划分的;
- 介绍一下faster-RCNN;
- 在faster-RCNN中正负样本是如何选择的;
哈啰
介绍一下做过比较有意义的项目;
focal loss的公式,以及各个参数的含义;
残差结构的作用;
回答:可以有效的防止过拟合。
为什么可以有效的防止过拟合?
回答:残差结构的分支结构,当网络层数过深时,残差结构可以使带有卷积操作的分支短路,从而减少模型的深度。(其实这样回家是不对的)
应该是因为当是普通结构时y=f(x),而当是残差结构时y=f(x)+x,…..;
熟悉的目标检测网络有哪些;
- 归一化层的作用;
- 目标检测网络中,一阶段的网络和两阶段的网络主要的差别在哪;
- 介绍一下在faster-RCNN中的RPN层;
- 在faster-RCNN中,坐标误差用的什么损失函数;
- smooth L1损失背后的原理;
- 在YOLOv3中,如果预测框超出了图像区域应该怎么处理;
- 在YOLOv3中,预测的xywh的偏移量的值的范围是什么;
- 在YOLOv3中的损失函数是什么;
- 在YOLOv3中,计算坐标时log和e是怎么计算的;
总结:面试官特别好,每提问一个问题在回答完后都会说出他对回答的评价,以及他觉得的答案,态度也特别好;在面试完以后介绍了一下如果面试通过后的工作内容,并从在校生的视角进行对比,就纠正认识上的差距;并且还给出了今后学习上的一些建议。
问他实习生的核心竞争力是什么:1.实习时间的长短;2.技术;3.态度
正式找工作的核心竞争力:1.技术;2.学习能力(他说这个面试很难体现出来,但也会采用一些方法)
最后还说知道学生在学校基本上只学习python,要多学一下C++,不然以后找工作很不利,尽量多知道一些算法的底层逻辑,这样更有利于以后的发展。
其他面试提出的有价值的问题:
- 在对缺陷进行语义分割时,若缺陷的面积很小且不规则,如何进行测量;
需要尽快学习的地方
- 学习传统的图像处理方法;
- 学习C++;
- 学习OpenCV;
- 学习3D视觉技术;
- 学习PCL点云库;
- 学习关于视觉相关的C++技术;
- 对YOLO系列和faster-RCNN系列的原理要理清楚,可以不细看代码,但原理一点要搞清楚;
- 找关于以上技术的开源项目进行学习,并掌握;
- 学习transformer、VAE、NF等模型的原理代码;
- 掌握mobilnetv2和unet的模型结构和设计思想;
- 完善简历上的项目细节;