以下不作为机器学习/算法工程师的学习路径,只是汇总的校招机器学习/算法工程师面试考点(因为还有笔试考点,后面结合在一起给大家学习路径),后续会为大家更新10w+字数的机器学习/算法工程师校招面试题库,还有其他岗位的相关题库和资料,想要什么岗位的可以留言哦~
本篇根据各个公司的面试问的问题的大数据进行总结,后面还会更新面试中考察所占比例,当然,本文只包括技术面,不太包括hr面或者一些其他谈人生理想的
附题目
一、数学基础:
1、微积分
1、SGD,Momentum,Adagard,Adam原理
2、L1不可导的时候该怎么办
3、sigmoid函数特性
2、统计学,概率论
- a,b~U[0,1],互相独立,求Max(a,b)期望
2、一个活动,n个女生手里拿着长短不一的玫瑰花,无序的排成一排,一个男生从头走到尾,试图拿更长的玫瑰花,一旦拿了一朵就不能再拿其他的,错过了就不能回头,问最好的策略?
3、问题:某大公司有这么一个规定:只要有一个员工过生日,当天所有员工全部放假一天。但在其余时候,所有员工都没有假期,必须正常上班。这个公司需要雇用多少员工,才能让公司一年内所有员工的总工作时间期望值最大?
4、切比雪夫不等式
5、一根绳子,随机截成3段,可以组成一个三角形的概率有多大
6、最大似然估计和最大后验概率的区别?
7、什么是共轭先验分布
8、概率和似然的区别
9.频率学派和贝叶斯学派的区别
10、0~1均匀分布的随机器如何变化成均值为0,方差为1的随机器
11、Lasso的损失函数
12、Sfit特征提取和匹配的具体步骤
3、线性代数
1、求mk矩阵A和nk矩阵的欧几里得距离?
2、PCA中第一主成分是第一的原因?
3、欧拉公式
4、矩阵正定性的判断,Hessian矩阵正定性在梯度下降中的应用
5、概率题:抽蓝球红球,蓝结束红放回继续,平均结束游戏抽取次数
6、讲一下PCA
7、拟牛顿法的原理
8、编辑距离
1、处理分类问题常用算法
1、交叉熵公式
2、LR公式
3 LR的推导,损失函数
4、逻辑回归怎么实现多分类
5 、SVM中什么时候用线性核什么时候用高斯核?
6、什么是支持向量机,SVM与LR的区别?
7.监督学习和无监督学习的区别
8.机器学习中的距离计算方法?
9、问题:朴素贝叶斯(naive Bayes)法的要求是?
10、问题:训练集中类别不均衡,哪个参数最不准确?
11、问题:你用的模型,最有挑战性的项目
12、问题:SVM的作用,基本实现原理;
13、问题:SVM的硬间隔,软间隔表达式;
14、问题:SVM使用对偶计算的目的是什么,如何推出来的,手写推导;
15、问题:SVM的物理意义是什么;
16、问题:如果给你一些数据集,你会如何分类(我是分情况答的,从数据的大小,特征,是否有缺失,分情况分别答的);
17、问题: 如果数据有问题,怎么处理;
18、分层抽样的适用范围
19、LR的损失函数
20、LR和线性回归的区别
21 生成模型和判别模型基本形式,有哪些?
22 核函数的种类和应用场景。
23 分类算法列一下有多少种?应用场景。
24、给你一个检测的项目,检测罐装的可口可乐,瓶装的可口可乐作为负样本,怎么弄?
核函数的选择
的损失函数
27.核函数的作用
为什么使用对偶函数求解
和CART三种决策树的区别
和全部数据有关还是和局部数据有关?
31为什么高斯核能够拟合无穷维度
32、第二面完整推导了svm一遍,还有强化学习问的很多,dqn的各种trick了解多少,怎么实现知不知道。
33、SVM所有核函数的了解应用,SVM的损失函数
34、LR和SVM 区别
35、朴素贝叶斯基本原理和预测过程
36、LR推导
37、交叉熵,还有个什么熵不记得了。。。
38、LR公式
39、交叉熵公式
2、处理回归问题常用算法
和L2正则化的区别
2、问题:Loss Function有哪些,怎么用?
3、问题:线性回归的表达式,损失函数;
4、线性回归的损失函数
3、处理聚类问题常用算法
1、什么是DBSCAN
2.k-means算法流程
3、LDA的原理
5、KMeans讲讲,KMeans有什么缺点,K怎么确定
6、Kmeans
4、推荐系统的常用算法
1、 问推荐算法,fm,lr,embedding
2、协同过滤的itemCF,userCF区别适用场景
3、 推荐系统的大概步骤,解决冷启动。。。
5、用mapreduce实现10亿级以上数据的kmeans
6、Kmeans
7、A/B test如何进行流量分流
8、协同过滤中的算法怎么细分
9、FM公式
10、FM公式
5、模型融合和提升的算法
1 bagging和boosting的区别
2、boosting和 bagging区别
3 XGBOOST和GDBT的区别
的原理,以及常用的调参参数
6、AdaBoost和GBDT的区别,AdaBoost和GBDT的区别
7 gbdt推导
8、boosting和bagging在不同情况下的选用
9、gbdt推导和适用场景
11、rf和gbdt基分类器区别,里面的决策树分别长啥样,怎么剪枝
12、随机森林和 GBDT 的区别
13、xgboost的特征重要性计算
14 xgboost的正则项表达式
15 xgboost原理,怎么防过拟合
16、xgboost,rf,lr优缺点场景。。。
17、xgboost特征并行化怎么做的
18、 xgboost和lightgbm的区别和适用场景
6、其他重要算法
1、问题:HMM隐马尔可夫模型的参数估计方法是?
2、问题:Bootstrap方法是什么?
3、问题:如何防止过拟合?
4、 EM算法推导,jensen不等式确定的下界
1、Scikit-learn
1、Focal Loss 介绍一下
2 过拟合的解决方法
3 方差偏差的分解公式
4、问题:对应时间序列的数据集如何进行交叉验证?
5、问题:正负样本不平衡的解决办法?评价指标的参考价值?
6、迁移学习
7、数据不平衡怎么办?
8、AUC的理解
9、AUC的计算公式
10、生成模型和判别模型的区别
11、过拟合的解决方法
12、特征选择怎么做
13、怎么防止过拟合
14、L1和L2正则
15、ID3树用什么指标选择特征
16、特征工程的问题
17、给了个链接线上写代码,要求写读文本、文本预处理、特征提取和建模的基本过程,不过写到特征就没写了
18、softmax公式
19、softmax公式
2、Libsvm
1、 检测20类物体,多少张训练集,怎么训练
2、 lightgbm优势
3、Keras/tensorflow
1、MXNet和Tensorflow的区别
2、Tensorflow的工作原理
中interactivesession和session的区别
四、深度学习
1 BatchNormalization的作用
2、梯度消失
3、循环神经网络,为什么好?
4 什么是GroupConvolution
5.什么是RNN
6.训练过程中,若一个模型不收敛,那么是否说明这个模型无效?导致模型不收敛的原因有哪些?
7.图像处理中锐化和平滑的操作
使用3*3卷积核的优势是什么?
比Sigmoid的效果好在哪里?
10、问题:神经网络中权重共享的是?
11、问题:神经网络激活函数?
12、问题:在深度学习中,通常会finetuning已有的成熟模型,再基于新数据,修改最后几层神经网络权值,为什么?
13、问题:画GRU结构图
14、Attention机制的作用
15、Lstm和Gru的原理
16、什么是dropout
17、LSTM每个门的计算公式
18、HOG算法原理
19、DropConnect的原理
20 深度学习了解多少,有看过底层代码吗?caffe,tf?
21、除了GMM-HMM,你了解深度学习在语音识别中的应用吗?
22、用过哪些移动端深度学习框架?
23、Caffe:整体架构说一下,新加一个层需要哪些步骤,卷积是怎么实现的,多卡机制,数据并行还是模型并行?
18、HOG算子是怎么求梯度的
1、BN层的作用,为什么要在后面加伽马和贝塔,不加可以吗
2、梯度消失,梯度爆炸的问题,
3、Adam
4、attention机制
5、RNN梯度消失问题,为什么LSTM和GRU可以解决此问题
6、GAN网络的思想
7、1*1的卷积作用
8、怎么提升网络的泛化能力
9、什么是seq2seq model
10、激活函数的作用
11、为什么用relu就不用sigmoid了
12、讲一下基于WFST的静态解码网络的语音识别流程?
13、目标检测了解吗,Faster RCNN跟RCNN有什么区别
14、SPP,YOLO了解吗?
15、梯度消失梯度爆炸怎么解决
16、RNN容易梯度消失,怎么解决?
17、LSTM跟RNN有啥区别
18、卷积层和池化层有什么区别
19、 防止过拟合有哪些方法
20、dropout咋回事讲讲
21、relu
22、神经网络为啥用交叉熵。
23、注意力公式
24、论文flow情况
25、开发者,怎么利用DNQ方法强化学习你的游戏AI
26、LeNet-5结构
27、推导LSTM正向传播和单向传播过程
28、LSTM原理,与GRU区别
29、DNN的梯度更新方式
30、 CNN为什么比DNN在图像识别上更好
31、现场用collabedit写代码,一个怪异的归并算法。。。之前没遇到过,直接把归并写出来,但是说复杂度太高,优化了三遍还不行,最后说出用小顶堆解决了。。。
32、LSTM和Naive RNN的区别
33、神经网络为啥用交叉熵。
34、注意力公式
35、Inception Score 评价指标介绍
36、使用的 CNN 模型权重之间有关联吗?
37、CycleGAN 原理介绍一下
38、训练 GAN 的时候有没有遇到什么问题
39、百度实习:CPM 模型压缩怎么做的?有压过 OpenPose 吗?
40、用过哪些 Optimizer,效果如何
41、图像基础:传统图像处理方法知道哪些,图像对比度增强说一下
42、介绍一下图像的高频、低频部分,知道哪些图像补全的方法
43、百度实习:模型压缩的大方向。CPM 模型怎么压缩的,做了哪些工作?
44、Depthwise 卷积实际速度与理论速度差距较大,解释原因。
45、RetinaNet 的大致结构画一下
46、RetinaNet为什么比SSD效果好
五、数据结构与算法
1、查找
- 算法题,单调函数求零点 (简单的二分法)
3、特别大的数据量,实现查找,排序
2、哈希
1 Hash表处理冲突的方法
2、一致性哈希
3、Hash表处理冲突的方法
4、apriori
5、KM算法
3、表达式、字符串
1.中缀表达式转后缀表达式
- 算法题:翻转中间由各种符号隔开的字符串
3、问题:A+B∗(C−D)/E的后缀表达式。
4、栈与堆
1.大顶堆怎么插入删除
2、堆栈区别
3、栈溢出有哪些情况
5、树
1、问题: 手撕代码,根据前序,中序创建二叉树。
- 算法题:从右边看被遮挡的二叉树,求露出的node
- 算法题,给前序和中序,求出二叉树
- 算法题,trim二叉搜索树
5、红黑树
1、对一千万个整数排序,整数范围在[-1000,1000]间,用什么排序最快?
2、堆排序的思想
3、冒泡排序
4、快速排序的最优情况
5、抽了两道面试题目两道。8个球,1个比较重,天平,几步找到重的?
- 算法题: topK给出3种解法
7、快排
8、快排
9、说一下小顶堆的调整过程
10、算法题:2sum,3sum
1、手撕代码:以概率p生成1、概率1-p生成0的rand函数,得到0-1等概率的rand函数,计算新的rand函数中:调用一次,while循环的期望次数
2、Kruskal算法的基本过程
3、BFS和DFS的实现思想
4 关联规则具体有哪两种算法,它们之间的区别
5、贪婪算法
6、模拟退火,蚁群对比
7、 算法题:名人问题,给出最优解法
8、代码题:股票最大值。
9、编辑距离
1、如何判断单链表是否是循环链表
- 反转链表。。。
- 算法题,反转链表
- 算法题,单链表判断是否有环 (leetcode easy),以及判断环入口
9、数组
1、找出数组中只出现1次的数,其余数均出现2次,扩展,其余数出现2次以上
1、最短描述数,10的最短描述数是3^2+1^2所以是2,求一个数的最短描述数
2、跳台阶问题,每次只能跳1个台阶或者2个台阶,n个台阶共有多少种方式
3、动态规划和带记忆递归的区别
4、手撕代码:0-1矩阵的最大正方形
11、遍历
1、代码题:股票最大值。
六、编程语言,工具和环境
1、编程语言
1 什么是python的生成器?
2、Java抽象类和接口的区别?
3、python中is和==的区别
4、python方法解析顺序
函数
5 .Ctrl+C程序挂掉还是抛出异常,如何判断两个dict是否一样,list头上删除元素,字符串拼接?
中cuda()作用,两个Tensor,一个加了cuda(),一个没加,相加后很怎样?
中dict和list的区别,dict的内部实现
8、C++析构函数
9、C++的delete, delete[]的区别
10、C++相关的问题虚函数
12、如何写多线程的代码
13、是否关注过caffe和pytorch是怎么写的吗?pytorch调用多GPU函数内核
虚拟机内存的划分
15.python dict按照value进行排序
中static关键字的作用
17、虚函数和纯虚函数的区别
18、Python多进程
19、深拷贝,浅拷贝,写一个出来(写了个自己认为对的版本)
20、在程序里面智能指针的名字是啥?
21、new,malloc区别
22、纯虚函数怎么定义,写一个出来
23、函数后面接const是什么意思?
24、写一个函数指针
25、抽象类和接口的区别,慢慢说
26、有看过c++的一些库吗?
27、c++你看的最久的一章是哪一章,c++primer最熟哪一章
9、开发环境、语言的掌握
10、Python 多进程
11、Python 锁
2、大数据相关
1、Spark性能如何调优
2、map reduce实现笛卡尔乘积
3、 是否写过udf,问udaf,udtf区别和一些细节
七、自然语言处理
1、Word2vec
1、Word2Vec中skip-gram是什么,Negative Sampling怎么做
2、FastText和Glovec原理
3、word2vec实施过程
4、softmax的原理了解
5、Wod2vec公式
6、Wod2vec公式
7、使用gensim的word similar方法预测句子
八、计算机基础
1、linux
1、ELF的bss段
2、计算机网络
1、ip报文经过一个路由器改变哪些字段?
2、TCP/IP算法,IP寻址
3、操作系统
1.如何将小端存储模式转为大端存储模式
2、Python 锁
4、数据库
1 .count(*),count(1)和count(列名)的区别
九、场景题
1 .如何对10亿个词语进行排序,找出频率最高的100个
- 算法题,10亿个32位正整数,求不同值,只给1GB内存。。。
3、AI能用在游戏的哪些方面。
4、如果让我用AI技术怎么加入AI元素
5、你觉得你的构想能实际实现吗?
6、那这个技术加进去有什么实际上的意义?
1、项目中涉及的算法有了解情况
2、模型的搭建,后处理,数据中发现的特征,发现的亮点。
3、数据量和涉及的算法,效果。
4、你是怎么处理数据中经常存在的数据不平衡的问题。
5、考察项目中的roi-pooling
6、自我介绍
7、项目介绍
8、问了下项目怎么做的
9、 问了一下项目和简历
10、描述一个算法项目从kickoff-落地的全过程
11、 扣项目,问简历,其中涉及的算法和上面差不多
12、 对项目中一些技术选型产生质疑,并友好的一起讨论了这个问题
13、扣简历的项目,扣的很细
14、 扣简历
15、扣简历,问得太细了,每个项目都要回答如果再做一次,有什么改进的地方,both算法上和模型选择上
16、聊简历项目,对搜索推荐算法的了解
17、简历上聚类项目用到的ISODATA算法比kmeans有哪些改进
18、自我介绍,
19、然后让我说一下自己最印象深刻的项目。问我项目的最终成果,分析失败的原因。
20、主要是问项目,根据项目里问一些细的技术点,比如gan在实际实现中的loss是什么
21、 第五轮面试:主要是问项目
22、 第二轮技术面:两个面试官面我一个。
23、看过的论文,讨论论文
24、针对岗位需求和我简历里的内容进行提问
25、 自我介绍
26、项目经历介绍下
27、项目中遇到的最大困难
28.自我介绍
29、针对简历里的第一个项目问的一些问题
30.针对项目3,让解释下DOA估计
33、.你的C/C++怎么样?
34、自我介绍?
35、谈谈实习项目?
36、项目难点?
37、说一下你简历里的图像识别的项目
38、来问我现在在做什么项目,然后我说OCR,然后介绍了一下
39、自我介绍
40、项目经历详细介绍:两种预测方式区别,pair的预测方式,整体项目有哪些可以提升的,遇到的困难之类的,整个项目用了哪些库?
41、看过的论文,讨论论文
42、论文flow情况
43、自我介绍
44、英特尔实习:项目介绍:台球识别和分类使用的方法,Hough 变换原理、后处理
45、Kaggle 比赛:背景介绍,数据清洗、数据增强、类别平衡,最终成绩,与前几名差距在哪,有没有尝试集成的方法。
46、GAN 小论文:做了什么,最终效果
47、GAN 小论文,做了哪些工作,详细公式推一下,对 GAN 的具体应用有了解吗?
- 简历上项目为何适用xgboost和lr,对比其他分类算法的场景优势。
49、GAN小论文,你做了什么,有哪些改进,在哪些数据集上做过实验,分辨率是多少?
50、英特尔实习:1)项目背景。台球检测和分类方法,球杆检测方法,球杆遮挡问题怎么处理,不用分类器,直接分割或计算图像差值会怎样?
51、有什么问题想了解一下
十一、hr面
1.自我介绍
2.几点过来的?
3.你有什么跟别人不一样的?
4.你的缺点是什么?
5.家里几口人?
6.搞技术的你怎么很能说啊?
7.为什么喜欢杭州?
8.为什么喜欢菜鸟?
9.如果你面试失败,你会怎么办?
10.菜鸟跟你相关的部门?
11.有女朋友吗?
12.在哪里工作?
13.从事什么行业?
14.如果你的岗位有冲突,你会怎么处理?
15.实习时间,具体什么时候可以开始?
16.你有什么想问的吗?
17、有没有男朋友呀,意向地点是哪?
18、对公司有哪些了解
19、兴趣爱好、意向地点
20、hr面就是常见的问题,城市啊,薪资待遇啊,对部门的评价,对总监的评价
- 自我评价优缺点,怎么改进
22、hr抠了简历细节,问了笔试试卷相关的问题(为什么工科生要选择做文案卷,笔试题目印象比较深的是什么等等)还有自己的职业规划等
23、想去的工作城市
24、考研还是保研,为什么考到这个学校
25、研究生期间最大的改变是什么
26、四六级成绩
27、讨论下工作地点和期望薪资
28、你三年的职业规划是什么?
29、你和周围的人比你的优势在哪?举个例子
30、考研的还是保研的?为什么没有保研?
31、家庭成员?家里人对你的工作地点有要求吗?
32、平时喜欢运动吗?
33、设计模式会吗?
34、转岗吗?
35、平时刷题吗?你刷过最有意思的题是啥,说一哈
36、我看你之前还做过销售,聊一下
37、hr面:确定并不是二面说的转岗,而是去做数据挖掘
十一、数据挖掘
1、开放题:预测一位学生期末是否挂科,需要挖掘哪些信息。
十二、学习与发展
1、如果有同学要学机器学习,你会建议他们从哪里做起
2、个人发展,以及对自己项目的深入思考,还有深度学习的发展之类的。
3、讲很多关于深度学习以及机器学习的具体应用与实现,也谈到了自己在实际工作中遇到的困难。
4、之后面试官问了些我对人工智能的看法,以及相关竞赛的情况
5、自我介绍
6、为什么选择做语音方向?
7、为什么选择实习,而不是在学校做研究?