Py学习  »  机器学习算法

美团+阿里 | 机器学习算法春招面经

NewBeeNLP • 3 年前 • 1300 次点击  

作者 | 今天你leetcode了吗
整理 | NewBeeNLP



面试锦囊之面经分享系列,持续更新中 

赶紧后台回复"面试"加入讨论组交流吧 

写在前面

2020春招实习投的职位都是机器学习算法工程师,这里主要说一下拿到offer的两家面试:

  • 阿里云 (4.1 笔试0ac,对了10%, 拿到意向书)
  • 美团 (笔试大概过了45%的样子,offer)

985本硕非科班,简历上一共写了4段经历:

  • 项目一:天池比赛 10名左右
  • 项目二:一个数据挖掘比赛 第一名 + 后续合作项目+ sci论文
  • 项目三:实验室项目
  • 项目四:大三暑假实习经历(一家独角兽的算法部门)

美团

一面

  • 聊项目一
    • 特征选择(有哪些方法)
    • 数据探索(拿到数据之后怎么分析的?)
    • 降采样之后怎么调整概率?
    • LightGBM、XGBoost的区别(LightGBM做了哪些改进?)
    • XGboost里面预排序是怎么做的?
  • 介绍项目二
  • 介绍项目三
  • 简单说了下项目四
  • 手撕代码
    • 手写最小堆代码

简单总结: 一面主要感觉是简历面,简历上的4个项目都简单聊了下。

二面

  • 聊项目
  • 激活函数 ReLU LeakyReLU Sigmoid 各种激活函数的区别
  • 平时调参主要调什么参数?除了用到的LightGBM,还用过什么模型?比如深度学习的一些模型?
  • LightGBM和XGBoost是怎么处理缺失值的?
  • 介绍了项目一和项目二(主要介绍了整个目的和流程)

三面

  • 介绍项目一
  • 采样 怎么验证 如何判断过拟合
  • 为什么没有做集成
  • LightGBM原理(预排序 直方图 行抽样 列抽样 分裂时梯度选择 特征交叉合并(RBF))
  • 还了解一些其他的什么广告推荐算法之类的

阿里

一面

全程聊项目,中间穿插一些知识点

  • 介绍一下研究生阶段难度最大的项目,包括工作量、遇到的难点、解决方案
  • 介绍了项目二 包括背景 数据处理 分析 论文
    • 中间穿插问了几个问题:
    • 使用的LightGBM和seq2seq模型如何调参的?
    • LightGBM的原理了解多少?
    • 介绍一下项目二中用的attention如何做的?
    • 所说的项目中数据量大是多少?特征选择又是如何做的?
    • 项目二最后结果提升了多少?有没有试过简单模型?
  • 还有其他项目介绍吗
    • 介绍了项目一:包括踩过的坑(训练集拆分遇到了leak问题,直接上LightGBM效果不是很理想的问题) 特征的处理、针对不平衡样本的处理方法
    • Q1. 线下怎么验证的?构造的这些特征线下指标是否有提升?
    • Q2. 探讨了一下样本采样的问题
  • 还有其他想要说的项目吗 用的其他的方法
    • 简单说了下项目三的经历,主要做数据处理,简单的分析挖掘工作。没有深入聊下去。
  • 投递的那个团队的业务介绍
  • 有啥需要了解的
  • 我问了几个问题
    • 问了团队的工作节奏和时间安排
    • 问这个岗位的招聘具体对候选人的能力要求
    • 内部用啥工具平台之类的?

二面

基本都是聊项目

  • 介绍项目二
    • 为什么选择seq2seq模型?为什么不用其他时序模型?难度在哪?最后效果怎么样?
    • 特征选择有哪些方法?
  • 介绍项目三
    • 具体做哪些工作(数据分析难度不大的样子?)
    • 有没有借鉴其他人或者团队的算法?
    • 面试官主要觉得难度不大!主要困难在特征提取阶段
  • 子序列最大和(简单说了下思路就过了)

简单总结:本次面试是感觉最差的一次,因为投递的是机器学习算法工程师的职位,项目三其实很大一部分工作量是CV方面的,我在介绍的时候就一笔带过了视觉的部分,导致面试官可能认为这个项目工作量不够,这里全程都在质疑我这个项目过于简单。后面反思了一下,其实和数据挖掘无关的工作内容也能说,应该算是工作量的体现。

三面

聊项目

  • 项目二介绍 比赛中你的方案比其他队伍的优点在哪?
  • 项目一介绍
  • 遇到一个机器学习问题,怎么去选择模型?
  • 项目一后续打算如何改进?
  • 职业规划?
  • 平时做项目和学习的过程中遇到了什么问题?总结出了什么经验?
  • 平时还会学习一些什么技术?
  • 介绍一下在企业的实习(项目四)
  • 问面试官的问题:
    • 您觉得我要想达到胜任此岗位的能力,还应该在哪些方面弥补不足?

四面(交叉面)

  • 说了一下项目二
  • 说了一下项目四
  • 手撕代码 gray码
  • 问了面试官两个问题:
    • 交叉面和之前几面想考察的点有什么异同
    • 阿里国内和国外的office工作节奏理念有啥不一样吗 (纯闲聊了)

交叉面比较短,大概30min就结束了,貌似就是看下前三面有没有放水。

HR面

  • 简单介绍一下学校经历
  • 说了从本科到研究生的一些经历
  • 介绍项目二 项目里有哪些难点?哪些地方分别体现了哪些技术能力?
  • 介绍一下家庭情况
  • 有什么想问的

简单总结

对过去的春招做个简单的经验总结,

可能因为投递的都是业务部门,基本上都是围绕着简历上的项目来问,中间穿插一些知识点,与我之前想象中的手撕公式、手撕代码还是不太一样。这就需要我们在几个方面做好准备:

  • 首先是要准备内容丰富的项目,让面试官有问的点;
  • 介绍项目的时候,最好先介绍下简单的项目背景和目的,尽量抓住主要矛盾,关键是要讲清楚整个流程,让面试官搞清楚这个项目到底是干嘛的,细节的东西可以先不讲,如果他感兴趣自然会再追问细节;
  • 要讲清楚自己的工作量,说清楚项目的重难点;
  • 说的时候其实可以抱着一种交流学习的心态,遇到不会的问题,一定要坦诚自己不太懂,但是可以说一下自己的一些思考;甚至可以说一下自己踩过的坑,反问面试官遇到这种情况该怎么解决。

今年很多公司都需要笔试了,即使是内推也需要笔试,这就体现了刷题的重要性,这方面我自己也做得不好,还需要多刷LeetCode。刷题在求职中还是王道。总结出的一些机器学习算法工程师方向常问的知识点:LightGBM、XGBoost原理、调参经验、特征选择方法等等。

- END -


字节跳动AI-LAB | 算法三轮技术面分享 2020-04-08
超详细!腾讯NLP算法岗面经(已offer) 2020-04-01
阿里机器学习算法面经(已offer) 2020-03-28


offer自由

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/64233
 
1300 次点击