老师的看法:从实际需求来说,大厂对算法岗的需求人数占总需求人数的大多数。越大的厂越注重学习能力和对知识的专研程度,相对而言,小厂可能更注重技术匹配度,希望招来的人马上可以投入工作,解决实际问题。一般而言,算法岗的面试主要可能涉及以下几个方面:
(1)既然是算法岗,算法肯定是最重要的,所以常见算法或数学模型是不可少的。这方面内容既广又深,机器学习基本上都会被问到。
线性回归、逻辑回归都是很简单的,注意可能会被问到线性回归的假设检验问题,这里面的涉及到基础的概率统计知识点,要清楚假设检验的基本原理。
基本神经网络,网络结构,基本原理,误差反向传播,链式求导这些知识点必须清楚。注意有可能被要求现场设计一个简单三层神经网络实现异或运算,并且推导误差反向传播过程。
常见的无监督学习比如聚类算法的基本原理和实现过程。
贝叶斯分类,贝叶斯公式务必随时可以手写出来,极大似然估计原理要清楚。
EM算法,这是一个非常神奇的算法,在很多模型求解中有应用,需要掌握。
支持向量机,被称为传统机器学习的皇冠,被问到的概率非常大,对支持向量机的掌握程度会很大程度上体现一个人的学习能力和专研精神。掌握得越细节越好。
凸优化。如果是大厂面试,凸优化被问到的概率很大,因为一个模型的关键通常都是一个优化问题。梯度下降法、牛顿法、KKT条件、对偶问题,这些都是凸优化有关的常见面试题。
(2)具体参与项目。会问到具体的落地项目,具体算法在项目中是如何应用的。实在没有,ACM大赛也是可以介绍。
(3)程序语言。因为算法的实现是需要依赖于某种程序语言的,可能会被要求用某种语言实现某个算法。不过具体哪种语言就和面试官的喜好和熟悉程度有关系了,总之,必须掌握一两种语言,如果不会面试官要求的语言,你可以说用其他语言来实现,也许面试官会通融一下的。
【讨论题】谈谈算法岗的面试内容
679
等2人参与
全部作业
数据加载中...