大学生自学数据挖掘如何提高能力接近实际工作标准?

已邀请:

gus

赞同来自: 安之若素 candy 宝宝

Hi, 首先我觉得学习新手学习数据挖掘不要走弯路,走了弯路你会发现你什么也没学到,很打击士气。
python绝对是目前为止最适合学习数据挖掘的语言,没有之一,请忘掉c系列的语言,这不适合一般智商人群进行数据挖掘研究。
hadoop不一定需要java,python也能灵活使用hadoop,包括spark
李航的那本书很好,但是看完你可能什么也做不了。推荐你了解一下python的scikit-learn
机器学习实战那本书也很好,不过没有理论基础,你还是看不懂,更何况你python基础都没有。
请你换一本教材:数据挖掘导论
或者去听一们machine learnin 的课程!

安之若素

赞同来自: candy 宝宝

Ng的课 bishop的书 手写的实例 实践的经验。


1)ng的课。广为流传的coursera的那门。先过slides 过完1.5倍速看视频查缺补漏(ng正常语速太慢易瞌睡,英文不行开字幕),看完视频做题。编程题虽然是Matlab的建议做一下,(其实就是熟悉公式如何用代码实现和矩阵计算,找找感觉)。

2)bishop的书。广为流传的PRML。对于找工作的你来说,这本书看一遍熟悉一下基本算法概念即可,数学好可以过一遍推导,一般的话通读掠过公式推导。

附一,如果目标职位的算法工程师以R为主的话可以看一下an introduction to statistical learning with R

附二,李航的书是很好(薄,精炼),但不适合入门的人看。偏难。不推荐。此外不推荐的书还有mlapp,esl,mitchell的书 jiawei han的书。(厚 难 老 笼统)

附三,抓一本书看完,不要贪多。看书要配代码实现,见下条。

3)手写的实例。
python熟悉sk learn 熟悉numpy等,官网教程一大把。

Java可以去看看weka,开源的,有本配套书。



熟悉了以后,去把经典算法实现一遍(复习对照书和课)一定要自己实现!看代码不如写代码。


机器学习实战这类实战的书,可以用作参考,不建议耗费精力去把细节搞懂或是照着书实现。私以为要实战不如真的去实战得好,见下条。

4)实践的经验。自己搞和公司里搞是两回事。可以接触到前沿技术,另外也可以熟悉工作到底是怎么回事。如果不实习,可做kaggle kdd。建议做往年的/已实现的。还有一条路是去做名校相关课的assignment。经验增长很快。这时,建议专心使用之前学习的各种语言中的一门,推荐python或R。


为什么呢?手扶机器学习数据挖掘机技术跟手扶挖掘机技术一样,会开不行,还得会挖。算法离不开数据,处理数据和建模有时甚至比算法重要。私以为,实践中学习数据预处理选参选特征的脏活累活和各种奇技淫巧,比知道数据挖掘十大算法优缺点更有竞争力。


最后说几句。
这些建议是为了找工作,不是为了搞学术。找工作要的是有经验能干活,理论合格即可。有限时间变成最适合工作的人,以这个目标努力吧。

有实习经验其实工作基本没问题。为预防面试遇上热爱推公式的geek 准备应聘前把理论公式推一遍。可以参见问题“如何准备机器学习工程师面试”。

嗯当年技术面让我手推svm来着。。

candy

赞同来自:

哈哈 很凑巧,我也是本科自学数据挖掘。
本人是数学系大三。所以在数学方面,勉强自足,但还是要时常翻一下数学分析和高等代数。
如果你的要求是接近工作的话,那么我的建议是——“参加比赛”。
我上次参加阿里的移动算法大赛之后,去面腾讯的基础研究岗的实习生。
面我的Boss看到我参加过这个比赛,说了一句“你这个比赛已经和平时工作很像了!”
所以,想要实战,那么就去找比赛。
再说说比赛来源:
1、各大互联网公司举办的赛事
2、kaggle上的题目来练练手,顺便看看人家怎么做
3、哦,对了最近KDD不也在做嘛,而且难度不高,也挺有意思,有兴趣也可以参与一下。
一家之言,欢迎讨论。

要回复问题请先登录注册