学习大数据最有效率的方法就是在实际项目中操作,如果只是单纯的看看书,上上公开课,能够培养起对大数据领域全方位的认识,但是如果没有真刀真枪的实战,很难培养出真正的数据挖掘水平。
数据挖掘学习安排
1 工具的学习(排列有序)
python(我用的python tutorial,细节可以查书learning python,然后查询一些文档比如,numpy,matplotlib官方文档)。
java (我先看的 head first java, 然后thinking in java看了一部分)。
linux shell (越熟越好,我只是刷了入门书的前半部分)。
hadoop (需要会折腾,在win电脑上不好配置,如果实验室有环境或者有人帮忙带带入门最好)。
2 机器学习入门(排列有序)
集体编程智慧(把例子刷一遍,一方面是理解入门数据挖掘,一方面更熟悉下python)
数据挖掘导论,机器学习(tom mitchell),Andrew Ng的机器学习课程,机器学习实战(主要参考下书中的代码,书中代码并不是非常完美,主要用来入门)。
你先用数据挖掘导论了解一些基本的概念,用Andrew Ng的机器学习课程进行比较细致的学习,其中要实习一些算法的时候可以参考机器学习实战,某些算法看不懂时候可以参考其他书籍.
Kaggle找几个最简单的题进行入门实战。(比如泰坦尼克号那题)。可以适当了解一些机器学习的具体应用,如:推荐系统、图像处理、语音或搜索。(结合自己的兴趣专业选择某一个深入学习)。
3 数据结构基础
算法导论+在线题目
总结:看书要多动手,多总结,比如看了个朴素贝叶斯算法,最好把这个方法总结一下,然后编写代码实现简单的例子。
另外如果想找份工作一定要多多实习,只要有一份不错的实习经验找个好工作的概率大大增加。
下面就掺杂点正式校招面试的问题吧,大致被问到的主要有以下几类:
1、项目相关问题,建议不要在简历上写岗位无关的项目啦,没项目就多参加些比赛,在此必须感谢Kaggle、阿里天池、DC、Kesci等平台给我们提供的这么好锻炼机会~在github能搜索相关冠军源码学习,kaggle分享为最。同时保证对简历上项目算法细节非常了解,被问住了就有点呵呵了,甚至相关知识点能延伸去和主导与面试官聊天,平时还需多看相关博客了解点目前机器学习前沿知识,深度学习与人工智能等等,面试官还是很希望听到内容,把面试官聊嗨聊爽了面试也就结束了。
想学习大数据或者对大数据技术感兴趣的朋友,这里我整理了一套大数据的学习视频免费分享给大家,从入门到实战都有,大家可以加我的微信:Lxiao_28获取!(备注领取资料)。也欢迎进微信群交流,或者获取Java高级技术学习资料。
2、机器学习算法理解,面试官挺喜欢问聚类、LR、SVM、随机森林、GDBT、xgboost、EM算法、神经网络等等常规算法,以及简单算法聚类、LR、随机森林等hadoop分布式实现。有时也要求现场推导,常见的就是LR求导(必考,划重点啦),SVM的最优化公式,优化方法BFGS推导等,李航的《统计学习方法》与周志华的西瓜书刷三遍准没错。扩展方面,比如自然语言的word2vec原理(word2vec 中的数学原理详解(三)背景知识)与主题模型LDA,图像方面可以聊聊alexnet(论文很赞)、vgg-net等,推荐系统,计算广告FFM算法,AlphaGo原理。
3、数据结构算法,毕竟码农基本功,一般问题不会太难,仔细想没什么问题(适合国内公司bat,国外的公司貌似会比较难)。多练习点递归,哈希,动态规划,广搜和深搜图论相关,多刷leetcode,多刷刷中级、高级就行了
4、hr问题,什么人生观价值观,职业规划,个人优缺点,为什么选择我们公司等等,多刷知乎此类问题,客套话多练,别说的太老实,切忌轻浮嚣张自满情绪。阿里的hr面还是卡人的,得注意~~
5、反问问题,有的公司会给面试者反问机会,如果不反问面试也会很尴尬,多准备些问题反问有时还能继续聊嗨。