节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学,针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。
今天我整理一位CV算法岗同学的面试题,分享给大家,希望对后续找工作的有所帮助。喜欢记得点赞、收藏、关注。更多技术交流&面经学习,可以文末加入我们交流群。
写在前面
今年CV方向算法工程师非常难找,投递CV算法的毕业生越来越多,各个CV岗位(包括研究岗与业务线上的算法工程师岗)对于求职人员的要求也越来越高。
本文以自己春招实习以及秋招的经历为基础,整理秋招求职的视觉图像算法中的经常会遇到的一些面试问题。主要整理一些常问的基础知识以及算法知识。由于每个人自己的项目不同,岗位的不同问题也会有一些不同,这些基础问题应该是都有所理解的,这些基础知识作为查漏补缺来看吧。
在此,特别感谢社群中的大佬的慷慨分享,让我收获颇多,感谢
机器学习
-
梯度下降法与牛顿法
-
感知机的计算公式
-
K近邻中kd树的思路
-
朴素贝叶斯的推导以及假设条件
-
ID3,C4.5,CART决策树的计算流程
-
Logistic回归的极大似然推导
-
SVM的推导,KKT条件,原问题与对偶问题的联系
-
Adaboost,梯度提升决策树,GBDT,XGboost
-
L1正则化为什么能够获得稀疏解
深度学习
-
RCNN系列算法的演进过程,重点详细介绍Faster RCNN算法
-
YOLO系列算法(v1-v4)的演进以及每个算法的特点
-
YOLOv3的主要改进
-
YOLOv4的主要改进
-
SSD系列算法(SSD,DSSD等算法)
-
two-stage算法主要慢在哪儿
-
ROIpooling,RoiAlign的计算
-
RetinaNet解决什么问题
-
Focal Loss的计算
-
Batch Normalization的作用
-
BN的计算公式
-
BN中偏移因子与缩放因子的作用
-
训练和测试时BN的不同点
-
多卡的BN如何实现同步(一次同步与两次同步)
-
Normalization的几种形式的计算(BN,Layer Normalization,Instance Normalization,Group Normalization)
-
DNN的反向传播推导
-
CNN的反向传播
-
池化层的反向传播
-
img2col的计算
-
ResNet到底解决了什么问题
-
感受野计算
-
普通卷积,Group卷积,深度可分离卷积的计算量与参数量
-
IOU计算(代码)
-
NMS(代码)
-
soft-NMS(代码)
-
MobileNet与shuffleNet特点
-
MobileNetv1与v2的改进
-
K-means聚类anchor的思路以及代码
-
anchor-free的算法都知道哪些
-
DETR算法介绍一下
-
FPN为何能够提升小目标的精度
-
Softmax与sigmoid计算公式
-
softmax交叉熵损失的梯度
-
分类为何采用交叉熵损失而不是均方差损失
-
TP、TF、FP、FN的计算
-
precision、recall、F1score、accuracy的计算
-
ROC、AUC、MAP的计算
-
各种回归损失的计算以及优缺点(L1loss,L2loss,smooth L1loss,IOU Loss, GIOULoss,DIOUloss,CIOULoss)
-
带有warmup的cosine学习率计算
-
说说了解到的几种分割算法
-
Transformer的原理以及VIT的了解
-
各种优化器的计算公式(GD,SGD,batch GD,SGD+momentum,NAG,AdaGrad,RMSProp,Adam)
-
CNN的平移不变性的理解
-
Dropout具体是怎么做的,训练和测试时有什么不一样
-
神经网络的深度和宽度理解
-
SIFT与HOG
-
Transformer相比较CNN的优缺点
-
雅可比矩阵与海塞阵(一阶导与二阶导)
-
深度可分离卷积的优缺点,Mobilenet是否一定快
-
Faster RCNN回归的公式。
-
权重初始化的方案(Xavier,kaiming_normal)
-
数据增广的常用方案
-
数据类别不均衡的解决方案
-
半监督算法
-
自监督算法
-
自监督中的崩溃解问题的理解
-
Triplet Loss
图像处理
-
各种图像边缘检测算子(sober算子,Robert算子,Prewitt算子,Laplace算子,canny算子)
-
低通高通滤波器
-
降噪
-
形态学处理(腐蚀以及膨胀)
-
图像量化
linux常用命令
-
查找文件命令(whereis,which,find,grep,locate)
-
查看进程
-
杀死进程
-
ssh,scp
-
nohup &
-
文件权限
c++基础
-
c++编译过程
-
静态链接库与动态链接区别
-
cmakelist文件
python基础
-
python多线程,多进程
-
python的GIL
-
生成器与迭代器
-
装饰器
-
深浅拷贝
技术交流
前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~
我们建了算法岗面试与技术交流群, 想要进交流群、需要源码&资料、提升技术的同学,可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。
方式①、微信搜索公众号:机器学习社区,后台回复:技术交流
方式②、添加微信号:mlc2060,备注:技术交流+CSDN
用通俗易懂的方式讲解系列
- 用通俗易懂的方式讲解:不用再找了,这是大模型最全的面试题库
- 用通俗易懂的方式讲解:这是我见过的最适合大模型小白的 PyTorch 中文课程
- 用通俗易懂的方式讲解:一文讲透最热的大模型开发框架 LangChain
- 用通俗易懂的方式讲解:基于 LangChain + ChatGLM搭建知识本地库
- 用通俗易懂的方式讲解:基于大模型的知识问答系统全面总结
- 用通俗易懂的方式讲解:ChatGLM3 基础模型多轮对话微调
- 用通俗易懂的方式讲解:最火的大模型训练框架 DeepSpeed 详解来了
- 用通俗易懂的方式讲解:这应该是最全的大模型训练与微调关键技术梳理
- 用通俗易懂的方式讲解:Stable Diffusion 微调及推理优化实践指南
- 用通俗易懂的方式讲解:大模型训练过程概述
- 用通俗易懂的方式讲解:专补大模型短板的RAG
- 用通俗易懂的方式讲解:大模型LLM Agent在 Text2SQL 应用上的实践
- 用通俗易懂的方式讲解:大模型 LLM RAG在 Text2SQL 上的应用实践
- 用通俗易懂的方式讲解:大模型微调方法总结
- 用通俗易懂的方式讲解:涨知识了,这篇大模型 LangChain 框架与使用示例太棒了
- 用通俗易懂的方式讲解:掌握大模型这些优化技术,优雅地进行大模型的训练和推理!
- 用通俗易懂的方式讲解:九大最热门的开源大模型 Agent 框架来了