点击上方“视学算法”,选择加"星标"或“置顶”python
重磅干货,第一时间送达linux
做者:雲水謡c++
来源:https://www.nowcoder.com/discuss/262804?source_id=profile_create&channel=1001面试
本文已受权转载,如需转载请联系原做者算法
内推码:NYUE2YKshell
投递连接:https://job.toutiao.com/s/JRYe4Nf 编程
我的背景:
windows
图像拼接、图像特征匹配(instance-level matching and semantic-level matching)数组
传统图像处理 + 深度学习网络
一面:
大约40分钟吧,主要聊项目,问的问题很少。
1. 针对项目问了一些问题,问的比较浅
2. SIFT特征提取怎么作的,具有什么性质,为何
3. 高斯滤波,均值滤波,中值滤波
4.手写中值滤波
二面玄学:
差很少10-15分钟左右吧,直接开问,主要就简历上的东西快速问一下,基本没涉及具体技术的东西
三面HR:
20分钟左右吧。我的状况、家庭状况、待遇预期、遇到的困难、职业规划等等吧。。。
一面:
1. 图像降噪算法
2.图像加强算法
3.边缘检测算子:Robert prewit sobel 拉普拉斯 canddy
4.手写马赛克代码
5. 手写高斯滤波以及优化
6. c++多态:重载和虚函数
7. 虚函数表、虚函数表指针大小、虚函数表存储的位置
8. gcc编译过程
9.项目
10.手写洗牌算法:N张牌等几率出如今每一个位置
二面:
1. C++ 11新特性
2. const做用:const int func(const int& A) const
3. new/malloc区别
4. 虚继承
5.四种类型转换
6.智能指针
7.左值右值、move
8.手写双向链表随机插入新元素的类
9.机器学习:adam、SGD、RMSProp区别
10.1*1卷积的做用
11. 贝叶斯估计与最大似然估计的区别
三面:
1.手写均值滤波以及优化代码
2. ML/DL数据处理相关操做
3.项目
一面:
1-n内的个位为1的全部素数
手写快排,并计算数组内每一个元素在排序完成后的相对位置
手写二分查找
C++多态的原理
项目
二面:
C++动态联编
求二维0/1矩阵中边界都是1的最大正方形
shell编程:查找大批量文件,文件名输出重定向到log文件
SIFT的原理
BN的原理
过拟合的预防
项目
其余的记不清了
三面:
项目
四面:
vector、list、stack底层实现的原理、使用场景、特色对比
使用二个栈实现双端队列
回溯和分支定界法分别是DFS仍是BFS?DFS和BFS的使用场景,适用于解决什么样的问题
SIFT 的原理
图像处理问题大规模使用卷积的优点和原理
模型压缩
BN放置的位置
PCA和SVD的区别以及求解过程
开放场景题:如何估计二维静态图像中前景目标的姿态和朝向
根据相机针对同一场景拍摄的连续图像,如何估计相机的内外参
图像配准
比较零碎,其余的记不清了
现场笔试:
给定整数数组和大小为k的滑动窗口,求滑动过程当中全部滑动窗口内的最大值
给定一个整数数组,求数组全部元素可以拼接成的最小整数
一面:
模型压缩、量化的方法
项目中遇到过拟合的解决办法
项目中使用数据加强的方式
TensorRT
ONNX
训练数据类别样本不平衡的解决办法
awk的使用,还有个啥命令记不清了
shell编程:有一个存储有name id score 三个属性的文本文件,查找score 在0.7与0.8之间的全部样本的 id
介绍经常使用的激活函数以及特色,推导sigmoid的求导
使用过哪些经典的网络结构,介绍mobilenet V2 与 V1 的对比
聊项目
咨询了陌陌这边有没有作图像匹配相关业务的,而后一面面试官就把后面的技术面都安排了图像检索、视频检索、推荐相关的组
二面:
手写Resnet的跳转链接(pytorch),以类的形式封装好,后续别的网络模块可直接调用
进程和线程的区别
多CPU、多I/O场景下该选择多进程仍是多线程?
python下多线程和多进程的使用,我的在实际中如何选择和尝试的?
为何python下多线程不起做用?扯了python是面向解释,不是编译的语言,继续被追问根本缘由?继续扯了python里有一个全局解释器锁机制(好像叫这个)?继续被追问解释器锁如何加锁?
聊项目
谈谈图像匹配在图像检索、推荐中的应用
三面(HR):
1. 聊实习的收获、指望薪资待遇、介绍当前跟其余公司沟通的阶段
2. HR介绍公司状况、文化氛围、技术团队
3. 我的就业规划
ps:听别人hr面的时候,说整个cv团队秋招应该只收10我的,不知真假
四面:
传统的hand-crafted特征(SIFT、ORB等)与基于学习的ConvNet特征的对比以及使用场景
聊实验室项目、实习项目
图像实例匹配、语义匹配在图像检索、单目标视频检测、识别中的应用前景
吧。。。
电话一面:
介绍项目
resnet的网络结构以及为何这么设计
激活函数的优缺点
cnn,rnn,lstm的熟悉程度
各类优化器的优缺点(SGD,MOM*,RMSPROPS,ADAM)
逻辑回归和线性回归的区别
GBDT、XGBDT、SVM用过没
降维算法有哪些,PCA是具体怎么作的
视频一面:
重载和重写的区别
重写的原理(多态与虚函数的原理)
子类继承二个有虚函数的父类,那么子类有几个虚函数表
static关键字的做用
智能指针、shared_ptr底层如何实现
共享指针的循环引用、weak_ptr如何解决shared_ptr的循环引用
struct的内存占用计算规则
map与unordered_map的区别,底层实现原理
dfs和bfs的区别,具体如何实现
锁的原理、共享锁、自旋锁、读写锁,自旋锁的底层实现
缺页中断
socket编程
编程题:双向链表反转
编程题:双向链表分割为二段,左侧小于target,右侧大于target,且不改变原先元素之间的相对位置(即分割要求是稳定的)
一面:
项目介绍
介绍SIFT的原理和特性
SIFT计算梯度主方向,为何就能保证旋转不变性
图像间的几何变换模型有哪些?
一张有褶皱的纸,怎么变形至平坦?
resnet的特色
手撕代码:快排,分析快排的平均时间复杂度和最慢效率都是如何计算出来的
二面:
项目介绍
mobileNet v1 与 v2的特色以及区别,还被问到了解v3不
shuffleNet原理,怎么shuffle,v1与v2的区别
算法题:给定一个元素大小在[1,100]之间的整数数组,若是一个数是数组中任意三个元素的最小公倍数,那么这个数也是该数组的公倍数,
求数组全部公倍数中最小的那个,如{1,2,3,4,5,6},那么该数组的最小公倍数是4,由于{1,2,4}的最小公倍数最小
一面(1h,全程问内存管理):
操做系统的内存管理负责干啥
内存泄漏、野指针、悬空指针
如何提升内存管理的效率
***的机制
页表的机制、缺页中断、页面调度算法
为何要设计逻辑地址?逻辑地址的优点在哪?当前有大容量PC内存,逻辑地址为什么还要保留?
逻辑地址怎么转换为物理地址
多态和虚函数的原理
malloc申请地址时,操做系统是如何响应的,从内核到获取内存地址,中间发生了什么
内存空间一级、二级配置器
进程、线程、协程的区别
多进程 多线程 多协程的应用(python / c++下分别说明)以及python的GIL
python迭代器和生成器的底层原理,以及还有关键字 yield的底层原理
进程之间如何通讯?
对锁的理解,互斥锁的底层如何实现的,跟内存访问的底层如何创建关系(唉又回到了内存管理)
哈希表的做用、原理、解决冲突的办法
项目的难点在哪?怎么克服的?最有成就的收获是什么?
在线笔试成绩为何作的很差,编程题只得了4分,选择题也错很多?被吐槽回去好好练习一下,多写代码,不过仍是给了经过,膜拜orz。。。
二面(40 min):
Linux下进程和线程的区别
用过多进程、多线程没?C++的QTread 、Python的GIL?线程池的优点,为何效率高?
代码:快速排序,并逐行代码解释,针对测例完整推理一下所有的执行过程以及中间结果
项目简要介绍
对作算法和作研发的认识? 被吐槽想的太浅?
开启劝退模式,给我详细讲了算法和研发的发展前景以及业务侧重场景。。原本已经准备拿瓶水,拧包走人了,被告知二面经过。。。。大概就是他,又给我调去了滴滴网约车的路径规划算法组。。
三面(题目场景比较开放,40min):
图像特征提取、特征匹配用没用slam的开源库?跟slam的图像匹配算法有哪些不一样?
tensorflow和pytorch的使用体验对比,以及各自的优缺点
物联网的课程与计科有啥不一样?有大数据处理(数据挖掘)相关的课程没?
神经网络模型上线时还须要考虑那些因素?(回答了一些网络裁剪、压缩、量化、引擎等相关的)
本身作项目面向对象编程时,有哪些收获?踩过哪些坑?
项目介绍
代码:字符串编辑距离
介绍滴滴网约车的路径规划中:图像/视频语义理解、目标识别检测、异常检测等CV的应用,以及图像匹配算法在其中的应用
一面:
聊项目
介绍SIFT的原理和特性
对比传统图像的二维卷积和深度学习中的三维卷积,介绍后者在图像处理中的优点
手撕代码:给定“AABBCFFSS”相似的字符串,如何找到只出现一次的那个字符。(二分法最快)
谈谈对指针、引用的理解
指针引用和引用指针
有海量数据,须要排序,如何操做?
二面:
聊项目
手撕代码:也是二分的变形:区间检索
三面:
职业规划(致命题)
评价一下本身
实习收获
实习负责的业务
学校和公司的学习环境区别
指望待遇
一面:
项目
手推softmax的BP公式
白板代码:计算二值矩阵的连通域个数
一面:
1. 五年之内的职业规划
2. 介绍最有成就感的项目(图像、CV项目)
3. 分条归纳项目的难点,怎么尝试解决的
4. 解决过拟合的方法有哪些
5. dropout的随机失活因子以及怎么反向传播
6. 池化层如何反向传播
7. BN底层如何计算,手撕BN ,BN在训练、测试阶段的计算有什么区别
8. SVM的松弛因子做用
9. 树模型节点划分的依据,如何理解基尼系数的概念
10.并发和并行的区别
11.第一范式、第二范式
12.手撕2的N次方,如何解决N过大引发的溢出
二面:
1.聊项目(图像、CV项目),难点怎么解决的
2. ResNet为何可以保证很深的网络具有不错的效果?
3. 问一些一面聊过的DL、ML基础知识
4. GAN、LSTM、GRU、NLP相关的大概聊聊,文本、推荐相关的不咋懂,聊不下去
5. XGBoost、GBDT
6. 手撕如何使用rand7()生成rand10()
7. 我的的规划,是否是必定要作图像相关的?
8. 平时如何进行技术的学习、积累,用哪些途径?
9. 在实验室的出勤做息,天天除实验室工做外,我的进行自我技术学习、提高的有效时间可以保证多少?
搜狗-计算机视觉算法(sp)
一面(二位面试官):
1. 实现双端队列
2. 求二值矩阵中,4或者8连通域的个数
3. 全程聊项目
二面(大leader):
聊项目
三面HR:
1.介绍本身的技术背景,详细介绍,,跟当前面试的的搜狗组内业务有什么匹配的地方
2.为何想来搜狗面试?
3.有哪些offer
4.选择offer的时候会如何考虑
5.如何评价本身,如何看待本身跟别人的差距
三面:
项目
为何用CNN不用DNN提特征?L一、L2正则化,L1为何会产生稀疏解?
实习有哪些收获?
HR:
人生理想、职业规划、其余意向书、我的选择意愿等等
一面:
项目介绍
SIFT的原理(尺度不变性、旋转不变性),如何下采样,下采样因子多少,为何要求解DOG,为何要使用三线插值函数,128维度描述子怎么来的,
梯度直方图怎么算的,梯度怎么算的,梯度方向怎么算的,邻域范围选的多大等等
除了SIFT,还知道哪些特征,除了SIFT、SURF、ASIFT、ORB、HOG还有啥
特征降维有哪些方式?下采样,NMS,1*1,pca,LDA?
ransac算法怎么实现的?最少须要几个点才能肯定一个几何变换模型?
3*3的几何变换矩阵,每一个参数表明啥意思?
距离度量方式有哪些
LBP特征如何计算类似性(汉明距离),汉明距离怎么计算
数据加强有哪些方式,具体的图像处理操做又有哪些?
学习率设置过大,可能会产生哪些缺陷
dropout的原理,相似于传统处理算法中的什么操做(开放问题,无标准答案)
列出知道的激活函数,写出来函数表达式,画出函数走势图和取值范围
不一样的激活函数在什么状况下使用,是如何考虑的
LSTM常使用sigmoid,tanh, 而CNN常使用relu是否是有什么理论支撑?
给定一个问题,最早想到的是会使用什么损失函数?
二面:
介绍项目
英文介绍项目
怎么看待外企?来外企的意愿和去国内互联网企业的意愿比重?
除了图像算法,有木有从事软开的意愿?
三面:
介绍项目
论文状况
多线程怎么用的,涉不涉及线程之间的同步
相机的3A参数
四面:
struct和class的区别
struct中能不能声明函数,能不能定义private成员变量?
new和malloc的区别,new的底层怎么作的
虚函数的原理
内存泄漏含义,如何检测
C++11的四种类型转换以及怎么使用
堆和栈的区别
深拷贝和浅拷贝的区别
开发环境,linux,windows?
linux下我的使用的的python开发工具是啥?用IDE没?
好比输入一个一维数组[1,2,3,4,5,6,7,8,9,10,11,12]以及w=4,h=3,能够reshape成左图的格式,而后按照从下到上,从右向左的顺序遍历数组,输出一为数组[12,8,4,11,7,3,10,6,2,9,5,1]。
在线judge系统跑起来.
void print(int* buf, int w, int h)
1 2 3 4
5 6 7 8
9 10 11 12
五面:
项目介绍
基于CNN提特征有哪些难点,须要考虑哪些地方,与SIFT相比,优缺点有哪些
优化器有哪些,各自的优缺点是啥,Adam底层如何设计的
C语言中的malloc返回的地址是啥(虚拟地址、逻辑地址、物理地址哪个)?何时完成地址映射的?使用上述对象的时候,操做系统是如何响应的?产生了中断仍是异常?缺页中断仍是缺页异常?中断和异常的区别?
多进程之间的通讯方式、多线程之间的同步方式
算法题:断定一个图是否是二分图?
六面:
英文自我介绍
打算留北京不?怎么看待户口?
基于CNN的特征提取、匹配算法与SIFT等相比,有哪些优点?获取的匹配结果是否是更好?
除了上层图像应用算法的研究,工做内容还涉及底层优化、加速、硬件封装,接不接受全栈?如何看待全栈?
我的在研究生阶段作图像、视觉以来的我的成长和收获
有木有学生社团经历?
工做内容涉及跟国外其余部门的协商,我的能不能胜任团队合做、跨国协调?
你点的每一个“在看”,我都认真当成了喜欢