成为数据科学家,到底需要怎样的学历?高中,大专,本科,研究生?
想做数据科学家的话,该不该读硕士、博士?本文作者根据自己的工作经历,基于收集过的上千样本给出了一个非常规的答案:这些都不是必需的。作者甚至认为,适当的时候本科辍学更好……
我是一个辍学的 PhD。
这意味着,虽然我已经完成了许多研究生课程,但最终收获的只有「辍学」这么个字眼。如果博士顺利毕业,你就是万千书呆子中的一个。但读了两年半后辍学,你就是一个前卫的书呆子。人们会想知道你接下来还会做些什么。他们会说,「马斯克也是从研究生学院辍学的。这家伙可能跟他一样!」
我之前的绰号是「无法确定未来、下 4D 棋的书呆子天才」,从研究生院退学对我的名声有了一些影响。我越来越清楚地知道,不是所有人都需要读博,你选择读博或者中途辍学都可以。硕士学位也是如此。对于一般有志于 STEM 的专业人员来说,情况的确如此,而对有志于成为数据科学家的人来说更是如此。我马上就会讲到原因。
在这里我还是要推荐下我自己建的大数据学习交流qq裙:458345782, 裙 里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据开发相关的),包括我自己整理的一份最新的大数据进阶资料和高级开发教程,欢迎进阶中和进想深入大数据的小伙伴。
但首先,你可能想知道我是怎么知道这个的。
事情是这样的:我在一家数据科学导师创业公司工作。通过这份工作,我大概采访了一千多位有抱负的数据科学家——有些人有博士学位,有些人有硕士学位,有些人有本科学位,也有一些人在攻读各个学位的过程中辍学了。这给我留下了罕见而珍贵的东西:具有统计学意义的数据科学职业生涯故事的重要样本。
我从这些故事中了解到:不同学历对不同时间、地点的不同人来说都是有意义的。但是因为大部分人都会咨询大学学院的研究生导师来决定是否要进入研究生学院,因此他们在注册之前并不会完全了解研究生院的情况。
从一位前学术转型的创业公司创始人那里我了解到:不是所有学位都适合每个人。下面会陈述原因。
01
博士学位
「警告:以下内容可能会引起很多博士的不适。我提前道歉。」
「我看很多数据科学工作都需要博士学位。我一定要有博士学位才能成为数据科学家吗?」
当然不了,这不是一码事。
不要误会我的意思,在电子邮件签名中能使用这三个字母(PhD)绝对是件好事。有的时候我也希望我能因为这个原因坚持下去。但随后现实有变。
如果你的目标是成为一名数据科学家或机器学习工程师(研究员),那么读博士可能是很好的选择。但也可能不是,原因如下:
要很长时间才能获得博士学位。
除非你从「好的」导师那里获得了「好的」博士学位,否则你无法学到任何有价值的东西。
第一点:在美国或加拿大,获得博士学位需要 4 至 7/8 年的时间。平均时间一般是 5-6 年,这取决于具体的院校。现在我们换个角度来看。
你知道 5 年前数据科学中没有什么吗?Spark、XGBoost、jupyternotebooks、GloVe、spaCy、TensorFlow、Keras、Pytorch、InceptionNet、ResNet、强化学习等等。
所以除非你决定自学这些层出不穷的新东西(我不确定研究生院会教你这些东西),否则你在读博的时候可能会像被冰冻在 2012 年一样,然后到毕业时解冻,你完全变成了一个新手。你会发现自己置身于数据科学技术的美丽新世界,你必须得在毕业之后自学这些技术。
关键是,数据科学和机器学习发展得非常快。而它们在未来只会发展得更快。所以如果你想在数据科学或机器学习的相关领域获得博士学位,而且你的目标是未来有一天从事相关的工作,那么你本质上就是在赌博:你赌的是当自己毕业时,所学的专业知识依旧相关而且有很高的需求。这个赌注的风险和收益都很高。
第二点:花一点时间想一下你的导师会是谁,以及他们为什么没在 Google 或 Facebook 工作。
当然,有些人更喜欢做学术研究,而不是在业内做数据科学或机器学习的工作。但值得注意的是,大部分资金都提供给了 ML 行业中顶级的人才,而这对学术领域的人造成了明显的下行选择压力。
有的地方也有一些例外情况。这些一般都是超级精英计划,比如加拿大的 Vector Institute(向量学院)或 MILA、美国的麻省理工和伯克利的数据科学项目。当你看到这种项目就会知道它们的存在,但请记住,如果你当前所在的大学没能排进全球「前 200」,那你们学校就不太可能会有这种项目。
综上所述:如果你就想成为 Airbnb 的深度学习工程师,那么毫无疑问,博士学位可能是为数不多的敲门砖之一。但是如果你在读博时没有参与过一流的项目,就别指望受雇于一流的公司。
但是如果你只是想做一名普通的数据科学家,那么选择读博并非是明智之举。如果想成为一名真正的数据科学家,首先你最好要有 4 到 8 年的工作经验,在这个过程中每当有新技术出现时你都能学到,而且你可以在趋势改变之前更好地预测出新的趋势。
如果你想读与数据科学无关领域(如物理学、生物学、化学)的博士学位,但你的目标是成为数据科学家的话,我会建议你:如果你得花 18 个月或更长时间才能毕业(而且你确定想成为一名数据科学家),那就辍学吧。沉没成本误区(sunk cost fallacy)会使你质疑这种说法(而你本来也应该认真思考),但就我的经验而言(统计而得),这才是更正确的选择。
02
硕士学位
要做数据科学的话需要硕士学位吗?
这要视情况而定。下面我刚做的计分卡。你可以根据自己的情况把分数加起来,如果分数大于 6,那你可能就需要一个硕士学位:
有「硬」STEM 背景(物理学/数学/CS 的本科或其他学位):0 分
有「软」STEM 背景(生物学/生物化学/经济学的本科或其他学位):2 分
没有 STEM 背景:5 分
使用 Python 的经验少于 1 年:3 分
从没涉及过编程相关的工作:3 分
无法独立学习:4 分
当我说这个计分卡是基本的逻辑回归算法时你无法理解:1 分
注意事项
你要想清楚,你需要的是数据科学硕士学位还是训练营。如果你选择参加训练营,要注意他们的激励措施:他们是否在不保障你被录用的前提下要求你付款?训练营有相关的职业服务吗?
大多数人都怀疑训练营。他们也确实值得怀疑。但是大多数人忘了他们也应该同样怀疑任何不提供就业保障的大学硕士学位。硕士学位其实也是一种训练营。要用同样的方式对待它们。不要把注意力放在成绩上,而是要放在所学内容上。问问你们项目的研究生就业率是多少。大学让学生们相信简单的项目就是好项目,或者只是领你进门而已。这是一个心理游戏,而且通过「大学学位具有独立价值」这一已经过时的「传统观念」来强化这个游戏。但你的目标是获得工作,而不是「投入时间」后获得一张纸。
即便你已经完成了硕士课程,你也还有许多技能要学习。而且可能比你想象的还要多。但只要硕士课程足够短(不超过 2 年),而且花费没有那么高昂,那还是很值得去读的。
03
本科学位
一般来说,你要有本科学位才能成为数据科学家。这不一定是因为你需要本科所学的知识,而是因为公司普遍还不能接受这一点:自学加上参加训练营和一些在线课程就可以让你做好参加工作的准备(尽管在某些情况下这是绝对可以的)。
本科学的东西可能与工作无关。如果你和一些科技领域的人交谈过,就会知道,就学习技术而言,工作经验远大于学习。部分原因是本科的教学内容一般会过时 5 到 10 年。如果你学的是不会发生太大变化的领域,比如物理学、数学或统计学领域,这倒还好。
但是如果你在工程学或 CS 领域,你暑假在一家很好的公司实习过,你想推迟毕业时间(或辍学)来获得更多的工作经验,你百分百应该考虑这么做。如果你读本科的目的是找一份工作并且你已经在一家有极大发展空间的公司找到工作的话,那么支付更多的学费来毕业就没什么意义了。
我绝不是说你应该在本科时辍学。我说的是大部分人如果已经完成了实习,并且可以将实习转变成具体的全职工作,那他们就应该想开一点——学业没完成就算了。这种情况并不多见,但我怀疑这很大程度上只是因为许多本科生认为获得本科学历是「优秀的人做的事」而已。
我在本文给出的建议在很多方面都是非常规的。但是在像数据科学这样飞速发展的领域中,惯例一般都会远远落后于最佳方案。从社会角度讲,我们对研究生教育价值的看法很大程度上是源于传统观念的影响,而传统观念则是最需要赶上现实发展的。
当然这不意味着正规教育,或者说研究生学位是不值得获取的。但是大家不应该把获得硕士学位或博士学位当做必要条件:如果你只是为了良好的数据科学职业轨迹而申请硕士研究生,那也许你应该重新考虑你的策略。