Machine learning 如何刷题
机器学习是近些年才火起来的,主要有下面几个原因:
1.大数据提供了大量数据基础
2.分布式的机器学习提供了算力
3.算法方面的精进。
但是作为entry-level数据科学家,主要应该掌握包括统计里的线性回归,decision tree,SVM,基于basin的classification,聚类,以及机器学习中使用到的知识,例如降维算法等。
理论上来说,ML有三种考法,第一种讲解算法基本原理,第二种讲解算法的本身,第三种给一个真正的问题,让你使用机器学习方法来解 法由深度优先改为广度优先会带来什么后果。
除此之外,把关于data challenge的内容刷一遍对于机器学习也有很大提升。
需要刷算法题吗?如何刷
编程为数据科学家求职的必备技能。为什么大数据在近10年发展十分迅速,其实统计模型以及概率东西存在很长时间了,是因为分布式机器使得大数据成为了一种可能。
因此,想要处理大数据,编程就成为了必不可少的技能。一个程序员编程的好坏最核心的内容就是对数据结构算法的理解以及应用。面试的时候可能不需要过多的工作经验,只需要会使用Python以及SQL就足够。但是在工作以后,如果想要在工作中有比较好的提升,沟通以及story telling技巧也是十分重要,需要让非技术人员理解编程的内容。
如果想要提升自己的编程能力, leetcode是众所周知的绝佳资源之一,到网站上面后,第一个需要做的是理解数据结构的原理,支持的方法,以及效率如何。了解这些原理之后,可以多尝试一些网站开始刷题,刷题难度从简单开始。如果基础薄弱,一开始刷题数量不需要过多,50-100道题目即可。但是如果想要从事数据工程师工作的话,那么刷题就要从200道题目起。Leetcode上面题目的数量一直在陆续增加,如果想要全部刷完,那么时间可能需要半年到一年。
因此,刷题时可以选择性的选择题目,不需要每一道题目都做一遍。面试官在面试时,不仅要考编程技巧,行业知识,还要对数据结构的基本理解。作为一个数据科学家,机器学习,分析,以及数据库技能的优先值可能要高过算法题目,首先需要搞定优先值较高的技能,再选择性刷题。同时还要根据自己工作岗位的title来选择刷题的数量。比如如果从事偏IT行业的工作,则需要多刷一点。反之就可以少刷一点。