面试官如何判断面试者的机器学习水平?

简介: 我在阿里四年,在搜狗十年,在2010年开始从事机器学习算法工作,目前在淘系负责端智能和3D人工智能。应该是国内第一批大规模机器学习问题的参与者,和广告、推荐、CV、CG等不同方向的同学合作过,也面试过近千人了。下面我来讲讲我的看法和具体的实践经验,供各位面试官和候选人参考。

原创 友闻 淘系技术  5月17日

640.gif


我在阿里四年,在搜狗十年,在2010年开始从事机器学习算法工作,目前在淘系负责端智能和3D人工智能。应该是国内第一批大规模机器学习问题的参与者,和广告、推荐、CV、CG等不同方向的同学合作过,也面试过近千人了。下面我来讲讲我的看法和具体的实践经验,供各位面试官和候选人参考。



许多面试官掉进了坑里,对于候选人主要关注研究新进展、模型优化方法等等基础知识的考核,也关注了对于调参技巧等等技能考核。


但实际上公司最关注的是三个问题:

  • 一是候选人是否能够解决当前的问题,这里面对于实际问题的理解和抽象能力尤其关键;

  • 二是团队合作,候选人是否可以与其他同学形成合力,共同实现目标;

  • 最后一个是候选人入职后会有绩效、晋升的需求,候选人成长潜力如何,是否能和团队一起共同成长。

这3个问题都是需要关注的,在某些方面会比机器学习的基础知识更重要。


下面我会回答这样几个问题:

1、面试如何设计?

2、问题解决能力如何考察?

3、团队合作能力如何考察?

4、成长潜力如何考察?

5、候选人如何准备面试。


面试的设计


面试需要的是尽快完成对候选人的考察,从而判断是否录用候选人,对于面试官来说,需要考虑的是是否接纳候选人成为未来的伙伴。


需要注意的是,面试题不宜经常变动,用相同/相似的题目面试不同候选人,会看到不同候选人的差异,有助于快速做出正确的判断,也就是大家常说的结构化面试。


面试的环节一般分为几步,自我介绍、算法/项目问答、编程题/逻辑题、最后总结。


面试首先是看到候选人的优点,而不是寻找缺点,首先的自我介绍环节,对候选人进行全面的了解,同时让候选人放松下来,以便正常的发挥自己的水平。


算法/项目问答,一个投递岗位是算法工程师的同学,如果没有合理的理由,算法的基本理解是需要过关的,对于低级别候选人,要现有深度再有广度,许多面试官刨根问底,也是为了考察候选人的思考深度。


编程题/逻辑题,为什么算法工程师也会这么重视编程题和逻辑题呢?目前的许多候选人算法背景差距很大,隔行如隔山,面试官与候选人钻研领域有时候并非匹配,考察的复杂度就会大大增加,而编程题和逻辑题考察每个候选人都可以使用,面试官非常喜欢这种题目。


最后的环节建立在前面环节的基础上进行考察,如果在知识和技能上失分太多,这个环节可以忽略,如果前面的环节表现比较好,可以和候选人深入交流。交流对未来的想法,对自己的优缺点的认识,从而建立更完整的对候选人的认知,看看是否匹配公司需求,避免做出错误判断。


问题解决能力如何考察


对于问题解决能力的考察,关注的不是问题是否被候选人完整解决,而是得到答案的思考路径和方法如何。


具体关注三个能力:

一是读题能力,是否能够正确定义问题;

二是分析能力,识别问题中的关键点和难点,确定解题思路;

三是应用能力,是否能将已有方法在具体情境中应用,真正掌握了先进技术。


一种方法是逻辑题或者编程题,首先关注候选人是否能够通过沟通和互动,对问题建立正确的理解。其次是看候选人面对问题的时候,是能够进入问题情境,就事论事的分析问题,一步步建立对问题理解,还是说急于把未知问题套到一个已知问题的框架内解决,或者是在思考不完整的情况下轻易下判断。考察的时候一定不要用题面清晰,解答复杂的成题,这样的题目候选人即使能解决也是背下来解题思路。


我曾经用过这样一道面试题,12个球,其中有一个坏球,坏球和好球重量不同,用一个电子秤把坏球找出来,至少需要多少次。


这是一道很老的IOI题目,有的同学学过天平称球,就想套用天平称球,发现不适用,还是跳不出来思考框架,这样的同学在面对实际问题的时候,也缺乏灵活的解决办法。


还有的同学着急去探索最优解法,而实际问题中大部分情况,我们只需要可行解,然后在可行解基础上不断优化即可。


这道题如果是忘记脑中的各种套路,从题目本身思考,得到可行解甚至次优解并不难,也可以排除一些不可能的情况,逼近最优解。如果能够对于问题的本质进行思考,从而给出解题的完整思路,因为考试时间问题无法做出最优解,也是可以获得高分的。


另一种方法是把同学拉到一个具体的算法情境中来看,就像是有个高赞回答提到的现场调试算法,但现场调试需要时间比较长,题目的设计也需要下功夫,还需要有个题库,避免漏题,公司里有专门的同学负责此事的话可以考虑。更通用的方法是对于同学应该比较熟悉的领域,构造一个实际场景,观察同学的思考角度和方法。


比如同学对图像识别比较熟悉,可以问问同学,一个每个类目目前只有10条数据,大约100个类目的家具分类问题如何解决比较好?回答的时候既包括模型选型,也包括标注任务设计,迁移学习理解,实际问题中样本不均衡、噪声样本等问题的解决。


学术界对于这些单一问题都有相关的解决方案,但是在具体情境下的决策能力,还是非常考验候选人这些方法融会贯通、灵活运用的能力。


合作能力如何考察


团队合作能力在面试中很难考察的很深入,最好是候选人实习一段时间,才能完整判断合作能力。面试过程中,主要关注候选人沟通中的一些特质体现。


第一,候选人在面试环节中是很自我的在思考、表达,还是尊重面试官、尊重题目。


第二,候选人的沟通能力如何,是否能够快速理解面试官问题,有疑问的时候是否能用沟通解决疑问。


第三,候选人表达能力如何,能够简明扼要的说清楚自己的观点,还是说表达缺乏重点,效率很低。


成长潜力如何


成长潜力体现在自控力、主动性、学习能力几个方面。


自控力和主动性的考察,主要是体现在简历考核中,候选人是能够主动探索自己希望学习的方向,还是被动的接受学校的培养计划。当自己确定了努力的方向,是否能够按照自己的期望进行努力,还是说很容易放弃。


学习能力体现在题目考察中,读题的时候理解题目速度如何,分析题目时是否有很强的逻辑性,能够快速找到问题的关键。


成长潜力的考核是贯穿面试整个过程的,面试后需要尽快进行总结,从各个细节中形成完整的判断,候选人是否成长潜力合格。


候选人如何准备面试


准备面试分为2个阶段,一个是长期积累,另一个是短期冲刺。


学习能力、学术能力、解题能力都不是短期能够突击的。


希望大家建立正确的学习观念,面试的目的是双方相互了解,进行匹配,通过一些短期手段,即时通过了面试,后续的工作也是很痛苦的。


  长期能力培养


leetcode是很好的工具,大家不要简单的去满足题目通过了,而是是否能够独立分析题面,理解题意,解题的时候都有哪些方法解决,优缺点如何,解题方法选型依据如何。坚持这样的思考过程,做了几百道题,编程和解决问题的能力自然提升了。


读论文、实验复现也是如此,首先关注论文的核心贡献,思考论文面对的问题背景如何,你有什么想法,论文中设计了什么样的解决方案,为什么这么设计。主动性的培养可以尝试主动去参加比赛,以及各种活动,并不断改进方法提升成绩。


  短期冲刺


冲刺的目的是完整的展示自己,避免面试的短时间无法利用好,展示自己的优点。首先是整理好简历以及相关内容的了解,说清楚自己的核心优点,简历内容中相关的支撑点都有哪些。


其次是对于自己的项目,看看相关资料,说清楚难点和自己的价值,也对于领域内其他人的相关工作可以简要说明。


最后是多演练,找同学模拟练习,表达熟练了,情境熟悉了,自然面试表现会好不少。

相关文章
|
29天前
|
机器学习/深度学习 算法 Java
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
机器学习、基础算法、python常见面试题必知必答系列大全:(面试问题持续更新)
|
3月前
|
机器学习/深度学习 算法 数据中心
【机器学习】面试问答:PCA算法介绍?PCA算法过程?PCA为什么要中心化处理?PCA为什么要做正交变化?PCA与线性判别分析LDA降维的区别?
本文介绍了主成分分析(PCA)算法,包括PCA的基本概念、算法过程、中心化处理的必要性、正交变换的目的,以及PCA与线性判别分析(LDA)在降维上的区别。
92 4
|
3月前
|
机器学习/深度学习 算法 Python
【机器学习】面试问答:决策树如何进行剪枝?剪枝的方法有哪些?
文章讨论了决策树的剪枝技术,包括预剪枝和后剪枝的概念、方法以及各自的优缺点。
59 2
|
3月前
|
机器学习/深度学习 算法
【机器学习】SVM面试题:简单介绍一下SVM?支持向量机SVM、逻辑回归LR、决策树DT的直观对比和理论对比,该如何选择?SVM为什么采用间隔最大化?为什么要将求解SVM的原始问题转换为其对偶问题?
支持向量机(SVM)的介绍,包括其基本概念、与逻辑回归(LR)和决策树(DT)的直观和理论对比,如何选择这些算法,SVM为何采用间隔最大化,求解SVM时为何转换为对偶问题,核函数的引入原因,以及SVM对缺失数据的敏感性。
73 3
|
3月前
|
机器学习/深度学习
【机器学习】面试题:LSTM长短期记忆网络的理解?LSTM是怎么解决梯度消失的问题的?还有哪些其它的解决梯度消失或梯度爆炸的方法?
长短时记忆网络(LSTM)的基本概念、解决梯度消失问题的机制,以及介绍了包括梯度裁剪、改变激活函数、残差结构和Batch Normalization在内的其他方法来解决梯度消失或梯度爆炸问题。
151 2
|
6月前
|
机器学习/深度学习 存储 搜索推荐
利用机器学习算法改善电商推荐系统的效率
电商行业日益竞争激烈,提升用户体验成为关键。本文将探讨如何利用机器学习算法优化电商推荐系统,通过分析用户行为数据和商品信息,实现个性化推荐,从而提高推荐效率和准确性。
239 14
|
6月前
|
机器学习/深度学习 算法 数据可视化
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
实现机器学习算法时,特征选择是非常重要的一步,你有哪些推荐的方法?
118 1
|
6月前
|
机器学习/深度学习 算法 搜索推荐
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
Machine Learning机器学习之决策树算法 Decision Tree(附Python代码)
|
6月前
|
机器学习/深度学习 数据采集 算法
解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制
解码癌症预测的密码:可解释性机器学习算法SHAP揭示XGBoost模型的预测机制
311 0
|
6月前
|
机器学习/深度学习 数据采集 监控
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
机器学习-特征选择:如何使用递归特征消除算法自动筛选出最优特征?
920 0

热门文章

最新文章

下一篇
无影云桌面