投递了一个视觉算法岗的寒假实习,接到了HR的电话,明天面试,时间紧任务重,想通过这篇文章记录一下自己今天准备的一些基础的视觉算法岗可能会问到的问题:
1、常见的目标检测与语义分割算法有哪些?
目标检测算法有 YOLO 系列(像 YOLOv3、YOLOv4、YOLOv5 等),它速度比较快,检测精度也不错。还有 Faster R - CNN,它分为区域生成网络和检测网络两部分,检测效果挺好。
语义分割算法有 FCN(全卷积神经网络),它可以端到端地进行像素级别的分类。还有 U - Net,在医学图像分割领域用得挺多,结构简单但是效果很好。
2、单阶段和双阶段检测他们的不同在哪里?
单阶段检测算法就像是短跑选手,速度快。像 YOLO 系列,它直接在图像上生成目标的类别和位置,没有中间复杂的区域提议阶段,所以检测速度很快,但在小目标检测等一些精度要求高的场景下可能稍弱一点。
双阶段检测算法就像是长跑选手,比较稳。像 Faster R - CNN,它先通过一个区域提议网络生成可能包含目标的区域,然后再对这些区域进行分类和位置精修,精度一般会高些,不过速度会比单阶段的慢,因为多了生成区域提议这个步骤。
3、RPN是什么,ROIpooling ROIALign的作用分别是什么?
RPN(Region Proposal Network)呢,它是 Faster R - CNN 里很重要的部分。它就像是个侦察兵,主要是用来生成可能包含目标物体的候选区域,也就是我们说的区域提议。它会在特征图上滑动窗口,然后输出这些候选区域的信息。
ROI Pooling(Region of Interest Pooling)是对 RPN 提出的候选区域进行处理的。它的作用是把这些大小不一的候选区域变成固定大小的特征图,这样后续就可以输入到全连接层进行分类和回归啦。不过它有个小问题,就是在量化过程中会有一些误差。
ROI Align 是为了解决 ROI Pooling 的量化误差出现的。它通过双线性插值等方法,更精准地从特征图中提取候选区域的特征,让特征提取更加准确,对于目标检测的精度提升挺有帮助的。
4、YOLO系列当中的一些重要概念和演变介绍:
YOLOv1:把目标检测当作回归问题,划分网格来检测目标。开创了实时检测,但小目标检测差且每个网格只能预测一个类别。
YOLOv2:引入 anchor box 概念,能预测多种形状目标,还使用 Batch Normalization。精度提升,尤其对小目标,平衡了速度和精度。
YOLOv3:采用多尺度预测,有三个不同尺度输出,用 logistic 回归分类。提升小目标检测和复杂场景检测能力。
YOLOv4:加强数据增强,如 Mosaic,还引入 CSPNet。速度和精度显著提升,在复杂环境中表现出色。
YOLOv5:结构灵活,可调整模型大小,有自适应锚框计算。适用性强,不同设备都能部署,速度和精度都高。
YOLOv6——YOLOv11——YOLOv无穷大(hhh)欢迎大家补充!
5、anchor 和anchor free 的区别,以及优缺点:
区别:Anchor 是有预设的框,通过调整这些框来检测目标;Anchor - free 则是直接预测目标的关键位置。
优点:Anchor:对规则形状目标检测好,模型训练较稳定,收敛快。
Anchor - free:模型简单、参数少,对小或密集目标检测更灵活。
缺点:Anchor:先验框参数难确定,计算和内存占用大。
Anchor - free:对不规则目标定位难,训练可能需要更多数据和复杂策略。
6、Focal loss的优缺点是什么,应用场景在哪里?
Focal loss 是一种损失函数。简单说呢,在分类任务里,我们知道有很多简单的样本,比如背景类别的样本很容易被分类正确。Focal loss 就是给这些容易分类的样本比较低的权重,让模型把重点放在难分类的样本上。它的计算会考虑样本分类的难易程度,通过一个调制因子来调整损失的权重,使得模型训练的时候更关注那些容易出错、难分类的样本,这样就可以更好地处理类别不平衡的问题啦。
7、YOLOv5的详细介绍:
YOLOv5 网络结构包括提取特征的 Backbone、融合特征的 Neck 和确定目标位置与类别的 Prediction。核心组件如 CBL 助力快速学习,ResUnit 解决梯度问题,CSP 模块减少计算且增强特征提取,Focus 与 SPP 分别增加特征图通道数与融合多尺度特征。输入端有 Mosaic 数据增强,四张图拼接丰富背景;自适应锚框计算自动选优;自适应图片缩放减少黑边。训练靠多部分组成的损失函数评估差异,多种优化器可选。应用在工业质检、安防监控、自动驾驶、医学图像分析等领域,能快速准确检测目标物体。
8、IOU、GIOU、CIOU、SIOU、EIOU、DIOU他们的区别,我们什么时候选择?
IOU:就是预测框和真实框交并比,用于简单衡量框重叠程度。
GIOU:广义交并比,在 IOU 基础上考虑外接矩形中未重叠部分,用于框不相交时合理衡量距离。
CIOU:在 IOU 基础上考虑框中心距离和宽高比,用于精准优化框位置和形状。
SIOU:考虑框的角度和形状相似性,用于旋转目标检测等需要考虑形状和角度的任务。
EIOU:在 CIOU 基础上把宽高惩罚项分开,用于让模型对框宽高差异更敏感的场景。
DIOU:考虑框中心点距离,用于加快预测框在训练时向真实框的收敛速度。
9、NMS和soft NMS的区别是什么?
NMS 是直接抑制 IOU 大于阈值的重叠框,只留置信度最高的框,简单直接但可能导致近目标框被误删。soft NMS 则是根据 IOU 大小对重叠框的置信度进行衰减,再判断是否保留,更灵活,能减少目标漏检,但计算稍复杂。
10、常见的优化器有哪些?
常见优化器有:
随机梯度下降(SGD):基础优化器,按单个样本梯度更新参数,简单但学习率难调。
动量(Momentum):在 SGD 基础上利用动量,减少局部震荡,加速收敛。
Adagrad:依参数历史梯度平方和调整学习率,适合稀疏数据,但学习率会一直降。
Adadelta:改进 Adagrad,让学习率更新更稳定,无需手动设初始学习率。
RMSProp:类似 Adadelta,通过衰减率调整学习率,优化过程更稳定高效。
Adam:结合动量和 RMSProp 优点,收敛快,对超参数不太敏感。
11、梯度消失和梯度爆炸的概念:
梯度消失:比如在一个很深的循环神经网络(RNN)中,随着时间步的增加和网络层数的加深,梯度在反向传播时会不断地乘以一个小于 1 的权重,就像每次乘以 0.9,经过很多层后,梯度就变得微乎其微了。
梯度爆炸:假设在反向传播时,梯度每次乘以一个大于 1 的数,比如 2,随着层数的增加,梯度就会呈指数级增长,很快就会变得非常大。
12、BN的类型有哪些?
Batch Normalization(BN)原理:对每个小批次数据归一化,先将数据处理成标准正态分布,再通过可学习参数变换。应用:用于 CNN 等多种神经网络的卷积层后、全连接层前,加速收敛,提升稳定性和泛化能力。
Layer Normalization(LN)原理:在每个样本的所有特征维度归一化,不依赖批次大小。
应用:在 Transformer 架构等自然语言处理场景用得较多。
Instance Normalization(IN)原理:在每个样本的每个通道内归一化,关注样本内部特征。应用:在图像风格迁移等任务应用较多。
Group Normalization(GN)原理:将通道维度分组,在组内计算均值和方差归一化,结合了 BN 和 IN 优点。应用:批次小或不确定时比较适用,用于对实时性要求高的任务。
13、卷积和可形变卷积的应用场景?
卷积的应用场景:在图像领域,用于图像分类、目标检测、图像分割、去噪和增强。在语音领域,用在语音识别和合成。在自然语言处理领域,用于文本分类和机器翻译。
可形变卷积的应用场景:用于复杂目标检测和识别,像检测姿态多变或部分遮挡的物体。用于场景理解和语义分割,处理不规则形状物体。用于视频分析和动作识别,适应物体运动形变。在医学图像分析中,对不规则的器官和病变区域特征提取也很有用
14、还有哪些常见的卷积:TBC、Coord、DS、蛇形卷积等。
15、怎么实现Zero Shot的目标检测算法?
基于预训练模型的方法:利用在大规模图像 - 文本对上预训练的模型,如 CLIP、ALIGN、ALBEF 等,将图像和文本映射到同一特征空间,通过计算图像区域特征与目标类别文本特征的相似度来判断是否存在相应目标.
提示学习方法:通过设计和优化文本提示,如在类别名称基础上添加详细描述或可学习的提示向量,引导模型更好地理解和识别未见过的类别,从而提高检测性能.
伪标签生成方法:利用视觉和语言模型从大量未标记图像中生成伪标签,挖掘其中可能包含的新类别目标信息,再结合原始标注数据训练检测器,增强模型对未标记类别和新类别的检测能力.
暂时就先写15题,欢迎大家评论区补充,祝我好运吧xdm!!!
标签:卷积,检测,图像,目标,面试,算法,梯度,类别,视觉 From: https://blog.csdn.net/qq_53093911/article/details/144056883