谈谈data science的行业经验

w
wdong
楼主 (北美华人网)
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

 

🔥 最新回帖

m
mewto
127 楼
回复 126楼qingcongsuiyue的帖子
那是因为你只懂得技术,不懂business. 银行和保险啊里不同lob 差别都很大比如 credit card, auto loan, deposit, small business etc.
q
qingcongsuiyue
126 楼
回复 109楼moonvalley的帖子
就算是银行, 保险公司这样的复杂business rule, 只要feed进入llm, 再人工调节一下, train一个model是很容易的事情, 再用这个model 来指导coding, 或者ds
moonvalley 发表于 2023-10-22 14:54

银行,保险,没有复杂的东西,我都呆过。。。
f
fight2015
125 楼
感谢分享
f
felali9
124 楼
我也是菜鸟级ds, 前段时间想向我们大牛借一段code做预测,发现大牛用的模型跟我们应用其实是不匹配的。但他们一直用那个模型帮我们预测,说是时下比较流行模型。我花了几天研究了一下那个模型的运用范围,还是决定弃用,换了另一个。调了调参数,预测出来的效果很好。而且我的code非常简单。我觉得他们以前把这个搞得那么复杂的原因是根本没好好“理解题目”。只想套上先进算法就好了。
b
bhuahua
123 楼
非常赞同楼主的一些观点,数据要做得好还是需要一些domain knowledge。我是天坑专业出身,刚刚转行做入门的统计,工作是研究助理,做一些临床数据分析。顶头上司是临床医生,同组也有cs出身程序员,虽然我编程只是入门的水平,但是发现以前的天坑专业经验也不算白费。一个很小的例子,同事用一些数据train了一个预测肺水肿的模型,结果准确率不太理想,后来发现可能是数据清理阶段就没有做好,比如很多ICU病人连续几天都是out 大于in,处于脱水状态,而实际上这些病人每天大量输液,in 大于out 才是常态。但是光是编程没有临床经验的人很难有这个敏感度,马上发现数据的问题。又比如说需要清理一些抗生素的使用状况,虽然是同一种抗生素,静脉输液,口服和外用的冲洗适用于不同的疾病情况,不能混淆。我的体验是,数据分析这种interdisciplinary的领域,很多时候是需要团队协作的,有多种学科背景的人材会有优势。
aq2016 发表于 2023-10-22 09:49

多谢经验分享!

 

🛋️ 沙发板凳

y
yoshi
写的挺好的,谢谢分享
c
commander
谢谢楼主分享
s
summerinxu
感谢分享
G
Grace302
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

不明觉厉,呵呵。
f
felali9
所以DS 是高学历专业。 本科生出来只能打酱油,做的事情别的专业工程师随便就顺手能解决的事
b
babybaby
觉得要真正把ds深入应用到各个行业,每个具体数据的domain knowledge不可缺少。现在缺乏的是两种domain都理解深入的人。
d
dngdnhxqs
你写这么多不单独盖楼是挺亏, 非常感谢分享。
g
guogai
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

LZ的视角很有意思,作为一个统计PhD,大多数同学都去tech大厂了,工作可学的多,包裹大
j
jsams111
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

谢谢分享
猪舌头
总结的点真好。一直呆一个地方,唯一的好处就是熟悉行业data。
简简单单123
mark
d
dngdnhxqs
我认识俩统计博士一个硕士, 一个博士在金融,风生水起,特有钱。 一个博士在高校熬太牛儿,目前比较辛苦。 一个硕士在大厂,这个是转专业的,工作情况未知。
w
wanglizzy
想转Data Science, 请指路
L
Lalala2022
mark
p
pupper
谢谢分享! 面对AI,DS是不是没有优势
z
zghbt
mark! Thanks for sharing!
q
qiqi_hua
留个记号。有空从EE/ME/BioE方面谈谈AI。
谢谢LZ。一直非常热心帮助“后进”。想当年,MITBBS 的programming 版。。。
w
wdong
谢谢分享! 面对AI,DS是不是没有优势
pupper 发表于 2023-10-21 17:07

DS最主要的武器就是AI. 不用AI做DS就像不坐火车坐马车。
c
ceciliaring
DS最主要的武器就是AI. 不用AI做DS就像不坐火车坐马车。
wdong 发表于 2023-10-21 17:17

请问能举个例子吗?你做咨询的话,哪个行业的ds, 特别是predictive modeling 和AI 方面最难有accurate prediction and sustainable impact?
c
ceciliaring
而且现在有更多的no code low code tools, 是不是从最终产出来讲,domain knowledge and stat比coding 的能力更重要?
C
Cath226
而且现在有更多的no code low code tools, 是不是从最终产出来讲,domain knowledge and stat比coding 的能力更重要?
ceciliaring 发表于 2023-10-21 17:38

我个人觉得是这样的。 coding也很重要,不过最终只需要一小部分特别擅长的人去开发platform就行了。 最终细化到公司里具体的问题,还是要看domain knowledge和stat,这个stat指的是更偏interpretation的东西。那也就需要domain knowledge才能做好interpretation。
就好像很多公司的会计用SAP,开发SAP当然很重要,但是最终落实到具体问题,还是要会计,而不是开发SAP的人。
c
chihpo
回复 1楼wdong的帖子
牛人发帖,点赞一下!LZ如果有项目记得罩着我啊
w
wdong
而且现在有更多的no code low code tools, 是不是从最终产出来讲,domain knowledge and stat比coding 的能力更重要?
ceciliaring 发表于 2023-10-21 17:38

这些tool其实对应用domain knowledge是有限制的。我觉得DS难的是对各种算法的理解以及灵活应用。一般有这个水平的人会更愿意自己写程序。想学DS, 最好乖乖学写程序调包。
e
equus
回复 1楼wdong的帖子
同意楼主的看法
所谓DS/Machine Learning/AI,不过是增强版的统计。这个增强版体现在两个方面:一是数据量越来越大;二是由于数据量增加和算力提升使得一些新的复杂算法成为可能或更加有效,比如神经网络等。这两者让问题变得复杂,以前一个或几个学统计的就能搞定的事情,现在就得借助CS的团队才能实施。
数据不是万能的,统计也不是变戏法,不是你想要什么就有什么的。归根结底,也要看这个问题本身有解没有解。围棋为什么能突破?因为规则是固定的,这个问题本身是well defined的;语言为什么能突破?因为任何一个语言再复杂,常用的词语、语法、句式也是有迹可循的;金融为什么没那么容易突破?因为有庄家,而庄家的想法就是为了打破规律的。。
这就是为什么定义问题本身很重要,为什么domain knowledge很重要。不过AI现在的一些工具也确实厉害,其实人的智能也是有限的,机器这么发展下去,很多人的工作怕是都会被替代。一场资本对人的新一轮圈地运动肉眼可见的就要来了。。
一点体会,与大家分享。
q
qingcongsuiyue
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

说的极好。
问题是在不成熟的市场上,大多数自称ds的需求其实是建立基础设施上云和powerbi,而且自己开公司要能吹有客户,可是客户又多不懂,要么期望太高,要么要你做我前面说的这俩事。大公司的真实数据要交给外部咨询不是轻易的事情,你是怎么解决这些问题的能交流一下吗?
c
ceciliaring
回复 1楼wdong的帖子
同意楼主的看法
所谓DS/Machine Learning/AI,不过是增强版的统计。这个增强版体现在两个方面:一是数据量越来越大;二是由于数据量增加和算力提升使得一些新的复杂算法成为可能或更加有效,比如神经网络等。这两者让问题变得复杂,以前一个或几个学统计的就能搞定的事情,现在就得借助CS的团队才能实施。
数据不是万能的,统计也不是变戏法,不是你想要什么就有什么的。归根结底,也要看这个问题本身有解没有解。围棋为什么能突破?因为规则是固定的,这个问题本身是well defined的;语言为什么能突破?因为任何一个语言再复杂,常用的词语、语法、句式也是有迹可循的;金融为什么没那么容易突破?因为有庄家,而庄家的想法就是为了打破规律的。。
这就是为什么定义问题本身很重要,为什么domain knowledge很重要。不过AI现在的一些工具也确实厉害,其实人的智能也是有限的,机器这么发展下去,很多人的工作怕是都会被替代。一场资本对人的新一轮圈地运动肉眼可见的就要来了。。
一点体会,与大家分享。

equus 发表于 2023-10-21 18:11

对,如何define在有些行业是非常tricky的事情,所以我才会好奇,楼主如果做过很多行业,有没有哪些行业会觉得现在大热的ML, AI 很难有impact
p
prettyfat
DS看似就是统计和CS的融合,要求熟悉统计方法特别是prediction模型、mutilvariate统计分析和machine learning相关的统计方法,确实本科是不够的。现在统计PhD这么多,大部分都去药厂了,少部分去大厂去做DS,本科生DS确实不容易找到工作的。看来不是一个可选的本科专业,除非喜欢学数学和统计。
g
gigivivi
干货贴,谢谢分享!
V
VivaLaVida
谢谢楼主分享!很久没有看到过这样的干货贴了。
w
wmn
马克
c
ceciliaring
这些tool其实对应用domain knowledge是有限制的。我觉得DS难的是对各种算法的理解以及灵活应用。一般有这个水平的人会更愿意自己写程序。想学DS, 最好乖乖学写程序调包。
wdong 发表于 2023-10-21 17:49

能展开说说你感受最深的tool的限制吗?algo choice很多platform 会让你自由选择甚至全给run了包括各种ensemble给你最优解。你说的灵活性是parameters setting 吗?还是explainable AI?
d
deardear
谢谢分享!
q
qqzj
而且现在有更多的no code low code tools, 是不是从最终产出来讲,domain knowledge and stat比coding 的能力更重要?
ceciliaring 发表于 2023-10-21 17:38

因为没有完美数据,所以了解数据,知道怎样得到想要的数据是非常重要的能力,只会统计是不行的。
g
gu015
我觉得有insights真的非常重要,我见过厉害的人真的看一眼数字就知道哪里有问题,具体问题具体分析,什么问题都能提供合理解决方案。也有那种说起理论知识头头是道,一干活啥都不是的人。DS做的好的一定是可以灵活应用理论知识到解决具体business问题上,并且要有很好interpretation的能力,如何从数据结果给出合理解决方案。
T
ThorFlameDragon
完全赞同这个帖子里面说的。
能不能讲讲Business Analytics 和 data science的行业发展的区别。他们很类似。但是我个人认为Business Analytics对需要自己开发模型的能力需求少。更多的是用现存的分析工具。还有就是侧重于解释和决策这种consoulting,而不是做prediction那种拼accuracy.
h
happymc
就快被AI取代了
M
Mediterranean
能展开说说你感受最深的tool的限制吗?algo choice很多platform 会让你自由选择甚至全给run了包括各种ensemble给你最优解。你说的灵活性是parameters setting 吗?还是explainable AI?
ceciliaring 发表于 2023-10-21 18:34

Low code no code一般比较贵吧,而且都只适用于非常clean 的academy 用于教学的data. 稍微messy点的real business real data总得亲自整点customized的end to end solution.
w
wdong
回复 26楼的帖子
大公司极少有愿意给数据出来的。都是用客户寄过来笔记本连VPN。基本原则是数据只进不出。现在GPU越来越贵,本来我们自己的GPU其实都不行了。目前都是直接上客户的集群。
还有就是这种生意其实挺难拉的。我如果去拉生意,别人是把我当做印度外包一样对待的,基本没用,有认识的人介绍才行。然后甲方的团队会把你当敌人。很看缘分。我规模不大,勉强维持生计。
w
wdong
回复 36楼ThorFlameDragon的帖子
analytics就是重复性工作, 会用软件就行, 上面说的power bi, tableau啥的。data science是需要创造性的。我们最后deliver的有专利和学术论文。
J
Jay2020PA
咨询行业的薪资和大厂靠近不大可能 至少不是一个数量级的 在生成式AI的大潮下 到底十年后还有多少高薪位子很难说 楼主觉得哪些DS技术现在可以少学或者不学了?
l
lilywang77
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

这个帖子好。 business 相关的有没有 public data, 可以学习用?
J
Jay2020PA
回复 39楼wdong的帖子
同意 我们就是甲方的 和乙方的小公司团队打交道很尴尬 实话说很佩服他们技术和洞察能力 我们大公司没工夫钻研这些 光扯皮去了 但也不能对他们太软 否则自己就危险
w
wdong
能展开说说你感受最深的tool的限制吗?algo choice很多platform 会让你自由选择甚至全给run了包括各种ensemble给你最优解。你说的灵活性是parameters setting 吗?还是explainable AI?
ceciliaring 发表于 2023-10-21 18:34

我最近做过的举几个例子,比如针对问题设计一个新的loss function. 把两个神经网络拼一起,各种魔改。一个数据本来有上百g读不进来,用c++针对数据特点写个算法压缩一下到10g可以全读入内存训练起来比较方便。3d mesh训练模型先用cuda voxelize再连神经网络。我最近碰到个复杂高数用泰勒展开取前几项多项式再用python拟合的,特别开心因为这辈子学了泰勒展开还一次都没用过。 algo choice很多,但是其实就那么几类可以选。如果你看algo的输入输出接口,其实基本上只有教科书的几个标准问题。实际问题都要经过各种变换才能成为标准问题。tool能解决的,其实写程序一般也就几十行,自己也写过无数遍了,相对于定制化前后处理部分可以忽略。确实有那种一共只有两百行的项目,但是都是不赚钱的。这种项目如果你会写prompt现在直接用chatgpt都可以出程序解决。出来看一下稍微改改就能用。
然后visualization特别重要。有一大半时间其实是在变着法子画各种图看数据,看出insight来了才有思路。
a
alicechentian
职业里面有data的,都要完蛋。 dba,data analyst, data scientist 等等。 有data这个字,说明这些都是做的一次性的工作。 第一不一定有chatgpt做的好。 第二老板不愿意付钱。
c
cathyant
码住慢慢看 正想转
l
littlebabyfat
我最近做过的举几个例子,比如针对问题设计一个新的loss function. 把两个神经网络拼一起,各种魔改。一个数据本来有上百g读不进来,用c++针对数据特点写个算法压缩一下到10g可以全读入内存训练起来比较方便。3d mesh训练模型先用cuda voxelize再连神经网络。我最近碰到个复杂高数用泰勒展开取前几项多项式再用python拟合的,特别开心因为这辈子学了泰勒展开还一次都没用过。 algo choice很多,但是其实就那么几类可以选。如果你看algo的输入输出接口,其实基本上只有教科书的几个标准问题。实际问题都要经过各种变换才能成为标准问题。tool能解决的,其实写程序一般也就几十行,自己也写过无数遍了,相对于定制化前后处理部分可以忽略。确实有那种一共只有两百行的项目,但是都是不赚钱的。这种项目如果你会写prompt现在直接用chatgpt都可以出程序解决。出来看一下稍微改改就能用。
然后visualization特别重要。有一大半时间其实是在变着法子画各种图看数据,看出insight来了才有思路。

wdong 发表于 2023-10-21 20:30

讲的真好
b
blueocean
谢谢分享!楼主是个牛人!
d
dingdang008
遇到的data scientist, 不懂data, 也不想多深入,靠别人送data, 套公式
r
rainclear
wdong是牛人,最难得的是愿意给咱这些庸才指路。
b
bluebubb
说得真好,场景一说得很到位,很抓狂😂也有被逼当老中医的感觉😁
t
taus
好文没法不赞!
S
SnowmanIsland
謝謝指引
s
snailittle00
感谢分享
g
guogai
我最近做过的举几个例子,比如针对问题设计一个新的loss function. 把两个神经网络拼一起,各种魔改。一个数据本来有上百g读不进来,用c++针对数据特点写个算法压缩一下到10g可以全读入内存训练起来比较方便。3d mesh训练模型先用cuda voxelize再连神经网络。我最近碰到个复杂高数用泰勒展开取前几项多项式再用python拟合的,特别开心因为这辈子学了泰勒展开还一次都没用过。 algo choice很多,但是其实就那么几类可以选。如果你看algo的输入输出接口,其实基本上只有教科书的几个标准问题。实际问题都要经过各种变换才能成为标准问题。tool能解决的,其实写程序一般也就几十行,自己也写过无数遍了,相对于定制化前后处理部分可以忽略。确实有那种一共只有两百行的项目,但是都是不赚钱的。这种项目如果你会写prompt现在直接用chatgpt都可以出程序解决。出来看一下稍微改改就能用。
然后visualization特别重要。有一大半时间其实是在变着法子画各种图看数据,看出insight来了才有思路。

wdong 发表于 2023-10-21 20:30

现在都用spark还有数据读不进来的烦恼?
C
Caroline15
回复 44楼wdong的帖子
感觉lz的知识面非常广,比很多大厂的只在一个niche钻研的knowlegable多了
l
lorpercon
mark一下,多谢分享
m
mewto
我只有本科而且读的也不是statistic 而是finance, 后来转的,是做在四大银行信用卡数据分析的,我管理的六七个人,他们大部分都有PHD 和master ,有一些还是名校毕业的。
m
mewto
所以DS 是高学历专业。 本科生出来只能打酱油,做的事情别的专业工程师随便就顺手能解决的事
felali9 发表于 2023-10-21 15:40

不敢苟同
我只有本科而且读的也不是statistic 而是finance, 后来转的,是做在四大银行信用卡数据分析的,我管理的六七个人,他们大部分都有PHD 和master ,有一些还是名校毕业的。
w
whohh
感谢分享DS
小城往事
回复 1楼wdong的帖子
domain knowledge当然是很重要的,做数据相关的工作,要做的好,显然不是只会调包跑代码就行。但现在的风气,人都很浮躁,对domain knowledge是很不屑的,因为domain knowledge不是transferable skill,不如leet code有用,也不如一些时髦的工具有用,不能用来跳槽拿大包。
实际上,现在做CS相关的行业的,包括楼主说的Data类的,有一个风气,就是对其他学科的知识很鄙视很不屑,没人懂,也没人稀罕懂。之前媒体热炒的google的bart翻车,把一个天文学方面的问题回答错了,我看了觉得一点也不奇怪。估计整个google都没人care那些回答的对错,因为万般皆下品,唯有算法高,其他领域的知识都是垃圾。
o
oqo
回复 1楼wdong的帖子
同意楼主的看法
所谓DS/Machine Learning/AI,不过是增强版的统计。这个增强版体现在两个方面:一是数据量越来越大;二是由于数据量增加和算力提升使得一些新的复杂算法成为可能或更加有效,比如神经网络等。这两者让问题变得复杂,以前一个或几个学统计的就能搞定的事情,现在就得借助CS的团队才能实施。
数据不是万能的,统计也不是变戏法,不是你想要什么就有什么的。归根结底,也要看这个问题本身有解没有解。围棋为什么能突破?因为规则是固定的,这个问题本身是well defined的;语言为什么能突破?因为任何一个语言再复杂,常用的词语、语法、句式也是有迹可循的;金融为什么没那么容易突破?因为有庄家,而庄家的想法就是为了打破规律的。。
这就是为什么定义问题本身很重要,为什么domain knowledge很重要。不过AI现在的一些工具也确实厉害,其实人的智能也是有限的,机器这么发展下去,很多人的工作怕是都会被替代。一场资本对人的新一轮圈地运动肉眼可见的就要来了。。
一点体会,与大家分享。

equus 发表于 2023-10-21 18:11

嗯,其实machine learning, AI本来就是上世纪发展起来的statistical learning CS学科给了个新名字罢了 比如神经网络,理论早都有了 但是计算能力跟不上 你一个idea算几十年都算不完能怎么办 得益于现在硬件的高速发展 算力上去了AI才能快速发展
l
littleding
好帖子,个人觉得data science里domain knowledge 比算法更重要,没有domain knowledge, 对数据本身,模型构建和tuning,以及结果的interpretation根本不靠谱,算法再牛逼也没用,然而现在data science学位基本没有对domain knowledge的training,要么就工作后去行业中获取,所以现在有不少公司找data analyst/scientist都是先轮岗了解行业,再开始项目。所以个人觉得data science作为double major或者minor,对undergraduate或者master来说,是最优解
s
sunnytoday
回复 1楼wdong的帖子
domain knowledge当然是很重要的,做数据相关的工作,要做的好,显然不是只会调包跑代码就行。但现在的风气,人都很浮躁,对domain knowledge是很不屑的,因为domain knowledge不是transferable skill,不如leet code有用,也不如一些时髦的工具有用,不能用来跳槽拿大包。
实际上,现在做CS相关的行业的,包括楼主说的Data类的,有一个风气,就是对其他学科的知识很鄙视很不屑,没人懂,也没人稀罕懂。之前媒体热炒的google的bart翻车,把一个天文学方面的问题回答错了,我看了觉得一点也不奇怪。估计整个google都没人care那些回答的对错,因为万般皆下品,唯有算法高,其他领域的知识都是垃圾。
小城往事 发表于 2023-10-21 23:15

我工作中跟我司某一些DS打交道的感觉和你说的一样。有些DS根本没兴趣理解数据背后的知识,而且根本没兴趣听你解释,就觉得自己分析的很对。也不知道哪里来的自信。所以懂domain knowledge的人如果愿意自己写程序,做出来的东西碾压做DS没有domain knowledge的。
R
RSARSA
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

lz说得挺实在。的确如此 现在会调包的就号称ds,以前可能只是一个BA或者DA的水平
h
hoohoo001
好帖子,个人觉得data science里domain knowledge 比算法更重要,没有domain knowledge, 对数据本身,模型构建和tuning,以及结果的interpretation根本不靠谱,算法再牛逼也没用,然而现在data science学位基本没有对domain knowledge的training,要么就工作后去行业中获取,所以现在有不少公司找data analyst/scientist都是先轮岗了解行业,再开始项目。所以个人觉得data science作为double major或者minor,对undergraduate或者master来说,是最优解
littleding 发表于 2023-10-21 23:37

赞同每一个字 !
l
lianzi
写的很实在。回答一句楼主问的在同一家公司做DS会不会bored。 如果一直做一个大项目,的确会。不过大公司一直有不同的priorities和challenges。
e
enginex
好贴 我的感觉 在一个公司做DS 如果能做不同部门的各种项目 还是挺有意思的 如果只服务一个部门的项目 干两年就差不多要开始无聊了
w
wisepaper
谢谢分享
j
jennyc
感谢分享。。
b
bhuahua
回复 36楼ThorFlameDragon的帖子
analytics就是重复性工作, 会用软件就行, 上面说的power bi, tableau啥的。data science是需要创造性的。我们最后deliver的有专利和学术论文。
wdong 发表于 2023-10-21 20:11

能否举个例子说一下data science怎么出专利的?感觉它没法出专利啊,多谢!
c
carbontt
谢谢楼主 这样的分享讨论
b
beany
马。。。。。。。。。。
q
qingcongsuiyue
回复 26楼的帖子
大公司极少有愿意给数据出来的。都是用客户寄过来笔记本连VPN。基本原则是数据只进不出。现在GPU越来越贵,本来我们自己的GPU其实都不行了。目前都是直接上客户的集群。
还有就是这种生意其实挺难拉的。我如果去拉生意,别人是把我当做印度外包一样对待的,基本没用,有认识的人介绍才行。然后甲方的团队会把你当敌人。很看缘分。我规模不大,勉强维持生计。
wdong 发表于 2023-10-21 20:02

真是赞同你的每一个字。真是大牛!后面你还说你都能出专利了,能够稍微说一下那是什么吗?我觉得数据科学不如软件开发的另一个方面就是产品根本不能打包卖出去……只能做一个收一个的钱
s
shangwangwengweng
回复 1楼wdong的帖子
MARK
d
dingdang008
回复 1楼wdong的帖子
domain knowledge当然是很重要的,做数据相关的工作,要做的好,显然不是只会调包跑代码就行。但现在的风气,人都很浮躁,对domain knowledge是很不屑的,因为domain knowledge不是transferable skill,不如leet code有用,也不如一些时髦的工具有用,不能用来跳槽拿大包。
实际上,现在做CS相关的行业的,包括楼主说的Data类的,有一个风气,就是对其他学科的知识很鄙视很不屑,没人懂,也没人稀罕懂。之前媒体热炒的google的bart翻车,把一个天文学方面的问题回答错了,我看了觉得一点也不奇怪。估计整个google都没人care那些回答的对错,因为万般皆下品,唯有算法高,其他领域的知识都是垃圾。
小城往事 发表于 2023-10-21 23:15

赞同
X
Xinli_DC
👍感谢分享
d
dingdang008
关于data, 是哪种更复杂? 医疗,金融,销售, HR?
J
Jay2020PA
非常同意 domain knowledge 绝对重要 尤其生物科技类的RWD RCT data很多人不搞懂怎么用和来龙去脉就上来一通乱做
w
wdong
关于data, 是哪种更复杂? 医疗,金融,销售, HR?
dingdang008 发表于 2023-10-22 07:52

从问题的角度看都一样。这几个问题背后本质都是博弈结构。医疗的需求来自于生物和环境的博弈,金融是人和人博弈,最后的目标是提高生物的适应性,提高市场效率,核心矛盾是整体优化和个人要活得更长赚更多钱的矛盾。具体问题都是本质问题化出来的幻象,难度不会差太多。
从人的角度看也都一样。各行各业,除了IT大厂,水平都差不多。你只要比他们代码写得溜点,学得快点,看问题更深入点,其实只要有机会哪个行业的活都可以拍胸脯接。

w
wdong
回复 64楼的帖子
梳理domain knowledge这事做多了会上瘾的。和猜谜一样。到后来没事也会去找事情分析。这是做DS最rewarding的地方。大多数从业人员都在买椟还珠。上面有人问专利怎么来,就是这么梳理出来的。
这个是我梳理了两个星期佛经梳理出来的: https://huaren.us/showtopic.html?topicid=2958406 以这个为基础,具体实现用现有的HCI技术组合一下,是有专利可以写的。
我写这些东西不可否认是有点神经病在里面的。
猪舌头
回复 36楼ThorFlameDragon的帖子
analytics就是重复性工作, 会用软件就行, 上面说的power bi, tableau啥的。data science是需要创造性的。我们最后deliver的有专利和学术论文。
wdong 发表于 2023-10-21 20:11

lz你的论文一般都发哪?我印象里,好多data,www这类会,论文都是大公司为了发paper,找了一些边缘话题,画蛇添足的话题,转化为利润还很遥远的话题,然后扣半天为了发个paper。方法就是正常方法排列组合。没什么大意思。
像lz后面说的解决data问题的实例,这种干货paper很少见。lz你平常都看哪些会议的paper?
w
wdong
回复 82楼的帖子
你感觉是对的。我想了一下,不是大家兜着不发,而是干货很稀有, 大部分方向都是一筹莫展止步不前的状态,你看到的这种状态就已经是全行业努力的结果了。 我要但凡有一个像样的发明,可能也就可以不用干了。但是做的过程中多多少少会出来你说的这种水平的东西,有的甲方在乎的话就写,不在乎就不写。
s
smartshanshan
楼主真是DS届天花板。很多单位用DS找人进去,然后就做做Tableau🤣🤣🤣
G
Geofan
又开始Domain knowledge了,这个不需要Ds,需要码农解放广大不会编程的基层员工而已。
l
littlecreek
学习了
k
kaka924924
谢谢楼主分享 非常受教
卷卷妞妞
楼主说的很中肯很客观,这些问题都是实际存在的。很多时候,具体到一个公司的特定行业,单靠主流fancy的算法未必真的能解决该公司的问题,这当中的问题多而细小,没有扎实的统计功底结合对算法的深入理解和灵活运用是不行的。
a
aq2016
非常赞同楼主的一些观点,数据要做得好还是需要一些domain knowledge。我是天坑专业出身,刚刚转行做入门的统计,工作是研究助理,做一些临床数据分析。顶头上司是临床医生,同组也有cs出身程序员,虽然我编程只是入门的水平,但是发现以前的天坑专业经验也不算白费。一个很小的例子,同事用一些数据train了一个预测肺水肿的模型,结果准确率不太理想,后来发现可能是数据清理阶段就没有做好,比如很多ICU病人连续几天都是out 大于in,处于脱水状态,而实际上这些病人每天大量输液,in 大于out 才是常态。但是光是编程没有临床经验的人很难有这个敏感度,马上发现数据的问题。又比如说需要清理一些抗生素的使用状况,虽然是同一种抗生素,静脉输液,口服和外用的冲洗适用于不同的疾病情况,不能混淆。我的体验是,数据分析这种interdisciplinary的领域,很多时候是需要团队协作的,有多种学科背景的人材会有优势。
g
gigivivi
这楼的讨论真好看!
w
wanchun
回复 7楼babybaby的帖子
國內的教育分科導致的. 美國可以跨系選課,可美國本土人又太懶去學很多.
s
starfish1988
mark mark
近猪者肥
我个人觉得是这样的。 coding也很重要,不过最终只需要一小部分特别擅长的人去开发platform就行了。 最终细化到公司里具体的问题,还是要看domain knowledge和stat,这个stat指的是更偏interpretation的东西。那也就需要domain knowledge才能做好interpretation。
就好像很多公司的会计用SAP,开发SAP当然很重要,但是最终落实到具体问题,还是要会计,而不是开发SAP的人。
Cath226 发表于 2023-10-21 17:45

同意,我们刚给公司做了ds workforce planning的规划建议,共识都是要加强data engineering 和 result interpreting,纯ds建模一块需要少而精
人在它乡
我是做data science consulting的,我的工作就是帮助客户公司提高data science项目的效果。本来是想回隔壁的帖子(https://huaren.us/showtopic.html?topicid=2961655&fid=398),后来一想要写的东西比较多,光回帖就亏了,所以单开一贴。我想和大家聊聊我认为的data science这个行业的现状和前景。
首先是"data science"的定义。我觉得所谓的data science就是“用科学的方法解决数据相关的行业问题”。"Data science"出现有两个时代背景。1. 各行各业都实现了数字化,data越来越多。2. CS底下发展出了几个通用的数据建模方法(按时间顺序data mining -> statistical learning -> deep learning/AI),在很多行业都打破了传统方法的记录。大数据最开始是出现在IT业,data science最开始做的就是网页/产品/用户数据分析和匹配。后面逐渐影响到各行各业,并且这个过程今天还在发生。很多时候,机器学习模型对传统方法(物理/统计模型)的提高是非常显著的。一般这种提高都是先在学术界/大厂发布,然后工业界跟进。最近比较典型的就是alphafold,对结构生物学有点降维打击的感觉。这是为啥前几年业界会觉得data science很火的原因。另外和前几年经济好也有关系,各种乱七八糟的项目上马得挺多的。
其次我要讲为啥现在又有data science要完蛋的感觉。我觉得最主要的原因是,目前的AI并不是全自动的。要利用现有的AI工具解决传统行业的问题,是一个R&D的问题需要定制化开发,对项目实现人员的个人能力要求比较高,一般的团队普遍到不了这个水平,所以项目失败居多。项目失败了那领导往往认为不是自己的人不行而是data science不行,所以这几年就慢慢退火了。这里面又有两个场景。
场景1: 因为data science是从CS发展出来的,所以不可避免地会有很多人以软件开发的方法来做data science,那样很容易就会失败。这里面最大的问题是,软件设计可以计划,如果架构师水平可以,一般实现出来的东西和计划中的东西不会差太远,如果出了bug,一般也比较容易定位。Data science和这个完全不一样,经常是一个模型做好了,一跑出来的数据是random的,或者怎么都没有提高。背后的原因可能是某一行有bug,也可能是方法不对,也可能是问题本身就这么难。因为最后数字也算出来了整个过程软件并不会crash,所以要定位问题非常难,往往会出现干瞪眼不知道怎么办的情况。一般人是不太看得起洗数据的,但是数据洗得不好,后面的一切其实都无从谈起。如果随便找个没经验的普通master new grad洗数据,那最后要做成真是得运气比较好才行。
场景2: 还有一类data science则是从非CS学科成长起来的,比如统计等。这类人数学比较好,而且PhD比较多,但是写程序不顺溜,不了解CS最新的算法,没有快速开发软件验证想法的问题,所以往往也有局限(建议:如果只会R赶紧去学python)。 总之,又能写程序又会推公式又有实战经验的人比较少,往往都被high tech大厂高薪请走了,愿意去做传统行业项目的不多。从我干过的项目而言,我司水平一般会比客户自己团队的高很多,差不多是PhD和master的差别。即使这样,能出彩的东西也比较少。我觉得data science对人脑的要求其实比软件开发要大的。
我觉得比较有用的课程:微积分,线性代数,数据结构,图论, 机器学习, AI。常用的软件:python/c++/vue, pandas, scikit-learn, pytorch, opencv。我写python一般都会配C++加速,我看别人纯用python写的东西经常会很不爽,因为有的部分真的是非常慢。如果能上CS当然比较好,但是CS里面有一些核心的杀人课程其实对DS是没啥用的,比如编译原理,操作系统,体系结构等。考虑到现在CS比较难入,我觉得从技术上来说其实不选CS也可以,但是我上面列的几门课一定要学好,最好要弄个理工科偏编程偏数据分析的PhD。现在很多大学的DS项目,其实都是拼拼凑凑起来的,并不成熟,作为交叉学科,可能也没有最牛的教授,然后拼命开水硕项目赚钱,也会给人水平比较低的感觉。
我不太知道在一个固定的公司做data science是什么感觉,我觉得老搞同样的东西可能会比较压抑吧,如果钱又不多,项目成功概率又是五五开对升职并不是最管用,我觉得可能不是个很好的职业选择。对我来说,我更像是开一个侦探事务所,接各种乱七八糟的案子,能见到各行各业在干什么,老有新东西可以学可以发明,我觉得非常rewarding。所以我觉得data science最后发展成一个咨询业比较好。但是你们看目前的咨询业,其实在大学也是没有对应的专业的。这个行业要能发展起来,一个前提就是硅谷和传统行业的包裹差别能够减少,大家能根据自己的兴趣爱好选择专业而不是按照收入选择专业。
世界很大我管窥叶障必然比较片面,希望抛砖引玉,能有别的同行来说说自己的经验,大家互补长短。

wdong 发表于 2023-10-21 14:56

干货!多谢分享!
h
honeybunch
同意,我们刚给公司做了ds workforce planning的规划建议,共识都是要加强data engineering 和 result interpreting,纯ds建模一块需要少而精
近猪者肥 发表于 2023-10-22 10:11

这说的太专业了。我本人是IT,后来做了一点data science方面的project。现在consulting,建议就是必须有domain knowledge的成员来interprate data。否则result does not make sense。
h
happyday365
Mark
c
childefox
非常感谢楼主分享
A
Acad
现在本科生很难找到工作