作者LITTLEN (有没有那麽虽阿~~~)
看板Statistics
标题[讨论] Data Science
时间Tue Jun 3 12:14:21 2014
看到留学板20134篇CS or Statistics讲到data scientist的文章,
身为统计人 我就把一些想法跟大家分享,
我目前在某个financial company当data scientist.
资料的处理量很大, 常常整理资料要从terabyte的资料挖我需要的资料去fit model.
不可否认我附近的data scientist几乎都是CS背景的,
也有一些当相关领域的faculty过又回来敝公司工作.
我觉得data science应该分三个方面来讲
1. Data Insight
2. Modeling
3. Software/Programming skills
(省略Hardware..因为这是资源的问题)
对我来说, 统计的训练主要是针对1,2; 3的话可以自己学习,
因为当data scientist不需要了解电脑太底层的理论会应用就好
程式语言练习久了自然就可以驾轻就熟,
我没有修过Hadoop方面的课, 全都是自学的也可以被附近的大学找去教这方面的课程
这个连结作者讲到Data scientist需要会的hard skills,
http://nirvacana.com/thoughts/becoming-a-data-scientist/
里面的Subway图我觉得最难的是2-4-5这条,
里面最重要的是一些Modeling理论跟统计学,
这些基本功夫需要花时间去累积的,
如果可以早点念一些数学的课程, 真的会对念这些东西很有帮助,
而这些就是透过统计系的课程去学习,
然後因为要fit的资料一多 练习多一点经验, 久了也可以累积一些Data Insight了.
统计给我的训练就是这个主干线训练好了,
接下来就是要往旁枝末节的skill让自己能透过自己的Data Insight
去找到要的资料进而去Modeling,
我自己来说大概会里面的6-7成Orz...不过我想已经够用了
有时候真的看到一些CS的人拿到资料就直接fit model说结果怎样,
然後被我问到基本的问题就发现他们都不大管model的适用性问题..
画一个Histogram就可以看到资料有问题了, 不过他们不会去注意这些,
我想这就是统计人的价值, 我们可以看到的面向跟CS训练的不大一样.
我们念的理论"应该"相对来说也比较多这个才是最难训练跟累积的..
这需要好几年把功力累积出来..
我想板上的一些学长姐, 也有教授们都是这方面很强的..
你会看到一些Hedge fund或一些大金融公司要做modeling的工作,
fresh graduate 你会看到很多都是这些数学方面硬底子的人..
找工作方面我觉得除了看connection跟自己的实力, 数学统计好的话, 是真的还蛮吃香的..
不过以工作机会来说真的CS还是占美国的大宗.
这方面我之前有一篇找工作的文^^ 有被分享过来这个版就不多赘言了..
针对Programming Skill来说, 主文的第七,八页可以参考一下
http://www.oreilly.com/data/free/files/stratasurvey.pdf
就我看到Data scientist工作比较少用到Matlab, 反而Python跟R比较多
Python有一些平行计算的问题, 所以见仁见智
R的话做平行计算有很多Package,当然重点就是统计方面的modeling还是R建构的比较完整.
以下是我前几个月跟朋友讨论, 我对Data Tool的一些Comment (主观意见 勿战):
这是Strata 2013年对33个国家37个美国的州认为自己是做Data Scientist相关工作的问卷
(我猜是有在他们公司注册的人送问卷请他们填写的)
其中Data Tool,SQL是最高的(当然一堆公司的Data就是都放在资料库.所以这个是基本的)
SAS/SPSS做big data不知道优势在哪, 在Strata conference我特地去听SAS 某VP的报告..
结果其实没有很多人去听他们怎麽做这方面的Infrastructure.
Hadoop方面如果包含Pig, Hive应该有很大的成长工间.
不过 HIVE应该也可以跟SQL混在一起考虑才对,未来应该可以成长到第三名.
Excel在第四名,有点意外,这个应该还会继续掉才对,可能看结果才会用到..或者需要借助pivotal table分析与呈现才会用到..
目前我不知道未来Excel可以怎麽分析big data.
R跟python用的人比例差不多,
不过R比较偏向分析软体所以Data Role用的比python Data role多,结果很make sense..
Java算不少人用,也会跟Hadoop绑在一起,因为Hadoop基本上是用Java架构出来的,
如果会Java/Python可以写User Define Function应用更多
Mahout是machine learning/data mining针对big data建立出来的library,
我是觉得未来应该会爬到中间的位置.
D3是啥 包含Tableau 跟 Ruby 我有看过不过这三个东西我摸都没摸过Orz.
基本上我觉得based on SQL language的RDB很重要
加上R/Python, hadoop (pig, hive, hbase, oozie), mahout这些skill
应该可以继续在江湖打滚很多年..
EXCEL, SAS/SPSS就....以後在这领域被淘汰的机会不小(理性勿战)
P.S 後来这几个月, SAS好像有积极推在Yuan上面处理big data的platform,
最近他们很努力再Promote, 不过成效还是得看看, 可能板上会有人比我清楚
念理论的统计数学方面, 真的就是要受到一段时间的训练最好有人带入门,
Programming花时间去摸也多去网上看别人的sample code
会让自己增加这方面的功力
(R 的document 资源很多 我也是自己慢慢练到後来可以写Package自己用的)
另外多去外面跟人讨论, 我知道台湾其实有一些学弟妹有在经营R group,
Linkedin 也有"很多"相关的group文章可以参考一下.
在NY 有一些regular events可以参加..我想别的地方应该也有..
我比较常参加的是NY meetup
http://www.meetup.com/
例如本周有JP Morgan针对Data science的内容要做报告跟讨论, 多去参加多去学习看别的Data Scientist怎麽去分析资料的
参加这些都一定有很大的帮助, 不只学习也可以Social.
P.S Kaggle也偶尔可以看一下,看业界释放出哪些资料做分析
统计其实占的重要性越来越大,
可以去看例如Harvard, Columbia 的GSAS Dean现在是统计人, 这都是以前没有的!
另外文章里面推文讨论的NYU or CU哪个Data Science Program好, 其实见仁见智,
我也不便多表示意见, 毕竟有几个老师我当过他们的TA或修过他们的课,
我觉得两个学校的Connections都足够,都可以帮助找到工作的
只是找工作花的时间长短而已.
多念点理论让自己了解不要乱fit model後 花点时间摸一些软体,
例如我是把R摸熟之後才开始用R去做平行计算 (Unix基本的要会)
进而学习到一些MapReduce的概念,
我一开始平行计算使用的工具是Condor/Torque, 後来慢慢的才去学Hadoop的..
如果有机会可以学一些Java/C方面的课程我也强烈建议,
不过Data Scientist来说不是特别需要.
我可以code Java/C 可是主要就是做数学运算比较快, 不是要写到物件导向那样..
让我再选一次, 我还是觉得数学/统计这种硬理论的科学学好才是比较难训练跟累积的,
我一样会先去念这些课程 这些让我看新方法来说都很快可以吸收,然後多分析资料
增加多一点资料的敏感度.
P.S 有些不足, 我有空会再补强~不过这纯粹是我的观点 也希望有人可以指出我的不足
我这边也列上我加入的几个linked group,常有人在那边post东西或问问题.
http://ppt.cc/mQ83 (big data)
http://ppt.cc/rqnH (big data)
http://ppt.cc/2u6U (data scientist)
http://ppt.cc/WhFR (KDnuggets Analytics, Data Mining, and Data Science)
http://ppt.cc/p9D- (R Project)
当然还有一些Machine Learning的Page很多就自己google吧:)
KDnuggets是算比较Active的group 我每天都会收到这个group的信...
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 108.53.78.19
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Statistics/M.1401768864.A.425.html
1F:推 ghd123483:推!! 06/03 12:48
2F:推 gawyfish:推~ 06/03 13:21
3F:推 Yukirin:推 06/03 14:10
4F:推 ga014528:推~ 06/03 14:45
5F:推 Wush978:推 06/03 18:04
6F:推 bmka:推最後一段 06/03 19:23
7F:→ bmka:我这种老世代的人常常有个疑惑,到底data science 是什麽? 06/03 19:29
8F:→ bmka:听过data scientist的演讲,觉得他们的研究比较接近EE做的讯号 06/03 19:30
9F:→ bmka:处理或CS的ML.统计在里面的角色其实很弱(就统计方法的novelty 06/03 19:32
10F:→ bmka:来说). 我现在常跟小朋友们警告,想站稳脚步,一定要有不可取代 06/03 19:33
11F:→ bmka:之处,这样才不会在这个快速变化的领域被淘汰.现在因为潮, 06/03 19:35
12F:→ bmka:一堆学校开data science的课或学位来赚钱,目前市场还没饱和 06/03 19:36
13F:→ bmka:进去很容易, 但是等到大量快速生产的data science毕业生进入 06/03 19:38
14F:→ bmka:市场, 届时门槛要求就会变高了. 到时候不要变成写程式写不过 06/03 19:39
15F:→ bmka:CS专业的人,统计又做不过统计专业的人,沦落为second class 06/03 19:40
16F:→ bmka:data scientist. 06/03 19:40
17F:→ bmka:几年前跟一位从学界(UW)到业界(eBay, EA, MS)的朋友聊 06/03 19:46
18F:→ bmka:他说其实他的工作用到的"统计方法"都很简单,但是统计的训练 06/03 19:47
19F:→ bmka:让他对hypothesis formulation, data structure有比其他CS 06/03 19:48
20F:→ bmka:背景的人有更深刻的理解,更重要的是, 他很清楚要从复杂的资料 06/03 19:49
21F:→ bmka:结构抓什麽data才能回答什麽样的问题,这样抓的data会不会有 06/03 19:50
22F:→ bmka:bias,做的结论能generalize到什麽程度,都是统计人的直觉反应 06/03 19:52
23F:→ bmka:也是在这个市场统计人的优势,只是很多小朋友本末倒置 06/03 19:55
24F:→ bmka:只知道追programming language却忘了自己的根在统计 06/03 19:56
bmka大说的我很认同, 资料一多变成大海捞针,
怎麽要找到你要的东西印证你的猜想很重要
这真的就是我们强调的统计训练才能学到的东西
CS来说 就我上面讲的1,2,3 比较是偏向2,3 不过2理论部分没有我们训练紮实
我个人觉得Data Insight很重要,
这样才不会浪费太多力气还是Garbage in garbage out
还有一点就是在资料量爆炸的时代, 其实简单的model不要搞得太复杂..
fit 对的又简单的model 就够了,不要另外花额外50分的努力只为了改进1~2%
有时候我觉得很没有意义,任何东西就是结果会reverse to the mean..
时间久了,新的资料进来多了,任何model结果其实不会差太多
不要很费心力去fit很困难的model....
如果有注意几年前Netflex competition的 他们希望有人可以把他们结果improve 10%
结果花了几年的时间,真的有一个group达成了,当然我觉得他们方法有点作弊
就是参加好多次知道结果後再继续based on current model再做,再加上别人的model
结果model 超复杂的, Netflex最後连implement都没有,因为成本效益不合
可以把问题用简单的model就解决,不要差太多就好了,不过这功力需要很深
我也还没到那种境界, 不过我们的训练可以找到该用的model 做出不差的结果
让生活过得轻松点也好:)
25F:→ bmka:Anyways,这种讨论很好,请原po继续分享 06/03 19:59
我其实就是把我想的分享出来, 希望可以让多一点人不要跟我一样花很多时间
而没有把该有的基础打好,或太晚才了解数学/统计的重要,
我大学不是数学跟统计系更不是CS的..
其实我大学毕业都没啥coding,可能只有matlab SAS在修课的时候做简单的coding
(这证明coding真的自己学就好了:P )
不过大二接触 统计/data mining後 实在太有兴趣了..
最後发现我想要学会的东西基础都在数学系里面..
就花了两年多在数学系修课 (虽然也没修得多好..不过有打下一些基础)..
到後来念Phd才申请统计的, 我觉得我算蛮幸运的了!
如果有板友有问题想问也可以站内信回我, 希望可以帮到对这领域有兴趣学弟妹的忙:)
26F:推 lin15:Excal应该是因为末端看报告的人在用所以很重要吧? 06/03 22:30
其实这几年有一个Datameer软体..就是完全类似Excel的操作介面..
这软体很多公司在用, 不过我用不习惯
27F:推 laba1014:推 06/03 23:13
28F:推 evilove:大推! 06/03 23:43
29F:推 BugEater:推 06/04 05:17
※ 编辑: LITTLEN (108.53.78.19), 06/04/2014 11:00:30
30F:推 Ajax3:推! 06/05 09:26
31F:推 tseng0211:哇!!!我是那篇文的原po,还好有来逛stat版~感谢你 06/06 01:34
32F:→ tseng0211:的回文!很棒! 06/06 01:34
33F:推 grimmq427532:在大学生活的开端看到这篇文章实在是我的福气 06/06 01:40
34F:推 yanchenglin:大推! 06/11 14:26
35F:推 johnny94:这篇写的好棒 06/11 20:02
36F:推 davedave91:大推 好实用的分享 07/01 11:28
37F:推 thea:我自己在游戏界的经验是,用SQL做完大部分的资料整理 07/07 00:42
38F:→ thea:剩下的东西都到excel基本上已经足回答所有商业问题了... 07/07 00:43
39F:推 MiJChou: 两年前的文章现在还是很受用!!推!! 07/25 19:46