新农上路
- 积分
- 99
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- 学分
- 个
- 注册时间
- 2019-12-14
- 最后登录
- 1970-1-1
|
注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号 
x
首先大致说下楼主的背景,本科统计,master是DS硕,本科期间有两段国内互联网大厂数分数科实习,找实习前没有刷过leetcode。今年秋季入学,十月底开始找实习,一月底上岸Microsoft data scientist intern。
因为第一学期学业任务非常重,真正开始全面准备DS面试是在十二月初寒假,在其间系统的过了一遍ML,DL,stat,product知识,在准备的期间找到了很多有用的资料,也总结了一些短期系统复习的经验,在这里分享给大家。
DS面试(这里主要是指偏engineering的,非analytics)主要分为以下几个部分:Machine learning(包含ML case),statistics concept,coding(包括SQL和算法), A/B testing(causal inference),Deep learning/NLP/CV/推荐系统等advanced topics(与简历project相关问题)。重要性排序大致是:ML>stat>Coding>AB test = DL/NLP> other topics. 不过在面试前需要仔细阅读岗位要求,琢磨岗位需要的skillset,有些会侧重experimentation,有些会侧重DL,NLP等。下面我就各个部分分别总结一下复习资料推荐。
. .и
Machine learning
我当时的策略是按专题一个一个过,总结笔记。比较重要常考的专题有:线性回归(考察基本功,gradient descent,regularization是常考内容),logistic regression(loss function是什么),SVM(模型推导),K-means(描述算法,不同clustering的区别和use case),ensemble learning(bagging和boosting的区别,decision tree的split criterion、算法实现等),除去各种模型之外,model evaluation,data cleaning, model selection等也是常考内容。
. check 1point3acres for more.
参考资料:我当时是以Andrew Ng的 ML 公开课的notes为主要资料,链接贴在这里
同时以林轩田老师的机器学习课件为辅助补充资料(林老师在ensemble learning,decision tree部分讲得很深入),再加上我上学期学校学的ML课件,三个资料总结在一起基本覆盖了所有的ML常考知识点。. From 1point 3acres bbs
在面试之前,我会查面经,总结该公司常考的ML问题,过一遍基本就差不多了。
. ----
ML Case
ML case 通常是和ml知识点穿插考察,一般是给一个在industry中实际的问题(有可能是组里正在做或者曾经做过的项目),让你提供一个end-to-end的解决方案。重点在于考察:如何选metrics,如何搜集数据转化为可以建模的形式,如何选model(可以从business objective,计算速度,模型复杂度,是否需要实时计算等方面来选择model),如何选evaluation metric(包括imbalance data如何选metric),模型上线后的评估(AB test)等等。这里给大家推荐一个很好的资料:ML Systems Design Interview Guide,作者是一个ML engineer,把如何在面试中回答ML system design总计的很清楚。大家可以根据他的内容总结出合适自己的回答模版。
Stats
因为本科是统计,基础知识点还是比较熟悉的,所以没有花太多时间在stats上,但我找到了一个总结很好的系统复习统计知识点的网站,Data Science for Beginners part 2. 博主把DS基本所有的统计常考知识点都总结了,我觉得写的很好,新手友好浅显易懂。 除此之外,建议大家把P-value,confidence interval,hypothesis testing这几个基本数学concept定义熟知,同时提前准备好non technical explanation(最好是讲故事举例子来解释)。关于stat concept的解释YouTube博主data science pro总结的很好,大家可以看看。
Coding
. ----首先是SQL,因为之前实习用的比较多,没有花太多时间练习。对于像我一样SQL基础比较好的,可以做一下一个总结好的SQL练习题。这个练习题总共有6道,每道题难度都比较大,且包含了各种常考的知识点,如果能够比较轻松做完这套题,就不用花太多时间在SQL上了。我把练习题附在附件里大家自取。
关于算法题,只有少数公司的DS面试会考算法题, 对于只有不到一个月的时间准备的我来说,我只能随缘刷刷题了。主要从要面的公司的常考Leetcode题开始刷,在面试前大概刷了不到30题。我在Microsoft面试的时候被问到了一个比较简单的算法题,但我只来得及walk through思路,没有时间写完了。在面试的时候遇到不会的算法题不要慌,DS对于算法的要求不是很高,尽可能展示自己的逻辑能力和walk through你的解决思路,可以先从暴力方法入手,让面试官带着你一步步优化,最后不要忘记分析一下你的解决方法的时间复杂度。. Waral dи,
Deep Learning
越来越多公司面试时喜欢问DL知识了,最基本的Neural network,back propagation,gradient vanishing,不同activation function直接的区别,避免overfitting的常用方法需要掌握。其他的advance model,例如CNN,LSTM之类的一般会跟你你之前做过的DL项目来问,一般不会主动问。我当时的复习资料是李宏毅的深度学习课件,由于文件太大不能放在链接,大家自行在网上搜索吧。
. From 1point 3acres bbs
A/B testing
首先需要复习一下统计的基本知识,two sample t-test,significance,statistical power,ANOVA之类的基本概念要弄清楚,这些是AB test的基础。AB test入门的话我是上了Udacity的AB testing网课,第一次听其实有很多地方会不理解,建议反复观看,加深理解。同时我还看了YouTube博主Data Science Pro的AB test系列视频,讲的简单易懂,对于在high level层面理解AB test很有帮助。大致需要知道的topic有:AB test的完整流程和design,sample size的计算,AA test, Mutiple A/B tests,各种Novelty,primacy effect和network effect。
. check 1point3acres for more.
对于特别看重AB test和experimentation的公司,比如robinhood,推荐细读《trustworthy online controlled experiments》这本书,讲的比较深入,也针对各种AB test在实际应用中遇到的问题给出解决方案。一些AB test的advanced topic包括:Sample Ratio Mismatch,Variance reductio,评估Long-Term Treatment Effect等等,这些都在书中有提及。同时建议大家要对causal inference有所了解,如果懂causal inference可能在面试中有所加分。至少要知道用于解决selection bias的propensity score matching.
Other topics.--
其他常问的topics还包括NLP,CV,recommendation system,建议至少一个和这些advanced topic相关的project,面试的时候也有东西可以和面试官沟通。大家可以对这些topic有一个最基本的了解,然后对自己所做的项目深入了解即可。
DS的面试过程中考察的知识面非常广,各个方面都有可能深入考察,所以不仅要求广度也要求深度。楼主在准备的过程中也感觉很痛苦lol,不过好在结果是好的。希望大家也能在DS准备过程中少走弯路,专心沉淀总结提升,横扫各大厂的DS offer!新人发post,很认真的给大家总结面试经验,如果觉得有帮助的话,求加米求加米!
. 1point 3 acres |
上一篇: 请问这个职位salary一般是多少上训练营可以上岸吗?下一篇: 有必要拿contract面试练手吗
|