问你一个问题:构建了一个研究领域的底层之后,能不能形成赢家通吃的局面?
大家好,这里是生信之灵。
今天我们来讲一下 Fabian Theis。相信做算法开发的小伙伴对他肯定不会陌生,就算你没听说过他,你也肯定听说过 Scanpy。法比安可以说是生信算法领域的天花板了。
做这期视频,主要是因为我自己也是生信算法领域的博士生,我想通过研究本领域这些大牛的成功路径,看看有没有能供我们学习的地方,大家共同学习,共同进步。
【人物名片】
法比安·泰斯,德国计算生物学家,单细胞数据分析事实标准工具 Scanpy 和 AnnData 的实验室出品方。现任亥姆霍兹慕尼黑计算健康中心主任、慕尼黑工业大学讲席教授、亥姆霍兹 AI 科学总监、拜仁州人工智能委员会主席,2023 年获得德国科研最高奖——莱布尼茨奖。
他 26 岁拿到物理博士,一年之后,也就是 27 岁,拿到第二个计算机科学博士。
【我原本的三个误解】
在我对他没有足够了解的时候,我以为的版本是这样的:他在 2010 年代抓住了单细胞的浪潮,做出了 Scanpy 这个单细胞分析的底层基础库,靠开源社区做大做强,后续开发的算法又能快速并入这个库,最后形成赢家通吃的局面。
这期视频当时就是想研究一下他的成功经历,看看对我们现在的博士生有没有什么可以学习的地方。但是当我对他了解得更详尽之后,我才发现,我之前的想法是错的。
【误解一:不是他抓住了浪潮,是浪潮撞上了他】
第一个误点就是:不是他抓住了单细胞的浪潮,而是浪潮撞上了他。因为他已经站在这个位置十年了。
我们看一下他的时间线。2002 年,他的物理博士论文题目是《独立成分分析》;2003 年,他的计算机博士论文是《几何盲源分离》。
这两篇文章基本都是在做高维数据的降维——从高维数据里反推出真正驱动数据的那些成分。
那我们现在回过头看,单细胞 RNA 分析当时的核心任务是什么?是把上万维度的基因表达矩阵,降维到几十维的特征空间,然后从里面找出细胞状态、发育轨迹、批次效应这些东西。对应的方法,像 PCA、扩散图、UMAP,还有 RNA velocity,它们全都是同一类数学——高维含噪观测下的隐变量模型。
所以当 2015 年前后,10x Genomics 把 scRNA-seq 变成流水线商品、数据量爆炸的时候,绝大多数生物学家面对的是一个全新的问题;但对法比安来说,这已经是他做了十多年的老问题了,只是换了一套数据。
就像雷军说的,站在风口上,猪都能起飞。但他不是去追风口,他压根就没动——是单细胞的风口直接吹到他这来了。
【误解二:Scanpy 不是他做的】
另一个问题是,我一直以为 Scanpy 是他做的。
这么理解其实也没大错,因为我们一般默认通讯作者才是这篇文章的最终负责人。这话是没错,但 Scanpy 实际上是由他的博士后 Alex Wolf 主动提议、并且主导做出来的。
我之前一直以为,就算是通讯作者,也是你先提出这个项目,然后去找手底下的博士生或者博士后去做。但其实不是这样。就像 ISCB 创新者奖那篇人物特写里写的,这是一次「意料之外的突破」——也就是说,法比安本人当时并没有预见到,Scanpy 会成为标准。
【但他做对了三件极其困难的事】
但我们还是得说,法比安在这里面还是做了巨大的贡献的。他做对了三件极其困难的事。
第一,他同意了让一个博士后花大量时间去做工程基础设施,而不是赶论文。
我们都知道,在这个越来越浮躁的年代,不发论文就是死。在这种学术环境里,你要拿着钱去养一个注定很难出成果的项目,这个决策是非常难做的。他能做出这个决策,一个是非常困难,再一个,我觉得也是一个非常英明、非常理智的选择。
第二,他不光同意了,他还保护了这段时间。
这一年多的时间里,这个项目基本上没有什么产出,但他依然让这个博士后继续做下去。
第三,他在事后改变了自己的战略重心。
这本来是一次偶然的成功,但他迅速意识到了这里面的潜在机会有多大,然后迅速把自己的战略重心转移到了——「基础的计算工具,会成为生物发现的必要基础」。
【所以 PI 的价值是什么】
从这件事上就可以看出来:对于一个 PI 来说,关键不在于他发明了什么。当然他要是真的有所发明、有所发现,那当然更好。但 PI 本身是一个管理岗位,他真正的价值在于他允许什么、以及他把什么资源化。能做出这种决策,本身就已经很了不起了。
那对于我们博士生呢?我们可能就像当年的 Alex Wolf 一样。或许我们手头上也有一些好的想法,但关键是:你怎么去向导师争取资源?怎么去说服导师?怎么去创造这个环境?我觉得这是我们博士生可以认真思考的一个方向。
【误解三:不是赢家通吃,而是赢了另外三场比赛】
我的第三个误解,是我以为它会赢家通吃。但其实只是部分成立。
单细胞领域其实有两大工具:R 语言方向的 Seurat,Python 方向的 Scanpy。看 GitHub 星数,Seurat 甚至还略微领先一点。对于普通的生物学家来说,Seurat 用得其实比 Scanpy 更多,用途也更广泛。
但 Scanpy 赢的是另一场比赛。它不是在「单细胞分析」这个领域形成了赢家通吃,而是它赢下了另外三场:
第一,机器学习赛道。那几年正好是深度学习、AI 异军突起的时候,所有做深度学习的几乎都是 Python,而 Scanpy 就是 Python 写的,跟 scikit-learn 这些天然同源,数据互通几乎零成本。
第二,超大规模赛道。现在测序时间越来越短、成本越来越低,数据在呈爆炸式增长。而 Scanpy 的底层做得非常好,特别适合百万级细胞、图谱级的这种超大规模项目。
第三,基础设施赛道。这一条是决定性的。
所以更准确的说法不是赢家通吃,而是:他根本就没有去抢占已经拥挤的赛道,他定义并且占据了一个当时还不存在的赛道。
【真正的护城河:AnnData】
好,接下来我们看一下,Scanpy 或者说法比安真正的护城河是什么。
我一开始以为 Scanpy 就是护城河,后来我才明白,AnnData 才是护城河。(对 AnnData 不了解的朋友,可以看我相关的那期视频。)
我认为这是整个分析里最重要的一条:这个数据格式的下载量,是分析工具本身的将近两倍。因为 AnnData 不只被 Scanpy 依赖,它被整个生态依赖——scvi-tools、squidpy、scVelo、CellRank、moscot,以及成千上万的第三方包,全部是以 AnnData 作为输入输出的。
我个人认为这个数据格式设计得相当相当完美。你往后看,它不只能装 RNA 模态的数据,像 ATAC、空间组学,甚至最近比较火的扰动数据,其实都可以用 AnnData 来表示。说实话,我前段时间也一直在想,我能不能搞出一个比 AnnData 更好的数据结构。但我实在想不出来——我真的想不到还有什么样的数据是它装不下的。
所以谁定义了数据格式,谁就定义了这个领域。
这也不是生信独有的规律。你像 Adobe 靠 PDF,医学影像靠 DICOM,基因组学靠的是 SAM/BAM 而不是某个具体软件,现在单细胞靠的是 h5ad。
说实话,我们这种在生信领域搞算法的,你搞出一个算法来,用不了多久可能就被替代了。甚至本质上说,你搞出一个算法,其实只是搞出了一篇论文,你的用户可能就是相关领域的那么几个人。但如果你定义了一个文件的读写格式,那么涉及这个领域的任何人,都要依赖你的输入输出——等于说你直接拿下了一整个领域。
当大部分人在争谁的算法更准的时候,他去定义了所有算法都必须使用的文件格式。
【飞轮:护城河其实是分发渠道】
我之前观察到,法比安他们组的工作模式是:开发一个算法,迅速集成到已有的工具里,快速扩展用户、提升知名度。但这只是我一开始比较浅薄的一层理解。
现在整理完之后,我才看明白整个链条是怎么转的:
Scanpy 加 AnnData 成为整个行业的标准之后,当组里的学生有了新的算法,它天然就是基于 AnnData 开发的。于是新算法的第一天,立马就有了分发渠道——用户装上直接就能用,不需要迁移数据,因为大家的底层数据格式本来就是一样的。
用户零成本试用,就能快速推广、快速提高知名度,进而发更好的文章——因为你对领域的贡献确实更大。接下来就是利滚利:更多的经费、更高的声望,吸引到更好的学生和博士后,产出更多的方法,而这些方法全部又是基于 AnnData 的,于是整个标准就更加稳固。强者越强,强者恒强。
所以他这套科研模式,关键根本不是「我有一个好的想法」,他的另一个护城河在于算法的分发渠道。
这是现在学术界很容易被低估的一点。大家都比较浮躁,都在比「我在这个 benchmark 上表现比你好,那我就牛逼」。但一个被忽略的事实是:一个真正好的算法、一个好的工具,它必须容易安装、容易使用,而且不能自建一套谁也不认的数据格式——不然它的实际影响力肯定大不了。
【他们组的人员配置:3 个工程师 + 1 个社区经理】
这就引出了他的另一个工作模式——他们组的人员配置。
正常的组是什么样?一个 PI 相当于老板,下面带着博士生和博士后,各自搞各自的项目。但他的组不是这样:他有三个专职的软件工程师,而且是长期职位。
咱们一般的组培养一个博士生或者博士后,也就三四年。这个时间太短了。一个项目可能要做十多年,或者说你发布一个项目之后,后续的维护、开发、扩展要持续十多年。博士生、博士后在这只待几年,很难去做这种超长周期的工作。
所以他实验室里专门养了三个专职软件工程师,还有一个社区经理。这是一个预算的决定,而不是一个科研的决定——或者说,这是一个课题组正确的组织决策。
我们看 Scanpy 那篇论文的第二作者,Philipp Angerer。那篇文章是 2018 年发表的,而他到 2026 年仍然在这个实验室,职位就是软件工程师。这是九年。
同一时间段里,一个博士生入学、毕业、离开,已经三轮过去了,人都换了两三茬。所以在一个人员每三到四年就彻底换血一次的组织里,他保留了一批不换血的人。
而软件的价值恰恰就来自连续性——API 的高度一致性、向后兼容、issue 的历史上下文,还有「为什么当年会这么设计」的记忆。这些东西写不进论文,也交不了接。学生一走就没了,就算你再找其他博士生来接,也很难接得好。而专职的软件工程师是长期稳定的职位,他不会走。
【顺便说说同济取消长聘】
这也是为什么,之前同济说取消长聘编制、所有人员都要考核,我会觉得有问题。这其实是变相在逼着研究人员去搞短平快的小项目。那种短期内回报很低、但长期收益爆炸的项目,你是没办法做的。
总感觉大家还是人心太浮躁了。很多项目你必须要沉下心,可能要搞十几年。
关于同济取消长聘这件事对整个科研界的利弊,后期我应该会单独出一期视频专门讲一下,这里就先不展开了。
【社区经理:我头一次见的岗位】
另外要专门提一下的是,工程师这个岗位我还是见过不少的,很多大组都会养专门的工程师或者实验员。但社区经理这个职位,我真的是头一次见。
她的头衔是 scverse Community Manager,就是这个社区的管理者。她甚至不写核心代码,她做的是运营整个社区:运营 Zulip 聊天和 Discourse 论坛,保证有人提问的时候有人回;运营相关组织的账号;组织年度的线下会议;组织新贡献者的上手活动;维护文档和行为准则——让新人从「用户」变成「贡献者」。
这其实是一个含金量非常非常高、也非常重要的岗位。
很多时候我们开发完一个库,往 GitHub 上一扔,论文一发,我们的工作就彻底结束了。但这样是没法长期维持下去的。前面说了,他组里有专职工程师来维护项目,可你还需要另一件事:随着时间发展,你要升级迭代、要扩展、要兼容别的东西;而这段时间里,会不断有新人进入这个领域——本科生升硕士、硕士升博士。那么怎么快速抢占这批新鲜血液,怎么让他们从「学习者」快速转化成「社区的贡献者」?这就是社区经理要干的事。
社区的衰亡是静默的。某个社区一段时间没人说话,其实就相当于死了。社区必须活跃、必须有人,它才会长期吸引人。设一个专职岗位盯着这件事,就相当于给这个飞轮装了一个马达。
而且这个岗位的产出,PI 本人是做不了的——你不可能随时去解答用户各种各样的疑问。
【钱从哪来:一条和论文基金平行的融资曲线】
那另一个问题来了:这些钱是从哪来的?
这也是咱们国内很多组的一个大问题:这类人员几乎不产出论文,但他们确实对工具的长期维护做出了不可替代的贡献,那用什么钱去养他们?
国外有专门资助开源软件开发和维护的基金。Scanpy 就入选了 CZI「科学领域必要开源软件」计划,是首批 32 个项目之一——同一批入选的是 SciPy、NumPy、pandas、matplotlib、scikit-learn。后来 scverse 又转入了 NumFOCUS 的财政赞助,也就是科学计算的基础设施这个体系。被分到这个类别里,本身就是一种加冕。
而且这笔钱的性质是关键:它是发给「维护者」的,不是发给「创新者」的。CZI 官方说明里写得很明白,这笔钱用来雇更多的开发者、改进文档、提升可用性、引导新贡献者、召集社区。
所以这个循环就是:软件做到足够重要 → 拿到专门养软件的钱 → 雇专职工程师和社区经理 → 软件变得更加重要 → 再拿到更多这类钱。
这是一条和论文基金完全平行的融资曲线。而绝大多数 PI,从来没有上过这条曲线。
所以如果真的有 PI 在看这期视频,或者你现在还只是博士生、博士后,我很推荐你以后认真考虑一下这条路子。
【交出控制权,换来更大的权力】
然后还有前面已经提到好几次的 scverse。这里想说的是:交出权力,其实可以换来更大的权力。
2021 年,Scanpy 和 AnnData 从 theislab 迁移到了 scverse 组织,由 NumFOCUS 财政赞助;2023 年,一篇 Nature Biotechnology 的论文把它正式化。表面上看,他是放弃了控制权。
但实际上,开源才是全局的最优解。相当于是把某个实验室私有的工具,变成了大家公用的基础设施。而法比安始终是创始成员机构,他仍然在核心位置上,同时长期维护的责任被分担了,抗风险能力反而上升了。
在开源世界里,正式放弃所有权,往往是扩大实际影响力最有效的手段。你像现在中国的 AI 很多都是开源的打法,DeepSeek、千问等等,都是这个逻辑。
【比开源更高一层:裁判权】
比开源软件还要更厉害的一层,在于裁判权。
这一层我之前完全没有关注到,是后来整理这些资料的时候才发现的。你看他被引最高的那些论文里,有好几篇引用量非常高的,一类是 tutorial,一类是 benchmarking,还有一类是 best practice。这些东西的性质根本不是科研发现,而是教程、基准、规范、议程设定——相当于他在制定规则。
tutorial 和规范这一类,作用是吸引新鲜血液。你刚进入这个领域,就有各种各样专门的新手教程让你快速上手他的工具,从而抢占整个市场。
而 benchmarking 这一类,意味着他不只做参赛的选手。他也发论文,但他同时还写规则、当裁判、办比赛、出教材。这就意味着他握着「什么叫好方法」的定义权——你提出的方法为什么好?得由我这个 benchmark 说了算。你要证明你比别人好,你得在我的基准上跑。
于是新人从第一天就被塑造了:全世界的单细胞新手看的入门课程是他们写的,学的分析流程是用他们的工具做的。所以你一开始就已经上了他们的车了。
而且这类论文的引用效率极高。他被引 Top 20 的论文里,有八篇是工具、教程、基准、最佳实践这一类,而不是生物学发现——单位工作量的引用回报,远高于普通的发现类论文。
这其实还引出了另一个问题:科学工作者的任务不只是创造和发明,还有一项任务是普及科学发现。我觉得这是现在很多 PI、很多科研工作者根本没有注意到的一件事。
【举两个 AI 领域的例子】
说到 benchmarking,我问你一个问题。李飞飞非常出名,对吧,在 AI 领域被誉为「AI 女神」。但你想一想,你看到她名字的第一反应,那个最大的贡献是什么?
我猜 99% 的人会说:ImageNet。
那我就要问了:ImageNet 是什么类型的贡献?它是一个新算法吗?不是。它是一个 benchmark,一个数据集。大家全都要在她的数据上去跑、去竞赛、去比较。每一个人提出一个新算法,只要做 benchmarking,就要在她的数据上跑,就要引用她的文章——她的影响力就又被提升了一次。
还有 AI 领域的吴恩达,你对他的第一反应是什么?很可能是「我上过吴恩达老师的课」。
没错,这也是科研领域的一条赛道。你不一定非要去提出新想法、做出新的科学发现,你还可以致力于基础科学的传播,让更多人了解它。因为每一次有新人学习你的课程,都是在扩大你这个讲课人的影响力。
【位置红利:2013 年的时间套利】
接下来讲位置、数据和组织权力。我们先说时间红利。
2013 年,37 岁的法比安拿到了 TUM 的讲席教授,加上亥姆霍兹 ICB 研究所所长。这个时间点太关键了:
2013 年,他拿到永久教职加研究所;
2014 年,10x Genomics 成立;
2015 年,scRNA-seq 通量爆炸,数据爆炸;
2016 年,人类细胞图谱启动,大量数据要处理;
2017 年,Scanpy 仓库创立。
他是在浪潮起来的前两年,就拿到了「不需要靠短期论文求生」的资源自由。
说实话,这一点对我们、尤其是对中国的学者来说,现在是越来越难了。就像刚才提到的,取消永久教职,本质上还是在逼着人们发短平快的论文,你没有办法去沉淀、去探索真正的未知。
因为未知领域你不可能预先知道结果,不可能一次实验就立马成功,你要经历无数次失败。失败的这段时间,你没有论文产出怎么办?没有资金资源怎么办?这些都是问题。
我们为什么缺少从 0 到 1 的东西?我们老是说欧美擅长从 0 到 1,中国擅长从 1 到 100。就是因为很多未知领域前期投入成本太高、风险太高。我们以前确实更喜欢做那些欧美已经验证过走得通的方向,然后在上面进一步扩展。但从无到有这件事,谁也不敢保证一定能成功,更不敢说「我要在三年、或者三加三六年之内做出什么什么」——这种话谁也不敢说。
所以我觉得,还是制度上的问题。中国的高等教育制度,本身就在逼迫研究人员必须发短平快的东西,你不能沉下心去做真正从无到有的工作。
【数据联盟席位】
还有就是他的数据联盟席位——他是 Human Cell Atlas 的董事会成员。
说实话,生信领域做方法、做算法的人,最大的瓶颈不是算法,而是数据。而且还不是公开数据——很多组自己测的数据,那种才是最宝贵的。
他加入了这个组织,就意味着可以接触到核心的、超大量的、最高价值的数据集,而且你的工具还会成为整个联盟的默认工具。再加上细胞图谱类的论文动辄上百个作者,引用复利极高。
【组织权力:把科学资本兑换成资源分配权】
再往上看他的组织权力这一层:从加入各种组织,到管理一个部门,最后到拜仁州 AI 委员会主席——他现在甚至已经有了政策影响力。
这一层的本质,是把科学资本兑换成资源分配权。他现在已经不只是一个「做得好的科学家」,他是一个「决定别人能不能做」的人。
但这里要特别注意:这些全都是在 Scanpy 成为标准之后才到来的。你首先要有不可替代的技术资产,然后才有组织权力。顺序不能反。
【人才网络:校友也是分发渠道】
还有一层是人才网络。他指导过 65 位以上的博士生、50 位以上的博士后。
而且他用的是「Y 模型」的培养方法:每个博士生配两个导师,一个管方法,一个管生物。这一点我觉得非常好。我现在也在读博士,我的导师是既懂方法又懂生物,同时我们还跟专门搞生物医学的组合作,也跟专门做计算机算法的组合作,这些资源我都能接触到。生信本来就是一个交叉领域,这样能让人得到更全面的培养。
然后你看他教出来的学生,比如 Alex Wolf 现在是一家初创公司的 CEO。每一个离开的人,都会在新的机构继续用这一套技术栈,然后再把它交给下一代。所以校友不只是人情网络,校友也是一条分发渠道。
这里也想奉劝国内的一些 PI:不要总把学生当奴隶,搞得学生毕业之后恨不得跟老师老死不相往来。这其实是一件收益非常低的事——看起来你压榨学生,短时间内快速拿到了论文,但你损失的是长期利益。
当然这又回到那个原点:本身的奖惩制度就有问题,所以学者没法静下心来搞科研。
【那我们博士生能学到什么】
最后我们来讲一下,对于我们这种年轻的博士生,到底有什么能学的。
首先得承认,很多时候你真的不得不相信天命这种东西。你看他本身什么都没做,风口直接就找上他了;他后来进一步起飞靠的是 Scanpy,而 Scanpy 是他手底下的人提出来的。很多时候真的得看运气。风口来了,同时你也要有把握住机会的能力——有的人是你给他机会,他也不中用。
所以他这条成功路线,很多地方我们是没法复刻的:单细胞的浪潮已经开启了,底层工作也已经有人做了,再加上时间点、运气,人家拿到终身教职之后立马起飞——这些都不是我们能复刻的。
但也有一些是可以做的:
第一,生物基础模型的评测标准。像 scGPT、Geneformer 这些,才刚刚起步,它们的评测标准其实还没有特别明确。这个方向是可以搞一下的。
第二,扰动数据(Perturb-seq)。它的数据量在涨,而且可以辅助 AI 制药。跟生物医药相关,资本又密集,你就更容易变现,资本也更青睐,拿资金相对更容易。
第三,中文的生态位。说实话,全球的单细胞社区里,中文的我还真没找到特别好的。像生信技能树之类的,我感觉他们不是真正在做社区,而是在卖课,而且是卖那种基础入门课。当然我不是说他们不好,而是说一个正常的交流社区,应该是交流高质量的中文文档、教程、公开课,这些才是我们可以做的。
我创这个账号的初衷,也是想做一些这方面的贡献,跟大家多交流生信领域的进展和工作。后续我看看能不能进一步给大家提供一个交流的平台。
第四,把自己的算法合并进已有生态。我们开发完算法之后,可以看看能不能并到 Scanpy、scverse 相关的库里去,借它的渠道提升自己的影响力。打不过,我们就先加入嘛,对吧。
第五,发布大规模数据集,做成 benchmark 评判标准。
第六,把工程质量当成科研战略,而不是一个杂活。不要发完文章、代码往 GitHub 一扔,工作就结束了。我能不能长期维护?能不能用心维护?能不能让使用者快速上手?这些虽然不会立马看到收益,但长期的收益不可忽视。
第七,绑定数据源。中国人口庞大,很多时候是比较容易拿到数据的。可以多跟大的临床相关的组去合作——我们这边做算法,那边产出数据。在中国这个策略的性价比很高,因为产数据的组远多于能分析数据的组。
【可见性是复利资产】
还有一点:可见性是复利资产,越做越好。
法比安在 ISCB 的访谈里专门提到过,Dana Pe'er 的讲故事能力震撼了他,让他意识到叙事在科研中的重要性。
具体怎么做?你可以在社交媒体平台上发表你的见解,去真正地推广一些东西;或者去讲 tutorial、办 workshop,就像吴恩达他们做的那样,去做科学的科普和推广。我觉得这也是一条非常值得打造的赛道。而且说实话,这条赛道我还真没怎么见到国内有太多人在走。
当然,我做这个账号的另一个可能的动机就是——我其实也有点想走这条赛道,我也想让更多人能快速上手单细胞相关的分析和算法。
【最重要的一条:怎么选导师、选组】
最后,也是我认为最重要的一条:对于我们博士生,甚至研究生,你在未来选导师、选组的时候,除了评估这个组的产出、评估 PI 的帽子之外,你还要看几件事——
第一,这个组能不能拿到别人拿不到的数据?
第二,这个组的算法是不是真正受欢迎?不要只看它发表的文章高不高,你要去看它的 GitHub 仓库,看使用者的星数,看 issue 区的活跃度,这些都是评估标准。
第三,看这个实验室的校友,他们的出路好不好。
我觉得这是一个隐形的分水岭。一个好的导师,真的可能会影响你的一生。
拿我个人来说,我们组也不是什么特别大型的组,但我是真心挺感激我的导师的,他对我很好,组里的资源也会尽量给我争取。所以我觉得,你导师的好坏直接决定了你这个学术生涯顺利与否。
最后也非常感谢各位收看。各位有什么建议或者还想看什么内容都可以在评论区发一下。