机器学习机器学习与数据挖掘机器学习和人工智能入门

机器学习求职指导

2017-01-04  本文已影响319人  huanwu1990


一、基础准备

1、编程基础

        编程基础的话主要是要掌握基本的数据结构和算法知识。这个如果是工科专业的同学的话,在本科期间基本一般都有涉及过。当然不是计算机相关专业的同学也不必担心,网上找个相关的视频学学,做做题问题都不大。

2、编程语言

       公司在招聘数据岗位时,虽然对编程要求远远没有开发岗那么高,但一般还是要求精通至少一门编程语言。作为数据岗的话,如果你觉得自己只有精力学好一门的话,那毫无疑问推荐你学习Python。Python作为一门“胶水语言”可以做的事情实在是太多了!作为一个数据求职者,当然你刚开始是不可能做到方方面面都精通的。那具体要学哪些?又怎么学呢?详情请见“DT新纪元”公众号中的“Python”模块。

3、机器学习理论

        要求:掌握典型的机器学习算法,如分类、聚类、推荐、概率图、神经网络。(可以分为初级、中级和高级三个阶段,每个阶段的侧重点不同。)

(1)初级阶段

       初级阶段推荐可以看《机器学习算法原理与编程实践 》和《机器学习实战》这两本书。这两本书更偏向于算法的应用方面,学习起来相对轻松一些。如果一上来直接就啃那些纯算法理论,估计很多人是坚持不下去的。

       再者,一个东西,当你还不知道它是什么,有什么用,以及怎么用时,让你去硬着头皮啃,你一定会感觉很郁闷,并且根本不可能能够深入理解那些理论。

        所以,个人强烈建议不要一上来就贪图那些算法理论的推导,先大胆的去了解各个算法的应用场合并尝试着应用,这对你入门机器学习是一个非常好的选择。

(2)中级阶段

        中级阶段就要开始啃那些算法背后的理论了,前面应用是知其然,现在要开始知其所以然。

       这个阶段重点推荐看林轩田的《机器学习基石》和《机器学习技法》视频,总共三十二课,每一课都相当精彩,细致学下来需要三个月,我指的是细致的看,每一课都应该写笔记,梳理脉络,强烈建议做笔记。

        踏踏实实看完,面试中让你推个svm讲讲adboost,gbdt原理基本就是手到擒来,再辅以李航的《统计学习方法》和周志华的《机器学习》(俗称“西瓜书”)查漏补缺,基础就算比较扎实了。

(3)高级阶段

        高级阶段就是要自己开始去灵活运用并组合各个算法了。这个阶段可以在网上找一些比较典型的项目来进行实战演练。

        推荐学习资源:Kaggle、CCF、Datacastle、阿里云天池等。

       kaggle是国外一个专门做数据挖掘比赛的地方,里面很多比赛比较适合新人,而且里面的氛围也比较好,每个比赛都有对应的论坛,时不时有人会发布自己的代码,大家集思广益一起讨论,可以学到很多。


二、加分项

        作为一个数据岗的求职者,如果你已经比较好地掌握了上面所述的基本的算法和工具,那去面一般的公司应该是机会很大的。但是,如果你的目标是BAT这样顶级的互联网公司,那毫无疑问,你还需要一些“加分项”。

       对于很多岗来说,最大的加分项应该大家也都知道的吧,那就是实习经历了。拥有相关公司一段正规的实习经历对你后面的正式求职帮助还是非常大的,因为很多东西,只有你结合具体的业务去实践了一遍,才能深刻的理解整个流程和它的内部运转机制。

       但并不是每个人都有机会去实习呀,比如笔者自己,因为实验室管得很严,根本就没有时间去外面实习的。那怎么办呢?

       遇到这种情况呢也不要太担心,因为虽然不能出去实习,但幸运的是现在网上有很多的数据比赛呀,比如百度每年和西安交大联合举办的知识图谱方面的数据挖掘大赛,滴滴公司举办的di-tech比赛,今日头条和IEEE联合举办的比赛,阿里的天池大数据竞赛等。如果能组个队参与这些比较有质量的比赛,甚至拿个比较好的名次,那毫无疑问也是很有竞争力的。

       除了比赛和实习外,其他的加分项还有参加开源项目等,这里就不详述了,有兴趣的朋友可以在文章末尾关注我们的“DT新纪元”公众号进一步了解。


三、求职过程

1、专业笔试

       写代码的题基本都是出自《剑指offer》和《微软面试100题》,只要刷几遍,数据结构和算法方面的问题不大,有精力的还可以去牛客网和leetcode上多刷刷题。

        其它笔试题基本都是一些机器学习方面的基本知识,可以参考下过来人分享的机器学习面试题(这个在“DT新纪元”公众号中的“校招题库”模块会陆续整理发布出来)。

2、专业面试

       专业面试主要考察对一些算法理论的掌握深度以及你做过的一些项目情况。

       首先是算法理论方面,建议一些经典算法推导还是自己认真推几遍,再熟悉一下常见的面试题,比如:

1、常见分类模型(SVM ,决策树,朴素贝叶斯等)的优缺点,适用场景以及如何选型;

2、几种模型( SVM , LR , GBDT,EM )的原理以及公式推导;

3、特征选择的方法;

4、过拟合的解决方法;

5、梯度下降法的优缺点;

6、EM算法与 Kmeans算法的关系;

7、L1正则化与L2正则化的区别;

8、…………………

更多题目及答案请在“DT新纪元”公众号中的“校招题库”模块进行查看。

       其次面试官一般会着重考察你的项目情况。之前在参加一个百度的比赛时跟百度的一位高级数据科学家交流过这个问题,他说他在每年校招时除了让面试者手写代码,推几个算法外,剩下的会着重考察你所做的项目。

       比如他会问:“你觉得你做过最难的数据项目是哪个?数据量有多大?你是用什么方法解决的?最后达到了一个什么样的效果?”。因为面试官自己一般是知道目前行业所能达到的水平的,所以,如果某个比赛或项目,市场上目前的预测水平一般在80%准确率左右,你说你能做到86%,那毫无疑问,你就是他们想要的人。

3、HR面试

       好不容易从千军万马中爬过来,终于到了最后的HR面,很多人觉得很简单,然后开始态度不端正。但其实这是个错觉!每年因为最后的HR面被刷的人不多,但绝不是没有。大概没有人想要在这时候功亏一篑吧?因此建议同学们,都熬到这份上了,就再多坚持一下吧。

       HR面其实很简单,只要事先了解好该公司的文化,然后表现出正确价值观一般是没问题的。一般来说,HR面会问到以下几方面:

(1)兴趣爱好

       问你的兴趣爱好其实是想了解你在遇到压力的时候有没有良好的排解途径。从事互联网行业压力还是比较大的,如果一个人什么兴趣爱好都没有,遇到压力没处释放,长此以往,很有可能会出问题的(具体什么问题同学们自己想像)。

(2)家庭状况

      有同学疑惑,怎么面个试怎么搞得像调查户口似的,还要问家庭背景。其实呢很简单,HR只是想通过这个来判断一下你日后是否能够稳定地在公司工作。

(3)三观

       三观就是你的世界观、人生观、价值观。这个看似很虚,但其实还是很重要的,因为真正牛逼的公司都是靠自己的文化来凝聚自己的员工的,比如华为的狼性文化。因此HR必然是要看你的三观是否符合公司的核心价值观的,这个同学们一定要认真对待,收起你的一切玩世不恭(个别奇葩公司例外)。


        如果你觉得上面的分享对你有用,或者你想进一步深入学习数据挖掘和机器学习等知识,欢迎关注我的个人公众号 DT新纪元

上一篇下一篇

猜你喜欢

热点阅读