听说一个来美国读计算机博士的小留因为做不下去了,自杀了
今天刚刚我回答网友什么是Data Science的:
古希腊Pythagoras说过,万物皆数。
早期计算机语言,Fortran和lisp,介于不同的理念。Fortran认为最基本的是number,而LISP认为是函数公式function。所以产生了2种不同的语言,Fortran以变量为基础,任何结果从基本的几个变量得到,而LISP以function为基础,任何结果都从不断调用函数得到。
后来发现,这些都不能解决实际问题。最重要的是Data,所以产生了Set language,以Edgar Codd的Relational 数据上的SQL把几乎所有的应用程序都是建立在 Data driven之上的。但是SQL的问题在于一是速度慢,二是不能处理非结构性数据,所以NoSQL的大数据开始兴起,Data mining从cube分析转向大数据。人工智能从以前以为的算法问题,转化成数据问题。现在的人工智能,machine learning, deep learning,都可以囊括在data science里面。data science概念的外延不断扩大,几乎无所不包了。
另外,大学里面的data science学不到什么,顶尖的都在工业界。Data science的重大进展几乎都是工业界做出的
R不是革命性的语言。而SQL是!
Simula是革命性语言一样,因为是第一个OO语言。不是单纯的把世界看成number,或者function。而是看成一个组合Object。里面有member, 有function,有各种acess level
然而,如何整合relational database(SQL)和OO object(C++,Java)成了关键,加上文件从 XML到 JSON。
R基本上不重要,就像SAS不重要。他们能做的,Python也可以做,而且做的更好。学习data science,不是学习一门语言,而是学习从语言(Python也好,R也好),到技术(从statistics,到数据分析,到machine learning),到平台(从 RapidMiner到Anaconda, 到Matlab,,,)到构架(从TensorFlow到Hadoop),到Visualization(2D到3D模拟,从 surface rendering 到 volume rendering)....
上面这些技术,基本上全是工业界的发明创造,老实说,大学落后工业界几个年代,大部分大学教授根本跟不上工业界的步伐。前面我讲过这个观点,受到不少网友嘲笑。但我还是要说,在大学攻读什么计算机博士,完全是在浪费金钱和生命 (除非极个别的几个大学计算机大拿教授)