2025年人工智能工程师计算机视觉考核试卷及答案_第1页
2025年人工智能工程师计算机视觉考核试卷及答案_第2页
2025年人工智能工程师计算机视觉考核试卷及答案_第3页
2025年人工智能工程师计算机视觉考核试卷及答案_第4页
2025年人工智能工程师计算机视觉考核试卷及答案_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2025年人工智能工程师计算机视觉考核试卷及答案一、单项选择题(每题2分,共20分)1.在YOLOv8中,若输入图像尺寸为640×640,下采样倍数为32,则最终特征图的空间分辨率是A.10×10  B.20×20  C.40×40  D.80×80答案:B解析:640÷32=20,故特征图尺寸为20×20。2.使用FocalLoss训练目标检测模型时,若γ=2,某正样本的预测概率p=0.9,则其损失值约为A.0.001  B.0.01  C.0.1  D.1答案:B解析:FocalLoss=−(1−p)^γ·log(p)=−(0.1)^2·log(0.9)≈0.01。3.在VisionTransformer中,位置编码采用二维正弦余弦函数而非可学习参数的主要优点是A.减少显存占用  B.支持任意分辨率微调  C.提升收敛速度  D.增强非线性答案:B解析:正弦余弦编码具有外推性,可在不同分辨率间插值,无需重新训练。4.当使用DeepLabV3+时,若output_stride=16,则ASPP模块中3×3空洞卷积的dilationrate组合为A.6,12,18  B.12,24,36  C.6,12,18,24  D.1,6,12,18答案:A解析:output_stride=16时,标准ASPP采用6,12,18。5.在MMPose中,HRNetw32的“32”指A.网络深度  B.高分辨率分支宽度  C.最低分辨率分支宽度  D.参数量32M答案:B解析:HRNetw32表示高分辨率分支的宽度(通道数)为32。6.若将BatchNorm替换为GroupNorm,在训练batch_size=2的极端场景下,最可能观察到A.梯度爆炸  B.损失震荡  C.收敛变慢但稳定  D.显存占用下降答案:C解析:GroupNorm不依赖batch统计量,小batch下更稳定,但收敛速度略慢。7.在TensorRT8.6中,若某INT8量化层出现精度骤降,优先检查的校准算法是A.Entropy  B.Legacy  C.MinMax  D.Percentile答案:A解析:Entropy校准对长尾分布敏感,常导致精度下降,可尝试Percentile。8.使用RandAugment时,若M=10,N=2,则单张图像最大可能叠加的变换次数为A.2  B.10  C.20  D.100答案:A解析:N=2表示随机选2种变换,每种只应用一次。9.在CenterNet中,若heatmap峰值响应被NMS抑制,最可能原因是A.峰值小于阈值  B.高斯核σ过大  C.峰值间距小于3像素  D.学习率过高答案:C解析:CenterNetNMS采用3×3最大池化,间距小于3像素会被合并。10.将PyTorch模型导出ONNX后,若出现“Resize11”算子不支持,最简修复方案是A.降级opset=9  B.替换为adaptive_pool  C.固定输入尺寸  D.使用torch1.12答案:A解析:Resize11在opset=11引入,降级到opset=9可避开。二、多项选择题(每题3分,共15分)11.下列哪些操作会降低ViT的推理延迟(多选)A.将GELU替换为ReLU  B.使用LinearGQA  C.减少patchsize  D.采用Winograd卷积答案:A、B解析:GELU计算量大,ReLU更快;GQA减少KV头数,降低访存。patchsize减小反而增加序列长度;Winograd仅适用于CNN。12.关于Mask2Former,下列说法正确的是(多选)A.支持实例、语义、全景三分支统一  B.使用learnablequery  C.训练时maskloss权重高于分类损失  D.解码器采用crossattention答案:A、B、D解析:maskloss权重通常0.5,低于分类1.0,C错误。13.在FP16混合精度训练时,下列哪些情况需手动放大梯度(多选)A.使用AdamW+clip_grad_norm  B.出现梯度下溢  C.损失缩放因子>8192  D.模型含LayerNorm答案:B、C解析:梯度下溢需lossscaling;缩放因子过大也需手动干预。14.下列哪些数据增强策略对小目标检测有效(多选)A.Mosaic  B.CopyPaste  C.RandomCrop  D.MixUp答案:A、B、C解析:Mosaic与CopyPaste增加小目标正样本;RandomCrop可裁剪出小目标。MixUp对定位精度不利。15.在部署阶段,下列哪些技术可缓解模型漂移(多选)A.TestTimeAugmentation  B.ExponentialMovingAverage  C.OnlineHardExampleMining  D.DomainspecificBN答案:A、D解析:TTA提升鲁棒性;DomainBN缓解域漂移。EMA与OHEM属训练阶段。三、填空题(每空2分,共20分)16.在SwinTransformer中,连续两个ShiftedWindow之间的偏移量为________像素。答案:⌊M/2⌋,其中M=7,故填3。17.若RetinaNet的anchor面积设置为32²到512²,共5级,则面积增长因子为________。答案:2。解析:512÷32=16,16^(1/4)=2。18.使用TensorRT的INT8校准,若校准集图片不足,导致KL散度大于________bit,则判定校准失败。答案:0.1。解析:官方建议KL<0.1bit。19.在OpenCV中,cv2.remap的插值方式INTER_LINEAR对应的枚举值为________。答案:1。20.当使用PyTorch的torchvision.ops.nms,若IoU阈值设为0.6,则重叠度大于0.6的框会被________。答案:抑制(或丢弃)。21.在MMDetection配置中,optimizer_config的grad_clip字段若设置dict(max_norm=35,norm_type=2),表示采用________范数裁剪。答案:L2。22.若EfficientNetB0的compoundcoefficientφ=1,则深度倍率为________。答案:1.2^φ=1.2。23.在DINO中,teacher模型的EMA更新系数默认随训练进程从________线性升至1。答案:0.996。24.使用ONNXRuntimeGPU推理时,若provider选“CUDAExecutionProvider”,需先调用________接口绑定显存。答案:IOBinding。25.在Cityscapes数据集上,DeepLabV3+×ception模型输出stride=16,需将预测上采样________倍至原图。答案:16。四、判断题(每题1分,共10分)26.DeiT引入distillationtoken后,分类头仅对clstoken做softmax。答案:错。解析:DeiT对clstoken与distillationtoken分别预测,再融合。27.在YOLOv5中,SPPF模块相比SPP,在相同感受野下计算量更低。答案:对。解析:SPPF用串行MaxPool,减少重复卷积。28.使用Albumentations时,DualTransform可同时处理图像与mask,但无法处理bboxes。答案:错。解析:DualTransform支持mask,BboxTransform支持bboxes。29.在MMRotate中,旋转框的表示方式默认是“xywhθ”,θ∈[−90°,0°)。答案:对。30.当使用PyTorch的DataLoader,num_workers>0时,多进程启动方式在Windows默认为spawn。答案:对。31.在VisionTransformer中,patchembedding的卷积核大小必须等于patchsize。答案:错。可用stride=patchsize,核可更大。32.若将ReLU替换为SiLU,模型MACs不变,但激活显存占用增加。答案:错。SiLU需保存输入用于反向,显存略增,但MACs相同。33.在CenterNet2中,采用DIoU损失替代L1损失,可直接提升AP0.5。答案:错。DIoU主要提升AP0.75与AR。34.使用TorchScript导出模型时,tracing无法处理控制流,scripting可以。答案:对。35.在MMDeploy中,若后端为ncnn,则必须将模型转换为ONNX中间格式。答案:错。ncnn可直接转换PyTorch→param/bin。五、简答题(每题8分,共24分)36.描述DeformableDETR中multiscaledeformableattention的计算流程,并说明其复杂度相对原始DETR的改进。答案:1.对多尺度特征图{F_l},每个查询q采样K个偏移点,偏移量由线性层预测并归一化到[0,1]。2.采用双线性插值获取采样点特征,并通过attention权重加权求和。3.复杂度从O(HW·N_q)降至O(K·N_q),K≈4,与特征图尺寸无关,显存下降约80%,训练速度提升5×。37.给出在JetsonOrinNano上部署YOLOv8s的完整优化链路,含量化、图优化、内存池配置,并说明各环节收益。答案:1.训练后量化:使用NVIDIA的PTQwithpercentile=99.99%,INT8精度下降0.3mAP。2.TensorRT8.6:启用DLAcore0加载FP16backbone,GPU加载INT8head,延迟从42ms降至19ms。3.图优化:fuseconv+bn+relu,生成engine时开启preview=fp16+int8,减少kernellaunch35%。4.内存池:创建IGpuAllocator,预分配1GB固定显存,避免malloc碎片,端到端吞吐提升22FPS→31FPS。38.解释为何在自监督学习MAE中,maskratio高达75%仍有效,并给出两种可能的失效场景及对应缓解策略。答案:1.有效性:ViT的冗余性高,patch间相关性大,75%mask仍保留全局结构;decoder仅处理可见patch,计算量小,易优化。2.失效场景:a.细粒度分类(CUB200),mask过高丢失关键局部。策略:maskratio随训练逐步从30%升至75%。b.小目标检测,mask后目标完全不可见。策略:采用blockwisemask,确保目标至少保留一个完整patch。六、编程题(共41分)39.(13分)阅读下列YOLOv8s部分配置文件,补全缺失的anchor设置,并写出计算anchor与gt框匹配过程的Python伪代码(不含NMS)。配置片段:```yamlanchors:[10,13,16,30,33,23]P3/8[30,61,62,45,59,119]P4/16[___]P5/32```答案:缺失行:[116,90,156,198,373,326]伪代码:```pythondefassign_anchor(anchors,gts,thr=4.0):anchors:list[Tensor(K,2)],gts:Tensor(N,4)fori,ancinenumerate(anchors):wh_anc=anc.view(1,2)K,2wh_gt=gts[:,2:4].unsqueeze(1)N,1,2ratio=torch.max(wh_gt/wh_anc,wh_anc/wh_gt).max(1)[0]N,Kmatch=ratio<thrN,Kboolidx=torch.nonzero(match,as_tuple=False)[M,2]returnidx返回(N,K)匹配索引```40.(14分)给定一个自定义算子“DeformPSROIAlign”,输入特征图[N,C,H,W]、rois[N,5]、offset[N,2,K,H,W],输出池化后特征[N,C,K,7,7]。请写出CUDAkernel的launch配置、线程索引映射,并计算共享内存需求。答案:launch配置:```cppdim3block(7,7,8);//7x7spatial,8channelsperblockdim3grid(NK,(C+7)/8);```线程索引:```cppintn=blockIdx.x/K;intk=blockIdx.x%K;intc0=blockIdx.y8;intph=threadIdx.x,pw=threadIdx.y;inttc=threadIdx.z;intc=c0+tc;```共享内存:每个线程块需缓存9×9输入区域(双线性插值),float大小=9×9×8×4B≈2.6KB,小于48KB上限。41.(14分)基于MMDetection框架,实现一个自定义数据增强“RandomPerspectiveRotate”,要求:1.同时处理img、bboxes、masks;2.旋转角度θ~U(−15°,15°),透视系数p~U(0.8,1.2);3.输出保持原图尺寸,空白区域用灰色填充。给出完整类代码与注册方式。答案:```pythonfrommmdet.datasets.transformsimportRandomAffineimportcv2importnumpyasnpfrommmcv.transformsimportBaseTransform,TRANSFORMS@TRANSFORMS.register_module()classRandomPerspectiveRotate(BaseTransform):def__init__(self,rotate_range=15,perspect_range=0.2,pad_val=114):self.rotate_range=rotate_rangeself.perspect_range=perspect_rangeself.pad_val=pad_valdeftransform(self,results):h,w=results['img_shape'][:2]angle=np.random.uniform(self.rotate_range,self.rotate_range)p=np.random.uniform(1self.perspect_range,1+self.perspect_range)透视矩阵pts1=np.float32([[0,0],[w,0],[w,h],[0,h]])pts2=pts1p+np.random.uniform(10,10,pts1.shape)M=cv2.getPerspectiveTransform(pts1,pts2)旋转中心center=(w//2,h//2)MR=cv2.getRotationMatrix2D(center,angle,1)MR=np.vstack([MR,[0,0,1]])组合M=M@MRwarpimg=cv2.warpPerspective(results['img'],M,(w,h),borderValue=(self.pad_val,)3)results['img']=imgwarpbboxesif'gt_bboxes'inresults:bboxes=results['gt_bboxes'].tensor.numpy()pts=self.bboxes2corners(bboxes)pts=cv2.perspectiveTransform(pts,M)bboxes=self.corners2bboxes(pts)results['gt_bboxes'].tensor=torch.from_numpy(bboxes)warpmasksif'gt_masks'inresults:masks=result

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论