当前位置: 首页 > 科技观察

我采访了10家公司,这是机器学习面试的总结

时间:2023-03-17 22:21:28 科技观察

先自我介绍一下。我在机器学习方面有超过4年的工作经验。主要工作内容包括语篇分析、文本分析和图像分析。我认为这个领域最稀缺的人才是NLP专业,其次是图像分析(CV),次之的主要是语音或音频分析。经过五年的工作经验,我的目标是中高层职位,我可以带领一个数据或机器学习团队做一些有趣的研究。以下是我在面试中遇到的各种技术问题,供大家参考。全球服务公司之一(20-25分钟)您在构建文档挖掘系统的过程中做了哪些工作?假设您有数TB的数据文件,其中包含PDF、文本文件、图像、扫描的PDF等。您将如何对其进行分类?您如何阅读扫描的PDF或纸质文档?为什么朴素贝叶斯被称为“朴素”?详细说说朴素贝叶斯分类器?什么是深度学习?机器学习和深度学习有什么区别?还有其他一些类似的问题,但我对它们有点困惑,不知道面试官想听到什么样的答案。一直想讨论更深层次的技术方面,但是他们一直没有讲到这方面。而当我谈到模型训练、tesseract或语言模型时,他们似乎根本不接受。也许他们想听到的是一个现成的结果,或者是一个很简单的解释。这与我五年前的第一次面试非常相似。全球服务公司II(40-45分钟)您如何以无人监督的方式收集文件?您如何找到与某些查询问题相关的文档?解释TF-IDF。根据我的经验,TF-IDF在文档分类或收集方面失败了,你以后如何改进?什么是LSTM神经网络?解释它是如何工作的。什么是word2vec向量?可变对象和不可变对象在Python中意味着什么?你在Python中使用什么数据结构?虽然有一些关于文本相似性的问题,但我已经成功地回答了所有这些问题。但这一次和上次一样,仍然没有进行深入的技术讨论。可能是考虑到公司有好几个文本分析的小项目,最后给我发了offer。全球生产和服务公司(40分钟)您如何处理不平衡数据集中的多类分类问题?你如何从文本句子中识别语言?中文或日文中的象形文字是怎么表示的?如何设计聊天机器人?(我现在没有太多想法)输入一对问题和答案,我可以用RNN设计一个聊天机器人吗?假设我用Reddit和RNN或LSTM的数据集创建了一个聊天机器人,它给了我10个备选答案,我如何选择最好的一个?或者,如何删除其他回复?解释SVM如何学习非线性边界?还有几个问题想不起来了,不过这是目前为止第一家问技术问题的公司,我很放心。最后公司也给我发了offer。一家成立一年的医疗保健公司(50分钟)什么是精确率和召回率?在医疗诊断中,您认为哪个更重要?分别定义精度和召回率。如何绘制ROC曲线?ROC曲线下的面积代表什么?如何在多类分类任务中绘制ROC曲线?除此之外,还有哪些其他方法可以评估多类分类任务的结果?什么是敏感性和特异性?随机森林中的“随机”是什么意思?你如何进行文本分类?你怎么能确定你没有使用TF-IDF就学会了文本?你还能用机器学习做什么?当神经网络由线性节点组成时,它如何学习非线性形状?它如何学习非线性边界?除此之外,还有几个很好的问题。虽然面试过程感觉不错,但在一些问题上我们无法达成一致。而且在面试过程中,我发现公司只有2-3人专注于ML/DL/DS。亚马逊(50-55分钟)训练决策树时的参数是什么?在决策树的节点处分裂的标准是什么?基尼系数的计算公式是什么?熵的公式是什么?决策树如何决定在哪个特征上进行分割?您如何对收集到的信息进行数学计算?你确定吗?随机森林有什么优势?介绍boosting算法。梯度提升是如何工作的?AdaBoost算法你了解多少?它是如何工作的SVM使用了哪些内核?SVM中的优化技术是什么?SVM是如何学习超平面的?用数学的方式详细解释。介绍无监督学习,有哪些算法?在K-Means聚类算法中,如何定义K?至少告诉我定义K的方法3.你还知道哪些聚类算法?说说DB-SCAM算法。层次凝聚聚类如何工作?解释PCA,使用PCA时的数学步骤是什么。使用PCA有什么缺点?CNN如何工作?让我们详细谈谈使用细节。解释CNN中的反向传播。您如何部署机器学习模型?很多时候,我们可能需要使用C++从头开始构建机器学习模型,你能做到吗?我正在面试亚马逊的6级职位。我只能说他们的主要关注点是算法及其背后的数学。不幸的是,我的面试都是即兴的,没有准备数学,我只是把我能记住的都说了。但是面试官觉得我不适合level6job。相信只要能记住常见机器学习算法的数学细节,就能轻松通过亚马逊技术轮面试。全球服务巨头(50-55分钟)S-function的范围是多少?scikit-learn哪个安装包可以实现逻辑回归?标准正态分布的均值和方差是多少?你在Python中使用什么数据结构?文本分类的方法有哪些,怎么做的?解释一下TF-IDF,它的缺点是什么?你如何克服它?什么是双字母组和三字母组?用文本句子的例子解释TF-IDF的二元组和三元组。例如,word2vec的应用是什么?你将如何设计神经网络?如何使它变暗?LSTM是如何工作的?它是如何记忆文本的?什么是朴素贝叶斯分类器?抛10次硬币,有4次正面朝上的概率是多少?如何在Python中获取列表元素的索引?如何将两个数据集与熊猫合并?从用户的角度来看,你需要模拟欺诈活动,你会如何解决这个问题?你更喜欢决策树还是随机森林?使用逻辑回归和随机森林有什么区别?对于分类问题,您会使用决策树还是随机森林?使用随机森林有什么优势?最终,公司向我提供了一份数据科学职位的聘书。事实上,我非常享受这次技术交流。你可能认为这些问题也是最基本的机器学习和数据科学问题。但是在面试的过程中,感觉面试官可能不是这个领域的,或者对现在的发展了解不多。全球商业管理公司(25-30分钟)在一个不平衡的数据集中,你会选择什么模型:随机森林还是提升?为什么?你知道哪些助推技术?将监督学习方法用于分类问题,您会选择哪种模型?(大约40-50个类别)您如何使用集成技术?SVM如何工作?什么是内核?简单的介绍。如何进行非线性回归?什么是套索回归和岭回归?说实话,这个面试有点水,让我没当回事。但是这个问题还是很好的。我的面试是带领一个15-16人的团队,然后是经理面试和HR面试。最终他们给了我一份薪水丰厚的咨询职位。4年生产服务公司(60分钟)根据你的简历,你曾经使用过语音识别作为演讲者。具体方法是什么?什么是MFCC?什么是高斯混合模型,它是如何完成聚类的?如何最大化期望?步骤是什么?GMM中的概率是如何计算的?在进行说话人识别时,您是如何对GMM-UBM技术进行MAP调整的?告诉我你使用的I-vector技术。上下文中的分析因素是什么?JFA和I-vector有什么区别?为什么选择I-vector而不是JFA?你用过PLDAI-vector技术吗?你看过百度关于DeepSpeaker的论文吗?如果有两种型号,你会选择哪一种?贝叶斯信息度量(BIC)和赤池信息计数(AIC)工作原理背后的数学原理是什么?BIC和AIC背后的原理是什么?在您的MFCC特征向量矩阵中,如果缺少数据怎么办?如何区分语言?有什么特点?你的分类器更像是语音和音乐的分类器,还是语音和非语音的分类器?如何在语言分析应用中部署深度神经网络?是的,您可能会问这一切是什么。巧合的是,我们都在语音分析领域工作,特别是说话人识别。所以整个面试过程一直围绕着语音分析。显然,面试官很专业,给了我非常积极的反馈。后来,这家公司给了我一份AI解决方案架构师的工作。建议在整个求职过程中与大约25-30名专业人士交谈后,我可以提供以下一些建议:简历很重要。里面要写明你参加过的项目,Kaggle比赛,MOOC证书或者论文。我刚接到亚马逊的电话,没有任何参考资料。简历是打动HR和面试官的重要武器。自信和干劲是成功的一半。自信地参加面试并表现出您的热情(尤其是在初创公司和服务公司)。面试时不要急于回答问题。花点时间考虑如何组织你的答案,如果你不明白什么,一定要问。面试时要冷静。在解释概念时不要忘记表达自己。可以提几个自己做过的案例,熟悉一下简历写的技能和项目。如果你是这个领域的新手,那么在创建简历时从一个你做过的项目入手,或者一个GitHub账号,也是很有说服力的。此外,您还可以参加Kaggle比赛和MOOC课程。学会谦虚,认真听取面试官的意见。有时,R和Python用户会相互鄙视,最好不要这样做,否则你可能会死。最后祝大家面试成功!(小编:答案?这辈子都做不出准答案)