查看: 3185| 回复: 4
跳转到指定楼层
上一主题 下一主题
收起左侧

[其他] 应届生求职:想做数据科学家和机器学习工程师,如何准备面试(1)

全局:

2023(1-3月)-DataScience/Analytics本科+fresh grad 无实习或全职 | 网上海投|美国其他地区 Other 其他其他@google

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
应届生求职:想做数据科学家和机器学习工程师,如何准备面试(1)
当你在谷歌上搜索“机器学习面试”时,很难找到能让你全面了解机器学习面试中会出现哪些问题的文章。在本文中,我们将为大家全面总结,在面试中会遇到的4 类机器学习问题。除了篱笆教育导师/面试官的经验,我们还访谈了很多数据科学家和机器学习工程师,更全面的获取了相关的信息。
本文中的 4 种机器学习问题几乎涵盖了所有情况,无论你是在小公司或 FAANG面试数据科学家(算法驱动)职位还是机器学习工程师职位,这些问题都会是你面试中最主要的4类问题。另外,为了方便大家更好的理解解题思路,我同时也提供了一些问题示例,希望能够降低大家理解的门槛。以下是 4 种类型的问题:
机器学习基础. check 1point3acres for more.
机器学习代码. From 1point 3acres bbs
机器学习实际应用
基于个人项目的机器学习问题-baidu 1point3acres
机器学习基础
无论是phone interview还是onsite interview,都一定会问到一些基础的机器学习知识,来快速评估候选人对这方面知识的掌握。而这些概念性问题可能涵盖开发一个机器学习模型的任何步骤,例如处理数据、选择模型、处理训练模型的细节和结果的评估。-baidu 1point3acres
不过,在面试过程中,这些类型的问题通常不会占满整个面试过程,毕竟这些知识只要大家在面试前突击过,其实都能顺利在面试中答出来,面试官也无法通过这些问题区分出最佳的candidate。这些问题可能会在面试开始或结束时与其他类型的机器学习问题一起被问到。
如何回答机器学习基础问题
回答这类问题的关键是要简洁有条理。这是我建议的答案大纲:
-baidu 1point3acres用 2 到 3 句话给出简明的定义。
举一两个例子让面试官相信你既有理论知识又有经验。
如有必要,提供一些常见的问题解决方案。
下面是一个面试例子:
面试官:“什么是overfit,你如何处理overfit?”
面试者:(直截了当的定义)“当模型的学习能力太高或数据量太小时,就会发生过度拟合。该模型最终会把数据中的噪声也拟合进来。因此,该模型在未观察到的数据集上表现不佳。”. 1point 3acres
面试者:(举个例子)“例如,当我们有一个回归模型并且数据点的数量少于特征的数量时,我们会遇到过拟合问题。”.google  и
面试者:(解决方案)“有几种方法可以解决过度拟合问题。一种方法是使用regulization来缩小学习到的参数。L2 regulization可以防止参数值过于极端。而 L1 regulization可以帮助去除不重要的特征。另一种方法是使用更简单的模型来拟合数据。此外,我们还可以增加要被训练的数据量。”
如何准备机器学习基础问题
有三个主要步骤:复习基础知识、收集问题和整理这些问题。
复习基础知识
最好的学习方式是上一些视频课程或者看书,但最重要的还是自己思考和总结。我们可以尝试向没有技术背景的朋友解释这些概念,然后就能判断出自己是否真的掌握了这些知识。以下是学习机器学习基础知识的一些资源:
.google  и就涵盖基础知识的清晰度而言, 首推Andrew Ng老师的机器学习课程。
如果你喜欢读书,Bishop的Pattern Recognition and Machine Learning值得读一读,它也涵盖了统计学的基础知识。
对于深度神经网络,最好的课程是Andrej Karpathy开设的斯坦福大学 CS231n 课程和Geoffery Hinton开设的机器学习神经网络。
收集问题
除了谷歌搜索“机器学习面试题”之外,还有几个地方可以找到面试问题:
Glassdoor:机器学习面试题
Reddit:机器学习问题 . .и
篱笆帮:机器学习面经
整理问题
拿到问题清单后,下一步就是整理问题。一个MECE的方式是,按照机器学习工作流程组织问题,并且这还能帮助我们在面试过程中串联问题并给出更全面的答案。下面是一些以这种方式组织的最常见的问题。
数据处理
如何处理异常值?
如何处理缺失值?
如何处理不平衡的数据集?
特征工程.
如何降低数据维度?
如何设计新feature?
模型
简单介绍下随机森林、SVM、神经网络。
线性回归与树模型的优缺点是什么?
线性回归的假设是什么?
模型细节
什么是过度拟合以及如何处理它?
与 L2 正则化相比,什么时候使用 L1 正则化?
什么是hyperparameters以及如何调整?”
模型评估
列出分类和回归的3个评估指标。
什么是precision和recall?
ROC 曲线和precision-recall曲线有什么区别?
机器学习代码
第二类题是机器学习代码题。通常,你需要在面试中使用任何一种你习惯的语言来从0到1撰写机器学习算法,可能是在白板上,也可能是在代码编辑工具上。通过这种方式,不仅能评估出我们对算法的熟悉程度,还能评估出我们是否具备在短时间内编写优质代码的能力。
不过由于面试时间有限,所以通常这类型的题不会考察太过复杂的,一些最常考的机器学习模型可能是:linear regression、logistic regression、K-Nearest Neighbors、Decision Tree、K-means Clustering
如何回答机器学习代码问题.--
想要条理清晰的回答清楚这类问题,我们建议可以走以下几个步骤:
向面试官简要解释该算法的工作原理。
在撰写代码时,注意main function和helper function的结合。前者执行主线任务,比如处理数据并返回结果,后者处理一些零碎的任务,比如初始化参数或计算梯度。. .и
一步步向面试官解释代码。可以选择在编写代码时解释,也可以在完成大部分编码后进行解释。. From 1point 3acres bbs
但最重要的,是保证代码的准确性和可读性。. 1point3acres
如何准备机器学习编码问题
虽然代码问题中常考的只有5个模型,但我们不可能针对这5个模型背下来全部的代码,这样准备面试不仅花费大量时间而且效果可能很差。因此,更重要的其实是理解算法的核心逻辑,并配合代码撰写练习,才能让我们在面试中游刃有余。
熟悉算法
在写代码之前,必须清楚地了解算法步骤。这里,再次强推Andrew Ng老师的机器学习课程来复习算法。
实践. 1point3acres
强烈建议大家在Jupyter notebook上使用Python编写代码。
第一次实施时,可以将所有内容都融合成一个函数,这个时候可以先不考虑代码的可读性。.
尽量在不使用任何packages(例如 NumPy、SciPy 和 scikit-learn)的情况下获得有效的解决方案。
根据算法步骤将代码分解为函数。
最后很重要的但往往被很多人忽略的是,问问自己是否清楚目前这个代码的空间和时间复杂度。这一点非常重要,因为有关复杂度的问题经常是面试中的follow-up问题。

上一篇:请问ng找工的关键是什么
下一篇:Mathworks vs Veeva
全局:
很好奇,美国现在传统机器学习还有很大的市场吗?感觉国内几乎都是深度学习,cv,nlp之类。几乎看不到纯粹的机器学习岗位了
回复

使用道具 举报

全局:
微信用户_junot 发表于 2024-05-26 18:57:19
很好奇,美国现在传统机器学习还有很大的市场吗?感觉国内几乎都是深度学习,cv,nlp之类。几乎看不到纯粹的机器学习岗位了
马上ai ml快被ban了吧?但愿连同阿三们一起被ban
回复

使用道具 举报

全局:
216yromelle 发表于 2024-5-27 13:56
马上ai ml快被ban了吧?但愿连同阿三们一起被ban

为什么呀,可以说说原因吗~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表