- Case study
这个也是必考的,是不是感觉 DS 真的非常多分析和 collab工作。一般来说有几个大类,某个指标上升/下降了怎么分析,要 launch 一个新的 feature 怎么分析,这都是case by case,希望面的时候有机会可以下载他们的 product 亲身体验一下是最好的,在面试的过程“有意”的提及自己的使用感受,会比较加分。这里我提供一个我分析的框架,附上图片了,大家可以按照这个模板挑一些重点分析,千万别生搬硬套。如果有不理解的,欢迎留言交流。
. ----
- take home challenge. Χ
我一共做了 8 个。现在一般公司要求做一个 take home,确实挺花时间的这个,大家可以认真的做 1-2 个 project,然后都把内容写成 function,尤其是画图和 modeling,这样的话基本所有的 take home 都可以套用。大家提交 Jupiter notebook的时候最好在顶部写一个 summary markdown,把目录和重要结论写上,会比较加分。然后就是代码尽量多写一写 comments,图片或者分析结果后面多加一些解释。建议大家也别话太长时间,一般 10-12 小时足够了。不太好 share my code,附件share了其中一个的 framework,供大家参考,GitHub 里有很多优秀的 project,建议大家多看看,构建一个自己的 framework。-baidu 1point3acres
. 1point 3 acres
- ML
DS 的话看具体的岗位,一般来说对 linear regression/ LR 掌握细节,然后把ML八股文那些准备一下就够了。具体的准备细节放在下面的 MLE 里写。. Χ
.google и
2.2 MLE
大家搜岗位的时候别只看 data scientist,MLE。有的时候,岗位的名称是 software engineer, data science/AI framework。
- Algo
Algo 就是重中之重了,估计占 50-60%的时间,把自己去面 sde 去准备,medium - hard level 的题。刷题应该其他地里的帖子说的更好,我就简单说一下我自己刷题的情况,我刷了大概 50 题左右。建议大家多看看地里面经,一边面一边刷,一定要按照算法类型刷,像 DFS/BFS 是刷的重点。每个题下面都有 similar question,建议一起刷了。每个题都可能有很多解法,多看看 discussion,总结一下别人的思路以及复杂度。lz 从最开始的DFS都不会写,到最后 AWS SDE vo coding 都做出来了,题不在多,相信大家多思考和总结,每晚睡前like洗澡的时候,回想一下自己今天刷了哪些题,属于什么类型,有什么样的写法,把他们像快照一样存起来,第二天刷题前再回想一下。刷题真的是一个痛并快乐的过程,有的时候 debug 很久也不知道为什么过不了,气的睡不着,最后做出来后又十分的畅快,建议大家加个小分队,相互鼓励!
. Waral dи,
这个算法的介绍推荐大家看看 https://www.bilibili.com/video/BV1sy4y1q79M?p=67
- ML
因为 LZ 平时工作接触这块比较多,就没有花太多的时候,把网上的 ML 面试题看了一下就没有太多的复习了。这一块一般考察深度和广度,深度就是具体的理论,广度就是各个算法之间的 pros and cons。
深度一般考察logistic,linear regression,naive bayesian,尤其是 LR,一定要吃透。LZ 举几个例子,看看大家觉得自己有没有准备到位。
LR 的基本假设是什么,数据服从什么分布,是生成还是判别模型
LR 的优缺点
LR 和 linear regression有什么不一样(都是广义的线性回归,优化目标区别,LR 鲁棒性更好)
就看你对哪块比较熟悉以及以后想去公司的要求, 如果是 model 的话 regression classification model 的 keywords 要有,有什么样的效果。model deployment 如果你有熟悉的工具 like sagemaker 也可以写上去。你可以参考一下 ML system design 里的每个步骤,根据自己的工作内容写成 bullet points