2020春招实习 非科班算法(机器学习方向)面经(阿里美团)
2020春招实习 非科班算法(机器学习方向)面经(阿里、美团)
原文发在了https://zhuanlan.zhihu.com/p/136178053
基本情况
2020春招实习总共投了4家公司,职位都是机器学习算法工程师:
- 蘑菇街 (简历挂)
- 招商银行信用卡中心 (笔试挂)
- 阿里云 (4.1 笔试0ac,对了10%, 拿到意向书)
- 美团 (笔试大概过了45%的样子,offer)
985本硕非科班,简历上一共写了4段经历:
- 项目一:天池比赛 10名左右
- 项目二:一个数据挖掘比赛 第一名 + 后续合作项目+ sci论文
- 项目三:实验室项目
- 项目四:大三暑假实习经历(一家独角兽的算法部门)
面经记录
3.30美团一面
聊项目
- 聊项目一
a. 特征选择(有哪些方法)
b. 数据探索(拿到数据之后怎么分析的?)
c. 降采样之后怎么调整概率?
d. LightGBM、XGBoost的区别(LightGBM做了哪些改进?)
e. XGboost里面预排序是怎么做的? - 介绍项目二
- 介绍项目三
- 简单说了下项目四
手撕代码
- 手写最小堆代码
简单总结
一面主要感觉是简历面,简历上的4个项目都简单聊了下。
3.31美团二面
聊项目
- 激活函数 ReLU LeakyReLU Sigmoid 各种激活函数的区别
- 平时调参主要调什么参数?除了用到的LightGBM,还用过什么模型?比如深度学习的一些模型?
- LightGBM和XGBoost是怎么处理缺失值的?
- 介绍了项目一和项目二(主要介绍了整个目的和流程)
4.02 阿里一面
全程聊项目,中间穿插一些知识点
- 介绍一下研究生阶段难度最大的项目,包括工作量、遇到的难点、解决方案
介绍了项目二 包括背景 数据处理 分析 论文
中间穿插问了几个问题:
Q1. 使用的LightGBM和seq2seq模型如何调参的?
Q2. LightGBM的原理了解多少?
Q3. 介绍一下项目二中用的attention如何做的?
Q4. 所说的项目中数据量大是多少?特征选择又是如何做的?
Q5. 项目二最后结果提升了多少?有没有试过简单模型? - 还有其他项目介绍吗
介绍了项目一:
包括踩过的坑(训练集拆分遇到了leak问题,直接上LightGBM效果不是很理想的问题) 特征的处理、针对不平衡样本的处理方法
Q1. 线下怎么验证的? 构造的这些特征线下指标是否有提升?
Q2. 探讨了一下样本采样的问题 - 还有其他想要说的项目吗 用的其他的方法
简单说了下项目三的经历,主要做数据处理,简单的分析挖掘工作。没有深入聊下去。 - 投递的那个团队的业务介绍
- 有啥需要了解的
我问了几个问题
Q1. 问了团队的工作节奏和时间安排
Q2. 问这个岗位的招聘具体对候选人的能力要求
Q3. 内部用啥工具平台之类的?
0403阿里二面
基本都是聊项目
- 介绍项目二
Q1. 为什么选择seq2seq模型?为什么不用其他时序模型?难度在哪?最后效果怎么样?
Q2. 特征选择有哪些方法? - 介绍项目三
Q1. 具体做哪些工作(数据分析难度不大的样子?)
Q2. 有没有借鉴其他人或者团队的算法?
Q3. 面试官主要觉得难度不大!主要困难在特征提取阶段 - 子序列最大和(简单说了下思路就过了)
简单总结:本次面试是感觉最差的一次,因为投递的是机器学习算法工程师的职位,项目三其实很大一部分工作量是CV方面的,我在介绍的时候就一笔带过了视觉的部分,导致面试官可能认为这个项目工作量不够,这里全程都在质疑我这个项目过于简单。后面反思了一下,其实和数据挖掘无关的工作内容也能说,应该算是工作量的体现。
0408阿里三面
聊项目
- 项目二介绍 比赛中你的方案比其他队伍的优点在哪?
- 项目一介绍
- 遇到一个机器学习问题,怎么去选择模型?
- 项目一后续打算如何改进?
- 职业规划?
- 平时做项目和学习的过程中遇到了什么问题?总结出了什么经验?
- 平时还会学习一些什么技术?
- 介绍一下在企业的实习(项目四)
问面试官的问题: - 您觉得我要想达到胜任此岗位的能力,还应该在哪些方面弥补不足?
0410 阿里四面(交叉面)
- 说了一下项目二
- 说了一下项目四
- 手撕代码 gray码
问了面试官两个问题: - 交叉面和之前几面想考察的点有什么异同
- 阿里国内和国外的office工作节奏理念有啥不一样吗 (纯闲聊了)
交叉面比较短,大概30min就结束了,貌似就是看下前三面有没有放水。
0413 美团三面(30min)
- 介绍项目一
- 采样 怎么验证 如何判断过拟合
- 为什么没有做集成
- LightGBM原理(预排序 直方图 行抽样 列抽样 分裂时梯度选择 特征交叉合并(RBF))
- 还了解一些其他的什么广告推荐算法之类的
0413 阿里HR面
- 简单介绍一下学校经历
说了从本科到研究生的一些经历 - 介绍项目二 项目里有哪些难点?哪些地方分别体现了哪些技术能力?
- 介绍一下家庭情况
- 有什么想问的
简单总结
春招加起来一共面了7场技术面,简单做了一些经验总结:
- 可能因为投递的都是业务部门,基本上都是围绕着简历上的项目来问,中间穿插一些知识点,与我之前想象中的手撕公式、手撕代码还是不太一样。这就需要我们在几个方面做好准备:首先是要准备内容丰富的项目,让面试官有问的点;介绍项目的时候,最好先介绍下简单的项目背景和目的,尽量抓住主要矛盾,关键是要讲清楚整个流程,让面试官搞清楚这个项目到底是干嘛的,细节的东西可以先不讲,如果他感兴趣自然会再追问细节;要讲清楚自己的工作量,说清楚项目的重难点;说的时候其实可以抱着一种交流学习的心态,遇到不会的问题,一定要坦诚自己不太懂,但是可以说一下自己的一些思考;甚至可以说一下自己踩过的坑,反问面试官遇到这种情况该怎么解决。
- 今年很多公司都需要笔试了,即使是内推也需要笔试,这就体现了刷题的重要性,这方面我自己也做得不好,还需要多刷LeetCode。刷题在求职中还是王道。
- 总结出的一些机器学习算法工程师方向常问的知识点:LightGBM、XGBoost原理、调参经验、特征选择方法。