北美网备份站
标题: 如何在业余时间学习数据分析? [打印本页]
作者: 蜻蜓点水 时间: 2016-2-29 04:40
标题: 如何在业余时间学习数据分析?
我是一个web前端开发者和rails程序员,计算机专业出身,掌握Python、Ruby、C、Java编程语言,具有较为扎实的计算机理论基础。
现在工作之外的时间里想学习一下数据分析或者数据挖掘。现在大数据这个词搞得蛮火的,不少公司也有在招聘数据分析员。
抱着「技多不压身」的想法我也想稍微学习一下。说不定以后的工作也会需要。我稍微了解了一下,数据分析最基础就是用excel来工作。不过我计算机专业出身的人,还是想通过用编程语言的方法来学习。听说R语言不错,我也稍微了解了一下。
不过现在要学数据分析的话,我可以从哪里着手?
从哪里弄到有分析价值的数据?
在开源社区有没有开源项目适合用来学习数据分析?
可以自己动手做个什么项目来实践?
9 @5 e7 b* e1 d2 E9 b1 r
/ H1 ]6 U# u) l+ Z/ R: h f事先说一句,Python Rocks, especially for Data scientist! 不是说 R 不好,我个人觉得 R 别别扭扭的,但是现在 R 很多,而且 R 作为数据分析是一门好语言。选择在个人,我只是说 Python Rocks!8 k2 V8 e" l8 U$ W. h5 j
! ?8 ^5 \" v9 g$ O0 {" K2 \回答你的问题:
4 ~8 q% d6 |2 e1 c8 t4 W( Q1 |% i' m
不过现在要学数据分析的话,我可以从哪里着手?
首先,依据你的情况,最好是有一个你熟悉背景的项目或者例子,不一定是「数据分析」项目,只要你能弄到数据,然后清楚要分析的对象和目的就好。0 G3 s+ H. r% B. w& `' g
% ~" a% l% d: `/ J/ M接下来说方法,现在有很多课程可以帮助你学习这些方法,具体哪个方法好,完全看你的问题是什么,根据目的选方法。具体有哪些方法,请参考下面的书单。鉴于你会 Python,推荐[url=]机器学习实战 [/url]
/ d3 }4 T e7 t5 L: x% v: U8 J" d" o/ e
入门读物:( @1 N: V* n; Y
[url=]深入浅出数据分析[/url] 这书挺简单的,基本的内容都涉及了,说得也比较清楚,最后谈到了R是大加分。难易程度:非常易。
[url=]啤酒与尿布[/url] 通过案例来说事情,而且是最经典的例子。难易程度:非常易。
[url=]数据之美[/url] 一本介绍性的书籍,每章都解决一个具体的问题,甚至还有代码,对理解数据分析的应用领域和做法非常有帮助。难易程度:易。
[url=]数学之美[/url] 这本书非常棒啦,入门读起来很不错!
3 ~6 y A* K/ X/ P- s; `% s
+ l; j) d9 S( X& E2 d
数据分析:
6 T: m6 H. x) ]( f6 D# E5 l
[url=]SciPy and NumPy[/url] 这本书可以归类为数据分析书吧,因为numpy和scipy真的是非常强大啊。8 N; F$ r5 S/ U# c0 }
[url=]Python for Data Analysis[/url] 作者是Pandas这个包的作者,看过他在Scipy会议上的演讲,实例非常强!
8 i3 U- _5 O. V% s
[url=]Bad Data Handbook[/url] 很好玩的书,作者的角度很不同。
& J0 ?8 S' {7 V, g
适合入门的教程:2 q# N8 A/ c; k4 L+ y, u t8 _
[url=]集体智慧编程[/url] 学习数据分析、数据挖掘、机器学习人员应该仔细阅读的第一本书。作者通过实际例子介绍了机器学习和数据挖掘中的算法,浅显易懂,还有可执行的Python代码。难易程度:中。
[url=]Machine Learning in Action[/url] 用人话把复杂难懂的机器学习算法解释清楚了,其中有零星的数学公式,但是是以解释清楚为目的的。而且有Python代码,大赞!目前中科院的王斌老师(微博: 王斌_ICTIR)已经翻译这本书了 [url=]机器学习实战[/url]。这本书本身质量就很高,王老师的翻译质量也很高。难易程度:中。我带的研究生入门必看数目之一!
[url=]Building Machine Learning Systems with Python[/url]虽然是英文的,但是由于写得很简单,比较理解,又有 Python 代码跟着,辅助理解。
[url=]数据挖掘导论[/url]最近几年数据挖掘教材中比较好的一本书,被美国诸多大学的数据挖掘课作为教材,没有推荐Jiawei Han老师的那本书,因为个人觉得那本书对于初学者来说不太容易读懂。难易程度:中上。
[url=]Machine Learning for Hackers[/url] 也是通过实例讲解机器学习算法,用R实现的,可以一边学习机器学习一边学习R。
( S) B }8 F2 o* b \
稍微专业些的:# Y. V( |+ T+ @+ T! K
[url=]Introduction to Semi-Supervised Learning[/url]半监督学习必读必看的书。
" ], g* j! u! D# t k( r% B. v
[url=]Learning to Rank for Information Retrieval[/url] 微软亚院刘铁岩老师关于LTR的著作,啥都不说了,推荐!2 R6 Q- j* t$ v5 h" R% i8 ~2 x
[url=]Learning to Rank for Information Retrieval and Natural Language Processing[/url] 李航老师关于LTR的书,也是当时他在微软亚院时候的书,可见微软亚院对LTR的研究之深,贡献之大。
[url=]推荐系统实践[/url] 这本书不用说了,研究推荐系统必须要读的书,而且是第一本要读的书。
[url=]Graphical Models, Exponential Families, and Variational Inference[/url]这个是Jordan老爷子和他的得意门徒 [url=]Martin J Wainwright[/url] 在 Foundation of Machine Learning Research上的创刊号,可以免费下载,比较难懂,但是一旦读通了,graphical model的相关内容就可以踏平了。
[url=]Natural Language Processing with Python[/url] NLP 经典,其实主要是讲 NLTK 这个包,但是啊,NLTK 这个包几乎涵盖了 NLP 的很多内容了啊!
1 Q: g/ p' J$ c- l/ `
机器学习教材:& x6 d& e' J% E$ |1 p
[url=]The Elements of Statistical Learning[/url] 这本书有对应的中文版:[url=]统计学习基础[/url]。书中配有R包,非常赞!可以参照着代码学习算法。
[url=]统计学习方法[/url] 李航老师的扛鼎之作,强烈推荐。难易程度:难。
[url=]Machine Learning[/url]去年出版的新书,作者Kevin Murrphy教授是机器学习领域中年少有为的代表。这书是他的集大成之作,写完之后,就去Google了,产学研结合,没有比这个更好的了。/ e/ r! [, @6 i9 ]; s J. l2 W
[url=]Machine Learning[/url] 这书和上面的书不是一本!这书叫:Machine Learning: An Algorithmic Perspective 之前做过我带的研究生教材,由于配有代码,所以理解起来比较容易。
, H. [( l" T, z! d
Pattern Recognition And Machine Learning 经典中的经典。
[url=]Bayesian Reasoning and Machine Learning[/url] 看名字就知道了,彻彻底底的Bayesian学派的书,里面的内容非常多,有一张图将机器学习中设计算法的关系总结了一下,很棒。
[url=]Probabilistic Graphical Models[/url]鸿篇巨制,这书谁要是读完了告诉我一声。
5 H k, I' ^/ b% b& `6 X
[url=]Convex Optimization[/url] 凸优化中最好的教材,没有之一了。课程也非常棒,Stephen老师拿着纸一步一步推到,图一点一点画,太棒了。
, w7 y9 P. i) ]/ Y/ \/ R- \+ O9 v" [6 {
( q) n k" E3 P3 g9 Y4 H
3 v+ G# j8 `6 y, [' @从哪里弄到有分析价值的数据?
还是上面那句话,依据问题选方法,有问题了,数据其实也不愁了。! k* E" X; K7 |1 Y% K: L
9 V) ^4 H3 h# R) [+ g9 WUCI是最经典的,不过也比较古老
数据堂最近异军突起,非常值得称赞
国外还有一些网站,比如[url=]http://mlcomp.org/[/url],[url=]http://mldata.org/[/url]你可以看看
另外KDDCUP每年都会针对一个特定的问题进行比赛,数据集也是公开的
最近几年,数据挖掘的比赛越来越多了,你可以去PASCAL上看看你感兴趣的领域,自己搜索一下
[url=]http://www.delicious.com/pskomoroch/dataset[/url]这个是delicious上面一个人搜集的数据集网站书签,比较杂,或许你能找到你所要的(话说delicious改版之前这个里面的内容比现在的多多了)
& s9 |- X8 M0 ]$ {: E
再有就是看具体的做的内容,然后看相关学者都用什么数据集,除了LDC那种变态组织,其他很多数据都可以通过track论文中的信息或者是作者主页上的信息下载到的
做数据挖掘和数据分析都是针对某一个领域或者问题去做,其实也看那个领域会不会有开放的心态去公开数据,前两年在Hans Rosling老先生在TED上公开呼吁之后,很多机构,包括联合国都公开了自己的数据
' R! Q1 n5 ~5 A; [3 s" w+ ~9 Y
, v- E# g& |1 W6 L" _* L( u
补充,在quora上面看到一个问题中的答案涉及这个问题,那个更加全面[url=]http://www.quora.com/Data/Where-can-I-get-large-datasets-open-to-the-public[/url](http://www.quora.com/Where-can-I-find-large-datasets-open-to-the-public)
' ^" }) N& _/ p- M+ P; [4 n8 k& V& U+ L9 J
在开源社区有没有开源项目适合用来学习数据分析?
如果你是用python的话,那么numpy, scipy, matplotlib是基础的,然后就是大名鼎鼎的scikit.learn了。最近pandas也很火,可以提供类似R中dataframe的数据结构,pandas的作者 最近出版了一本书 Python for Data Analysis。
Python Rocks! [url=]scikit-learn: machine learning in Python[/url] scikit.learn 是非常非常棒的机器学习 package,文档详尽,更新速度快!你看例子,看源码,都能学到不少东西!另外,去 github 上搜搜吧,好多好东西!
; `3 Z' a! n& Z; E) X2 p$ X
: b7 b' D" d5 b* r: f0 |
可以自己动手做个什么项目来实践
Kaggle [url=]Competitions[/url](https://www.kaggle.com/competitions) 从最下面的101开始,逐级往上!
& F6 ]/ |) d: N& s5 I1 i9 E" \# f: L; b4 I$ z, O$ Z9 l
Have fun and good luck!
& {+ V" O' c; v
欢迎光临 北美网备份站 (http://beimeilife.duckdns.org/) |
Powered by Discuz! X3.2 |