抛弃幻想,谈谈现实中的数据科学家
作者:Hello 陈然!
链接:https://zhuanlan.zhihu.com/p/20236709
来源:知乎专栏
数据应用学院 授权转载
Data Scientist
数据科学家
太火了,已经成为新一代改变世界的职业,引得每一个人都想往这个方向转。
学CS的觉得做码农太底层,给人打工,
要转数据科学家,完美。
学统计的觉得这个不需要过多的 Coding,适合自己,
要转数据科学家,完美。
学商科的觉得终于自己也可以成为科学家了,
要转数据科学家,完美。
似乎每个人都觉得自己可以成为,应该成为,也一定能够成为一名数据科学家。
然而现实呢?
一片混乱。
>>>人们想象之中的独角兽<<<
- 精通算法
例如各种机器学习算法
(聚类, 分类, NLP, CV, IR, etc.),
理解统计的原理。
- 全栈开发能力
能够完成从数据清洗,
到产品上线的全部工作,
且能做各种数据可视化与报表。
- 资深领域知识
了解行业背景,企业运行规律,
懂得 Business、Marketing、Finance、
elavilnews.com 等等知识,
能够帮助企业做决策。
- 相当的软实力
除了技术能力要求高,
还要有沟通和写作的能力,
领导团队的能力等等。
哇,真是全能的独角兽。
可能有这样的人吗?
当然,这个世界这么大,出几个超牛的人并不是没有可能。
你可以追求成为这样一个人,
但是认为所谓数据科学家就等于这一类人,并没有什么意义。
从现实角度来讲,你并不需要成为这样一个人才能为企业带来价值。
大量和数据相关的职责都被认为是和数据科学家相关的,因此,更重要的是,
找到合适自己的位置,使用新技术解决问题,创造收益。
>>两类数据科学家<<<
是的,Data Scientist 并不是一个well defined的职位,在每个公司的职责都不一样。
但是,不论怎么样,
这个世界上不可能凭空出现一个职位:
这个职位所解决的问题是以前从来没出现过的,
也没人知道该怎么解决的。
或许我们可以慢慢逼近人们想象中的那个全能的独角兽,
但现在,数据科学家所担当的职责,
一定会跟现有的职位大量的重合。
现实中的数据科学家是怎么样的呢?常见的数据科学家被分为两类。
引用 Quora上 Michael Hochster 的一个回答:
Type A Data Scientist:
The A is for Analysis. This type is primarily concerned with making sense of data or working with it in a fairly static way. The Type A Data Scientist is very similar to a statistician (and may be one) but knows all the practical details of working with data that aren’t taught in the statistics curriculum: data cleaning, methods for dealing with very large data sets, visualization, deep knowledge of a particular domain, writing well about data, and so on.
Type B Data Scientist:
The B is for Building. Type B Data Scientists share some statistical background with Type A, but they are also very strong coders and may be trained software engineers. The Type B Data Scientist is mainly interested in using data “in production.” They build models which interact with users, often serving recommendations (products, people you may know, ads, movies, search results).
对于这两类的理解稍有出入,但也大体相同:
A 类 数据科学家
偏 Analysis,一切为数据驱动的决策服务。主要的工作是在清理数据,做分析,找 Insight,做 Report 等等。可以说是某类升级版的 Analyst 或者 BD。
一方面这意味着对你的你要求跟做 BD 或 Analyst 的要求一样甚至更高。对市场了解如何?对行业了解如何?对公司运作了解如何?而所谓 Machine Learning 等工具只是技术与手段,能够帮助更好地解决问题。但是问题有哪些,才是根本的问题。
另一方面传统 Analyst 不足的地方在于随着数据越来越大,越来越复杂,如果要更快更准,需要使用更好的模型(机器学习等),在更原始的数据中探索与分析,不能只等待其他人把数据都处理好。
因此需要更强的数据处理、分析能力和对于新模型、工具的掌握和理解。
往这个方向发展,要补齐 Marketing、Business、Finance、Operation 等知识,
同时掌握各种机器学习的算法与工具。
B 类 数据科学家
偏 Research & Product,在算法即产品的职责下让算法能够与产紧密结合,甚至主导算法驱动的产品。主要的工作是把算法从 Research 做到 Product。
一方面要对各类机器学习的算法了解足够深刻,了解各种机器学习算法的常见应用(NLP,CV,Recommendation,IR,etc.)。同时对工程要求更高,毕竟做 Prototype 和上 Production 是完全不一样的。
另一方面要对产品的需求有更深层次的理解,以及了解公司的业务逻辑,因为随着不少算法的成熟,产品的需求已经不仅仅来自于 product-market-fit,而是来自于算法本身的进步,因此能够把成熟的算法推向产品是非常重要的能力。
往这个方向发展,Coding 的要求与所有通用 Software Engineering 的要求一样,该修 CS 课可能一样都不能少,同时要能了解公司的业务逻辑,更好地推动产品的上线,让不可能变成可能。
>>职业生涯的起步与发展<<<
既然典型的数据科学家是两类,
那么对照着这两类对自己的技能树查缺补漏就行。
要么补业务知识,
要么补代码能力,
要么补机器学习相关的技术与工具。
总之,不要一味追求所谓的新算法,
而没有基础的分析或者工程能力,
这样并不能解决任何问题,也不能带来任何价值。
从一位分析师或者程序员开始职业生涯,都是很好的选择。
然而,
职业生涯的追求肯定不是一个Title,
而是某些能力,
对照着理想中的独角兽查缺补漏,确实是非常好的办法。
你眼中的数据科学家是什么样子的呢?