如何准备机器学习工程师的面试 ?
关注者
14,833被浏览
2,013,749登录后你可以
不限量看优质回答私信答主深度交流精彩内容一键收藏
19年参加校招算法工程师岗位,拿到多个大厂offer,来分享一下经验。(可能有一点点偏题,我的项目都以深度学习为主)
我觉得最重要的就是面试的态度,谦虚且自信。遇到不会的问题也沉着冷静,别慌张。面试官也不会期待所有问题都能回答上来,只要有亮点即可。因为机器学习工程师这个岗位也分具体的偏向,如果研究能力强可以安排你多研究算法,如果工程能力强可以偏工程,如果都中等偏上也有用武之地,就怕两边都达不到中等水平,那就难了。
太长不看版:百面机器学习,leetcode top interview,剑指offer,软件工程师常考问题
先把题主问题中提到的另一个问题的回答贴过来:
再分享一下自己整理的一些机器学习/深度学习题目:
机器学习
- SVM和LR的区别和联系
- LR可不可以做非线性分类
- bagging和boosting的区别
- 决策树,GBDT
- 介绍一下xgboost,xgboost和GBDT的区别
- l1正则化和l2正则化
- 如何处理类别不均衡问题
- 如何判断分类器的好坏(分类器的评价指标)
- 介绍Kmeans算法
- 特征工程的方法
深度学习
- 防止过拟合的方法,dropout的原理
- 常用的激活函数,sigmoid的缺点,relu的缺点
- 平时用什么优化方法,adam的缺点及解决方法
- 介绍平时调参的经验
- 介绍BatchNorm
- RNN的缺点,LSTM的作用,LSTM和GRU
- 除了LSTM和GRU是否了解其它循环单元
- 如何处理OOV问题
- 介绍word2vec的作用,缺点
- 常用的文本分类方法,优缺点
- 残差网络resnet介绍,解决什么问题
- CNN在图像中1*1卷积的作用
- 一维卷积的作用
- 介绍transformer,为什么比LSTM好,怎么获取顺序信息
- 介绍BERT,ELMO等
机器学习/深度学习这里,《百面机器学习》看两遍就可以了,如果有多余时间可以看一遍西瓜书或者统计学习方法。
除了机器学习/深度学习水平之外,还要考察工程能力,以及代码编写。代码编写准备的方法比较统一,就是刷题。至少要刷完《剑指offer》的所有以及leetcode的"top interview questions"。需要注意的是写题并不是写对了就可以了,还要尽量保证代码的工整性,以及复杂度、异常处理、边界值等等。
工程能力就是考察“机器学习工程师”岗位除了“机器学习”的相关能力了。考察的点很多,比如操作系统,线程/进程,编程语言特点等等,这块通常面试算法工程师的同学都比较薄弱,需要多准备。分享几个常考到的:
- 进程/线程的区别,python中怎么实现,谈谈GIL
- python2和python3的区别
- python中浅拷贝和深拷贝
- python的生成器是什么
这块我去年秋招时准备的不多,所以想不起来太多问题,以后想到再补。