转载

观点收集:关于机器学习和数据挖掘找工作

来自Orangeprince的回答。

感谢邀请,说说我自己的一些观点,求拍。我觉得从事数据挖掘工作,尤其是在互联网行业,主要需要三个方面的能力,即机器学习和数据挖掘的理论知识、编程开发与数据结构算法的基础和业务理解与沟通表达的能力。

观点收集:关于机器学习和数据挖掘找工作

上面的图里列出了这个行业不同类型的从业者机器特点。

A. 主要是负责做最顶尖机器学习相关学术研究。比如发明一些新的算法,想早期的SVM,LDA最近的一些deeplearning模型。但是处在塔尖的的他们 对于这些算法在业务场景的应用或者算法的实现兴趣并不大,主要精力都花在了理论研究上,比如证明个bounds什么的。写出来的东西大部分发表在NIPS 或者ICML上,一般人也看不懂。他们主要存在于一些研究机构中,如国外高校或者企业研究院。一般企业如果需要这样的人,也是挖过来当震厂之宝吉祥物,不 属于我们讨论的范围。

B. 他们既对算法有比较深入的了解,又有高超的编程技术。他们的数学可能达不到炉火纯青的地步,他们的兴趣也不在于各种繁琐的理论推导。他们对已有算法进行改 进,并且给出最好的实现,造福广大人民群众,比如libsvm,svdfeature,paramater server这样的工具。当然,这样的人才也是可遇不可求,而且他们也需要一个比较大的平台来施展自己的能力。他们的工作应该能够成为一个企业数据挖掘的 大杀器。

C.他们对算法有一定的了解,但是不够深 入。他们开发的经验有限,对于数据挖掘的应用了解也不够深入。比如很多理论方向的研究生博士生可能就处于这个状态,即使能够发表一些看起来不错的文章,但 离真正做出好的实际的数据挖掘工作还有很长的一段距离,需要一步一个脚印的踏实前进。

D. 他们是算法界的大神,码农中的翘楚,横扫各路ACM ICPC比赛的英雄。因为各种机缘巧合,他们没有选择数据挖掘作为自己以后的方向。虽然他们对于机器学习理论和数据挖掘的应用场景不是很了解,但凭借他们 的天赋,假以时日,也一定能在这个行业有所作为。不过,其他领域也需要他们,也有他们大展拳脚的空间。

E. 他们属于一般的码农,能写的一手好代码。但是对机器学习知之甚少,而且如果思维不够灵活,可能也会在业务的理解上有一些障碍。另外,沟通交流的能力通常也 是码农们所欠缺的。对于应届生,如果确实有这个天赋,不妨一试;对于工作多年的码农想转行,也需要付出比较大的努力。

F.他们的工作贴近业务,对数据也有一定敏感性,可能是excel和sql的高手。但是这和数据挖掘的工作还有一定差别。最适合他们的岗位可能是BI或者数据产品经理。在这些岗位上,他们同样可以发光发热,做出卓越的贡献。

G. 他们有一定的算法基础,同时对数据挖掘的业务落地也有丰富的经验。他们的瓶颈主要在于编程开发能力,这在大数据的场景下尤为明显。毕竟最好的方式是自己想 idea,自己实现,至少实现一个原型。那么R或者python是一个这种的选择。没有coding,再好的算法也出不来。

H. 对机器学习算法有一定的了解,熟悉各种业务,也有一定的开发能力。在数据挖掘的具体工作中,可以从业务出发,设计算法,也能对算法进行基本的实现。实际上 这样的工程师还是很多的,特别是有一定工作经验的。他们的工作经验会对数据挖掘的工作起到很大的帮助。他们在算法以及编程的上的能力可能不是很高,但是足 以丰富他们的思维方式,也方便与人沟通。

I.对机器 学习算法有一定了解,也有较强的开发能力。适合做偏向开发的数据挖掘岗位。他们和I类的工程师密切配合,应该能有比较好的产出。他们很可能是学校的应届毕 业生,学习了一些理论知识,也锻炼了开发的能力,但还缺乏实际的工作经验。互联网的数据挖掘岗位正是他们大展拳脚的好地方。

J.看起来是最好的,各项技能都很全面,也很适合做leader。但是这样的人毕竟可遇不可求。另外,每一项都好其实也就是每一项都不好,人的精力总是有限的。我觉得在一到两个方面做的比较突出,同时另外的方面也不要太弱以至于成为短板,这样就挺好的了。

说的有点跑题了。。。回到正题上来.

根据上面说的,招聘主要根据H和I两类模版挑选人才。觉得考察的话,除了基本的开发算法,还有以下几个:

1.机器学习算法的理解,比如常见的算法的基本思想原理、应用场景、特点和求解方法。可以从两个分支考察,一个是使用经验,比如实际的一些参数设置啊,使用技巧什么的,面向H类。还有就是一些算法的实现方法,面向I类。

2.实际的项目经验,特别是数据挖掘工作。一方面考察他之前的工作情况,另外也看他的归纳总结能力与解决问题的能力。针对项目的一些细节提问,也可以看出他的做事方式和对一些知识的掌握情况。

3.对于业务的理解能力和敏感性,可以结合实际工作中的一些问题来考察。即使没有实际工作经验,也是可以看出他们在这个方面的潜力。同时也考察出理论和实际结合的能力。

4.沟通表达能力。相对于程序员,数据挖掘岗位对这个能力的要求高出不少。在整个面试的过程中,其实都有对这个能力的考察。

正文到此结束
Loading...