推荐收藏!这是我见过计算机视觉图像算法最全面经了

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、参加社招和校招面试的同学,针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。

今天我整理一位CV算法岗同学的面试题,分享给大家,希望对后续找工作的有所帮助。喜欢记得点赞、收藏、关注。更多技术交流&面经学习,可以文末加入我们交流群。

写在前面

今年CV方向算法工程师非常难找,投递CV算法的毕业生越来越多,各个CV岗位(包括研究岗与业务线上的算法工程师岗)对于求职人员的要求也越来越高。

本文以自己春招实习以及秋招的经历为基础,整理秋招求职的视觉图像算法中的经常会遇到的一些面试问题。主要整理一些常问的基础知识以及算法知识。由于每个人自己的项目不同,岗位的不同问题也会有一些不同,这些基础问题应该是都有所理解的,这些基础知识作为查漏补缺来看吧。

在此,特别感谢社群中的大佬的慷慨分享,让我收获颇多,感谢

机器学习

  1. 梯度下降法与牛顿法

  2. 感知机的计算公式

  3. K近邻中kd树的思路

  4. 朴素贝叶斯的推导以及假设条件

  5. ID3,C4.5,CART决策树的计算流程

  6. Logistic回归的极大似然推导

  7. SVM的推导,KKT条件,原问题与对偶问题的联系

  8. Adaboost,梯度提升决策树,GBDT,XGboost

  9. L1正则化为什么能够获得稀疏解

深度学习

  1. RCNN系列算法的演进过程,重点详细介绍Faster RCNN算法

  2. YOLO系列算法(v1-v4)的演进以及每个算法的特点

  3. YOLOv3的主要改进

  4. YOLOv4的主要改进

  5. SSD系列算法(SSD,DSSD等算法)

  6. two-stage算法主要慢在哪儿

  7. ROIpooling,RoiAlign的计算

  8. RetinaNet解决什么问题

  9. Focal Loss的计算

  10. Batch Normalization的作用

  11. BN的计算公式

  12. BN中偏移因子与缩放因子的作用

  13. 训练和测试时BN的不同点

  14. 多卡的BN如何实现同步(一次同步与两次同步)

  15. Normalization的几种形式的计算(BN,Layer Normalization,Instance Normalization,Group Normalization)

  16. DNN的反向传播推导

  17. CNN的反向传播

  18. 池化层的反向传播

  19. img2col的计算

  20. ResNet到底解决了什么问题

  21. 感受野计算

  22. 普通卷积,Group卷积,深度可分离卷积的计算量与参数量

  23. IOU计算(代码)

  24. NMS(代码)

  25. soft-NMS(代码)

  26. MobileNet与shuffleNet特点

  27. MobileNetv1与v2的改进

  28. K-means聚类anchor的思路以及代码

  29. anchor-free的算法都知道哪些

  30. DETR算法介绍一下

  31. FPN为何能够提升小目标的精度

  32. Softmax与sigmoid计算公式

  33. softmax交叉熵损失的梯度

  34. 分类为何采用交叉熵损失而不是均方差损失

  35. TP、TF、FP、FN的计算

  36. precision、recall、F1score、accuracy的计算

  37. ROC、AUC、MAP的计算

  38. 各种回归损失的计算以及优缺点(L1loss,L2loss,smooth L1loss,IOU Loss, GIOULoss,DIOUloss,CIOULoss)

  39. 带有warmup的cosine学习率计算

  40. 说说了解到的几种分割算法

  41. Transformer的原理以及VIT的了解

  42. 各种优化器的计算公式(GD,SGD,batch GD,SGD+momentum,NAG,AdaGrad,RMSProp,Adam)

  43. CNN的平移不变性的理解

  44. Dropout具体是怎么做的,训练和测试时有什么不一样

  45. 神经网络的深度和宽度理解

  46. SIFT与HOG

  47. Transformer相比较CNN的优缺点

  48. 雅可比矩阵与海塞阵(一阶导与二阶导)

  49. 深度可分离卷积的优缺点,Mobilenet是否一定快

  50. Faster RCNN回归的公式。

  51. 权重初始化的方案(Xavier,kaiming_normal)

  52. 数据增广的常用方案

  53. 数据类别不均衡的解决方案

  54. 半监督算法

  55. 自监督算法

  56. 自监督中的崩溃解问题的理解

  57. Triplet Loss

图像处理

  1. 各种图像边缘检测算子(sober算子,Robert算子,Prewitt算子,Laplace算子,canny算子)

  2. 低通高通滤波器

  3. 降噪

  4. 形态学处理(腐蚀以及膨胀)

  5. 图像量化

linux常用命令

  1. 查找文件命令(whereis,which,find,grep,locate)

  2. 查看进程

  3. 杀死进程

  4. ssh,scp

  5. nohup &

  6. 文件权限

c++基础

  1. c++编译过程

  2. 静态链接库与动态链接区别

  3. cmakelist文件

python基础

  1. python多线程,多进程

  2. python的GIL

  3. 生成器与迭代器

  4. 装饰器

  5. 深浅拷贝

技术交流

前沿技术资讯、算法交流、求职内推、算法竞赛、面试交流(校招、社招、实习)等、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企开发者互动交流~

我们建了算法岗面试与技术交流群, 想要进交流群、需要源码&资料、提升技术的同学,可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

方式①、微信搜索公众号:机器学习社区,后台回复:技术交流
方式②、添加微信号:mlc2060,备注:技术交流+CSDN

用通俗易懂的方式讲解系列

  • 用通俗易懂的方式讲解:不用再找了,这是大模型最全的面试题库
  • 用通俗易懂的方式讲解:这是我见过的最适合大模型小白的 PyTorch 中文课程
  • 用通俗易懂的方式讲解:一文讲透最热的大模型开发框架 LangChain
  • 用通俗易懂的方式讲解:基于 LangChain + ChatGLM搭建知识本地库
  • 用通俗易懂的方式讲解:基于大模型的知识问答系统全面总结
  • 用通俗易懂的方式讲解:ChatGLM3 基础模型多轮对话微调
  • 用通俗易懂的方式讲解:最火的大模型训练框架 DeepSpeed 详解来了
  • 用通俗易懂的方式讲解:这应该是最全的大模型训练与微调关键技术梳理
  • 用通俗易懂的方式讲解:Stable Diffusion 微调及推理优化实践指南
  • 用通俗易懂的方式讲解:大模型训练过程概述
  • 用通俗易懂的方式讲解:专补大模型短板的RAG
  • 用通俗易懂的方式讲解:大模型LLM Agent在 Text2SQL 应用上的实践
  • 用通俗易懂的方式讲解:大模型 LLM RAG在 Text2SQL 上的应用实践
  • 用通俗易懂的方式讲解:大模型微调方法总结
  • 用通俗易懂的方式讲解:涨知识了,这篇大模型 LangChain 框架与使用示例太棒了
  • 用通俗易懂的方式讲解:掌握大模型这些优化技术,优雅地进行大模型的训练和推理!
  • 用通俗易懂的方式讲解:九大最热门的开源大模型 Agent 框架来了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/722240.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C 判断

判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。 C 语言把任何非零和非空的值假定为 true,把零或 null 假定为 false。 下面…

UOS 20 安装redis 7.0.11 安装redis 7.0.11时 make命令 报错 /bin/sh: cc: command not found

UOS 20 安装redis 7.0.11 1、下载redis 7.0.112、安装redis 7.0.113、启动停止redis 7.0.114、安装过程问题记录 UOS 20 安装redis 7.0.11 安装redis 7.0.11时 make命令 报错 /bin/sh: cc: command not found、zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such fil…

代码随想录训练营第37天 | LeetCode 738.单调递增的数字、LeetCode 968.监控二叉树、

目录 LeetCode 738.单调递增的数字 文章讲解:代码随想录(programmercarl.com) 视频讲解:贪心算法,思路不难想,但代码不好写!LeetCode:738.单调自增的数字_哔哩哔哩_bilibili 思路 ​​​​​​LeetCode 968.监控二…

代码随想录算法训练营第十四天| 144. 二叉树的前序遍历 ,145. 二叉树的后序遍历,94. 二叉树的中序遍历

两种写法,递归和非递归写法 递归: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : va…

基于协同过滤的旅游推荐系统设计与实现

基于协同过滤的旅游推荐系统设计与实现 在当今旅游业蓬勃发展的背景下,人们对于旅游体验的需求日益增加,如何为用户提供更加个性化、精准的旅游推荐成为了旅游行业的一个重要课题。为解决这一问题,我们设计并实现了一个基于协同过滤的旅游推…

【设计模式 03】抽象工厂模式

一个具体的工厂,可以专门生产单一某一种东西,比如说只生产手机。但是一个品牌的手机有高端机、中端机之分,这些具体的属于某一档次的产品都需要单独建立一个工厂类,但是它们之间又彼此关联,因为都共同属于一个品牌。我…

android开发网络通信,带你彻底搞懂Android启动速度优化

实现方案 直接依赖 这种方式实现简单,但是耦合太严重,不方便维护与开发,当工程逐渐增大模块逐渐增多,依赖关系会非常复杂,不推荐这种方式。 事件或广播通信 EventBus: 我们非常熟悉的事件总线型的通信框…

Rust学习笔记:深度解析内存管理(二)

在这个信息爆炸的时代,学习一门新的编程语言不仅仅是为了找到一份好工作,更是为了打开思维的新窗口。Rust,作为一门注重安全、速度和并发的系统编程语言,正吸引着越来越多的年轻开发者的目光。今天,我们将一起深入探讨…

angular17+ionic7集成开发

1、需求背景 因部门要求使用angular作为基础的前端框架,也因为近期需要搭建一套新的移动端H5,故此有采用angular17ionic7集成搭建项目。 2、搭建步骤 环境安装 本地开发环境需要需要安装以下版本: node 20.9.0 angular-cli 17.2.2 ionic-…

老卫带你学---K8S源码剖析(Capabilities)

K8S源码剖析(Capabilities) 我们可以在pod、container中通过设置securityContext来限制container对宿节点的权限 但是有的时候我们需要给予container部分系统特权,那就需要额外配置capability,比如这样: containers…

【语言学习】C++algorithm库的命名空间问题

阅读这篇文章时,发现一个很有趣的点,原来使用copy和back_inserter时不需要使用std::。 查了一圈资料,没找到合理的解释,问了一下GPT: algorithm中的函数不需要显式地使用std命名空间是因为这些函数通常在标准库头文件中…

数据结构与算法:堆排序和TOP-K问题

朋友们大家好,本节内容来到堆的应用:堆排序和topk问题 堆排序 1.堆排序的实现1.1排序 2.TOP-K问题3.向上调整建堆与向下调整建堆3.1对比两种方法的时间复杂度 我们在c语言中已经见到过几种排序,冒泡排序,快速排序(qsor…

QJsonValue的学习

类型判断&#xff1a; QJsonValue v("1");QJsonValue v1(1);qDebug()<<v.isString();//trueqDebug()<<v.isBool();//falseqDebug()<<v.isDouble();//falseqDebug()<<v1.isString();//falseqDebug()<<v1.isBool();//falseqDebug()<…

微信小程序云开发教程——墨刀原型工具入门(安装以及基础使用教程)

引言 作为一个小白&#xff0c;小北要怎么在短时间内快速学会微信小程序原型设计&#xff1f; “时间紧&#xff0c;任务重”&#xff0c;这意味着学习时必须把握微信小程序原型设计中的重点、难点&#xff0c;而非面面俱到。 要在短时间内理解、掌握一个工具的使用&#xf…

嵌入式学习32-函数传参复习及进程的消息队列

1.函数: 1.函数的定义 2.函数的调用 3.函数的声明 2.函数传参: 1.赋值传递&#xff08;复制传递&#xff09; 函数体内部想要使用函数体外部变量值的时候使用复制传递 2.全局变量传递 3.地址传递 函数体内部想要修改函数体外部变量值的时候使…

代码随想录刷题day14|二叉树的理论基础二叉树的前中后序递归遍历

文章目录 day14学习内容一、二叉树的理论基础1.1、完全二叉树 二、二叉树的递归遍历2.1、递归三部曲2.2、前序递归遍历2.3、中序递归遍历2.4、后序递归遍历 总结1.感想2.思维导图 day14学习内容 day14主要内容 二叉树的理论基础二叉树的遍历 声明 本文思路和文字&#xff0c;引…

了解MVCC的实现吗 ?(隐式字段,ReadView,undo log)

MVCC即多版本并发控制&#xff0c;它的实现原理主要依赖于记录中的隐藏字段、undo log&#xff08;回滚日志&#xff09;以及Read View&#xff08;读视图&#xff09;。 MVCC是数据库管理系统中用于处理并发操作的一项技术&#xff0c;它允许多个事务对同一数据进行读写操作而…

稀碎从零算法笔记Day4-LeetCode:交替合并字符串

前言&#xff1a;今天妹有深夜档&#xff0c;因为8点有个飞机 题型&#xff1a;字符串、双指针&#xff08;笔者没用这个思路&#xff09; 链接&#xff1a;1768. 交替合并字符串 - 力扣&#xff08;LeetCode&#xff09; 来源&#xff1a;LeetCode 著作权归作者所有。商业转…

java计算日期相差天数的4种方法

方法1&#xff1a;long值相减&#xff08;推荐&#xff09; public static void main(String[] args) {DateFormat dateFormat new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");try {Date startDate dateFormat.parse("2024-03-01 10:00:00");//开始时间D…

基础算法(二)#蓝桥杯

文章目录 8、双指针8.1、挑选子串8.2、聪明的小羊肖恩8.3、神奇的数组 9、二分9.1、跳石头9.2、可凑成的最大花朵数9.3、最大通过数9.4、妮妮的月饼广场9.5、基德的神秘冒险9.6、体育健将 10、倍增10.1、快速幂10.2、最近公共祖先LCA查询10.3、理想之城10.4、数的变换 8、双指针…