6-1 不懂算法,如何准备机器学习?

说起大数据,许多人就会想到机器学习,人工智能。
而说起数据分析,也会有许多的同学问道:
“数据分析需要准备算法知识吗?”
“数据分析在日常工作中要啊做模型调参数吗?”
“数据分析的笔试面试对算法的考察深入吗?”
在互联网公司里,数据分析岗位和算法岗位是分开招聘的。数据分析的工作场景更加偏向于业务,侧重于利用统计学、简单的模型知识来分析业务问题。因此在面试考核时,数据分析岗位对算法的要求不会太高。

【算法提问模式】

对于数据分析岗位的同学来说,算法类的问题难度可以划分为3个梯度:

第一梯度:简单版

“看你在简历里写过逻辑回归,请你介绍下这个算法吧”

这是算法的入门面试题。对于非计算机和数学专业的学生来说,很大概率会遇到这种问题。面试官会从你的简历中挑选一个你提到的算法,让你进行简单的介绍,不会过多的追问细节。对于这种问题,往往从算法原理-算法应用场景——算法优缺点展开介绍即可。例如:

逻辑回归是一种评估事件发生概率的分类模型,能够用于计算二分类问题。
前提假设是样本符合伯努利分布。在逻辑回归模型里面,有一个很重要的函数(sigmoid函数),sigmoid函数能够将样本的预测值映射到0-1范围内,呈现出S型的分布。在进行分类判断时,设定一个概率的阈值,大于阈值则样本预测值为1,小于阈值则样本预测为0。
逻辑回归的优点在于原理简单,容易向业务解释,并且可以调用的包也很多,免去了自己写代码。缺点在于预测结果呈S型分布,两端的概率变化非常小,中间的概率变化十分剧烈,难以找到阈值。

因此,在这一阶段,准备好算法的基本原理(能够说个大概),知道算法的应用场景并举例,概括算法的优缺点即可。

第二梯度:进阶版

“看你用过逻辑回归,如果有很多的特征高度相关或者说有一个特征重复了100遍,会造成怎样的影响?”

这是算法的进阶面试题。在数分的校招面试中,面试官并不仅是业务部门数分组的人,也会有算法组、模型组的参与过来,甚至有可能业务部门的数分面试官自身对算法也有一定的了解。因此会针对简历上常用的算法进行延伸提问。对于这种问题,需要我们在准备算法知识的时候,多看看别人博客的面经,把某种算法相关的常见问题都整理好。例如:

如果损失函数最终收敛,就算特征高度相关也不会影响分类器的效果:假设只有一个特征,将它重复100遍,实质上将原来的特征分成了100份,每一个特征都是原来特征权重值的百分之一。在随机采样的情况下,训练收敛完后,还是可以认为这100个特征和原来那一个特征扮演的效果一样。

可见,在这一阶段,需要比较深入的挖掘算法的原理(但绝大多数的题目网上都有),也有可能会提供场景,让你描述算法在此场景的应用。

第三梯度:高阶版

“看你用过逻辑回归,你能给我推导梯度下降法的求解过程吗?”

这是算法的高阶题目。绝大多数投递数据分析岗位的学生来自数学、商学、管理学、甚至物理、化学等专业。在决定了求职方向后,真正用来准备面试的时间并不多,在这么短的时间内,很难对算法有深入的了解。

手推算法、写公式这种题目算是高难度的面试题了。对自己要求较高的同学,可以尝试手推算法。如果时间的确不够充足,没来得及准备(或者实在看不懂),可以诚实的向面试官说明,毕竟对于数据分析岗位,算法只是加分项,不是必备技能。

【算法准备原则】

对于完全没有算法基础,数学能力也不突出的同学。建议在准备算法内容的时候,放低难度要求,遵循以下的原则来做准备:

算法知识会涉及到大量统计学、微积分内容,越复杂的算法,理解难度越高。因此,可以先整理好逻辑回归、决策树这种简单的算法,对于小白来说会比较友

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

<p> 为什么要学习本专刊 (1)数据分析面试日益激烈,招聘门槛提高,对业务、技术的综合考察难度上升; (2)网上对数据分析面试题型的整理与解析质量参差不齐,缺少框架清晰、内容全面的学习资料; (3)直击数据分析面试热点问题; </p>

全部评论

相关推荐

Wy_m:只要不是能叫的上名的公司 去实习没有任何意义 不如好好沉淀自己
点赞 评论 收藏
分享
评论
点赞
2
分享

创作者周榜

更多
牛客网
牛客企业服务