报告人:曹龙兴(西湖大学生命科学学院 研究员/助理教授/独立 PI)
论坛:百家论坛第十期(艾博泰克冠名赞助)
讨论嘉宾:杨威(深圳医学科学院)、任俊明(浙江大学医学院良渚实验室)、张海刚(上海交通大学)、谢丽(艾博泰克)
底本:sources/曹龙兴_DeNovoProteinDesign_讲稿.md
Tip 与 trick 摘要(摘自讲稿原句)
以下各条均摘自讲稿中报告人的原话,不作改写,以便与后文对照。
| 序号 | 摘要 | 讲稿原句 |
|---|---|---|
| 1 | 管线已换成 diffusion / MPNN / AlphaFold | 「现在大家都是用扩散模型(diffusion everything)。」「现在大家基本上都用 ProteinMPNN(MPNN everything)。」「现在基本上大家都会跑 AlphaFold 去验证,如果 AlphaFold 认为对,那我们就认为对。」 |
| 2 | 小分子先看重原子和极性 | 「选择小分子还是比较重要的。」「如果你有足够的重原子(heavy atom)、有很好的相互作用,那么就比较容易拿到结合蛋白。但如果小分子非常小又非常 polar,就意味着有更少的原子去接触,得到的亲和力肯定也不会很高。」 |
| 3 | 物理方法更容易写约束 | 「它没有任何 AI,但一个好处是你可以很好地控制哪里结合、哪里不结合、哪里必须有氢键、哪里没有氢键、哪里必须暴露、它有什么二级结构。这应该比 AI 更加容易控制。」 |
| 4 | 开关不要把蛋白做得太稳、界面不要太强 | 「我们不想让蛋白太稳定,因为后续是想做一些传感器设计,太稳定就不太灵敏。」「你还不想要蛋白之间的相互作用太强——如果太强,就不会有响应能力,相当于开关打不开。」 |
| 5 | CID:两个小分子、负设计 | 「我用两个小分子同时诱导,可能会增强诱导能力。」「通过负设计(negative design)防止形成 homotrimer。」 |
| 6 | 诱导比结合难,要能量景观 | 「你既不能让蛋白之间太强,又得让蛋白和小分子之间很强,就像在刀尖上跳舞一样。」「所有现在的 AI 方法都只能预测结合不结合,但能不能诱导(induce)是做不到的。」「如何让蛋白质设计不仅仅是建模一个稳定状态,而是建模整个能量景观。」 |
| 7 | 大酶分步生成,完全从头有时比只改口袋成功 | 「先生成一边,再生成另一边,两步走的方式把底物牢牢卡住。」「完全从头设计反而在三个位点都成功了,而只改口袋的在其中两个位点没有成功。」 |
| 8 | 每个 design case 可跑 hallucination | 「任何一个 design case 你可能都需要跑一下 hallucination design,可能没什么坏处。」「如果单纯想做一个蛋白去结合小分子,这种迭代优化方式应该是最高效的。」 |
| 9 | 抗体:固定 framework,只优化 CDR | 「固定一些 framework,只优化 CDR。」「我们固定 framework 不变,只通过 hallucination 方法优化 CDR。」 |
| 10 | binder:生成很多,再用 AlphaFold3 过滤 | 「做 binder design 什么方法都可以,只要生成很多,最终用 AlphaFold3 等去 filter 都行。」「按照 David 的说法,binder design 其实已经是一个 solved problem,尤其对简单靶点都可以做出来。」 |
| 11 | 只用高置信 hallucination 做蒸馏 | 「最开始随机序列虽然会生成结构,但它的信心没有那么高。」「如果你用最终它很相信的结果,我觉得可以用来训练其他模型,这也是 AI 中常用的“蒸馏”(distillation)方式。」 |
| 12 | 设计给起点,定向进化收尾;easy target 不能代表应用 | 「从头设计可以给你一个很好的起始点(starting point)。」「定向进化在未来很长时间应该很难被完全替代。」「现在用的 benchmark 都属于传统免疫比较容易做到的 easy target。」 |
一、主持人开场与嘉宾介绍
今天的百家论坛是由我们主办、由艾博泰克冠名赞助的系列论坛,本期是系列论坛的第十期。我们有幸邀请到了西湖大学生命科学学院的曹龙兴老师给我们带来精彩报告。曹老师的报告题目是 De Novo Protein Design: From Physics-Based Modeling to Deep Learning,即蛋白质从头设计相关。
报告人简介
曹龙兴老师 2012 年本科毕业于山东大学,2012 至 2017 年在中国科学院生化与细胞所攻读博士学位。博士期间主要从事利用结构生物学手段对细胞表面结构体进行结构和功能研究。2017 至 2021 年在华盛顿大学 David Baker 教授实验室接受博士后训练,期间致力于蛋白质设计方法的开发和应用。2021 年 8 月加入西湖大学生命科学学院,担任研究员、助理教授、独立 PI。目前曹老师实验室主要基于对蛋白质折叠以及其他生物活性分子相互作用的基础科学研究,开发全新的蛋白质设计方法,并探索从头设计蛋白在生物学以及精准医学等领域的应用。
讨论嘉宾简介
杨威老师:2019 年在清华大学获得博士学位,2019 至 2025 年在美国华盛顿大学 David Baker 教授实验室(与曹老师同一个实验室)接受博士后训练,2025 年 6 月全职加入深圳医学科学院(SMART)任特聘研究员。杨老师实验室主要专注于开发全新蛋白质相互作用的计算设计方法,及其在免疫调控和肿瘤免疫治疗中的应用。
任君明老师:浙江大学医学院良渚实验室研究员、博士生导师,在美国斯坦福大学 Christopher Garcia 实验室接受博士后训练。任老师长期致力于研发合成生物学新技术并将其应用于免疫治疗的基础和转化研究,率先开发了合成细胞因子和胞内阻断疗法等多种技术,也成功运用从头蛋白质设计技术提高了 IL-2 及其受体的作用亲和力,发表了一系列文章包括 Cell Research、PNAS 等。任老师也参加过我们最早期的一期论坛。
张海刚老师:上海交通大学研究员、博导,人工智能蛋白质设计课题组 PI。张老师课题组主要聚焦于 AI 生物与医学的交叉前沿,致力于构建生物分子结构预测与设计的统一底座模型,并将其应用于蛋白质药物研发、生物材料设计等领域,发表了包括 Nature 子刊等在内的一系列工作。
谢丽老师:艾博泰克(Abclonal)分子事业部高级产品经理。2011 年本科毕业于吉林大学,2019 年在中国农业科学院获得作物遗传育种博士学位,在植物学方面发表了多篇文章,目前负责艾博泰克子公司的分子酶与 NGS 产品相关规范。
接下来就把时间交给曹老师。
二、报告开场与方法分类
各位朋友大家好,非常感谢主持人的介绍,也感谢四位讨论嘉宾以及在线上各位对蛋白质设计感兴趣的朋友。
今天我稍微改了一点点题目。蛋白质设计最近这些年发展非常快,大家应该对方法非常感兴趣,因为蛋白质设计确实可以应用到生物学研究的各个方面。所以今天我就给大家介绍一下我们实验室在蛋白质设计方法方面这几年所做的一些探索,既包括基于物理的方法,也有现在非常火热的机器学习方法。
蛋白质从头设计可以说是最近非常火热的领域,发展也非常快。尤其是 2024 年,David Baker 以及 Demis Hassabis 团队共同获得了诺贝尔化学奖,标志着这个领域已经非常成熟,甚至可以说已经接近顶点。在最顶级的期刊上,几乎每个星期都会有一些全新的方法出来,可以做一些非常有意思的事情。
现在的蛋白质设计方法,如果按方法学来分类,基本上可以分为两类:一种是基于物理建模(physics-based modeling)的,另外一种是基于深度学习(deep learning)的。以前大家比较熟悉的可能是 Rosetta。在很久以前,大家可能还不认为 Rosetta 是完全基于物理的,因为它里面有很多基于知识的打分项(knowledge-based scoring term),不像分子动力学(MD)或量子力学那样做完全的物理模拟。它其实也有很多 knowledge-based term 加进去让它更好地适用于蛋白质的建模。但是现在随着 AI 的出现,大家基本上把 Rosetta 等一类方法归为非深度学习方法。不过现在真正去用 Rosetta 或学 Rosetta 的人可能慢慢变少了,因为现在绝大部分做蛋白质设计的人基本上都会用到 AI 方法。AI 确实非常好用,也不太需要太多的额外知识——你只需要知道蛋白质怎么折叠,然后有一个好的模型,有好的输入输出,只要模型训练得足够好去学习结构和序列的关系,有足够的深度神经网络、足够的样本,就可以得到一个很好的符合功能的蛋白。
我们实验室在这两个方面都有一些探索。不管是从头设计(de novo design)还是基于物理建模,还是 AI 深度学习,其实大概率都可以分为这几步:首先生成结构(generate structure),然后设计序列(sequence design),最终通过筛选候选序列去完成设计。如果将两类方法对比起来看:
- 骨架生成(backbone generation):以前我们可能用 Blueprint Builder 或者做 docking 的方式,新进入蛋白质设计领域的人可能甚至都没用过 Blueprint Builder。但是现在大家都是用扩散模型(diffusion everything)。
- 序列设计:以前基于物理的方法基本上就是做序列设计,比如 FastDesign,虽然 FastDesign 其实非常慢,一个很小的蛋白可能都要十几二十分钟。现在大家基本上都用 ProteinMPNN(MPNN everything)。
- 筛选过滤:以前在七八年前,基本上要做 forward folding 或 forward docking,去计算它的能量漏斗(energy funnel),来看哪些蛋白是好的。现在基本上大家都会跑 AlphaFold 去验证,如果 AlphaFold 认为对,那我们就认为对。
最终实验验证(experimental validation)其实是差不多的。但在 AI 时代,成功率确实大大提高了。不过对于基于物理建模的方法,如果非常高精度地计算能量的话是很慢的。
以前的话都是用片段组装(fragment assembly)去慢慢地通过改变它的构架来做——不管是对接(docking)还是从头预测(de novo prediction)都是比较常用的。就是把一段段自然界已有的片段(fragment)拼接起来,做不同的 Monte Carlo sampling,改变它的骨架结构(backbone structure)。另外一个,如果高精度的 Rosetta scoring 是非常慢的,所以人们又开发出 RPX score 去做很快的 docking。当然还有一个叫 RifScore(residue-field score),就是先对任何一个靶标生成很多很多种可能发生相互作用的残基(residue),然后再通过一些非常高效的 hash 搜索方式来找到最可能的一些 docking 构象(docking pose)。这是以前我们比较常用的一系列生成结构以及打分获得好的结构的方式。
但是这些接口大部分都是分开的。
三、基于物理建模的蛋白质设计
1. 整合式物理建模系统
我们实验室的其中一个探索,就是把整个流程整合起来。整合起来的意思就是相当于我们把片段组装、RifScore 完全用一个简化的蛋白质模型统一起来。
这个蛋白质模型没有任何侧链(side chain),当然它会有一个简单的空间冲突检测项去检查是否有原子碰撞,但整个蛋白质就是由 N、Cα、C、O 这几个主链原子连接起来的简单球模型。每一个原子的位置通过一个简单的变换矩阵(transform matrix)来表示,这样达到了让蛋白质模型最简化的目的——速度快。
在最简化的片段组装或 docking 的时候,又不去忽略很多细节,只做一些低分辨率的打分,比如用 RPX 或 RifScore 以及 hash 方法来做低分辨率打分(low-resolution scoring)。这样在 AI 或扩散模型出现之前,我们就已经可以达到按需生成的目的。比如直接做 binder 设计是很简单的,就像用 Blueprint Builder 一样。但是在那个时候我们就可以很快地不同于我们以前做 binder 质量去做的 docking——你可以有一个靶标,甚至有一个锚点,就可以很快地生成你想要的结合结构。
大家注意,这个是在还没有 RFdiffusion 的时候,我们当时做到这个东西还是感觉挺酷的。但是因为 AI 的发展太快了,所以现在按需生成已经是标配了,而不是像以前那样要先找 scaffold 再做 docking。
当时我们测试用的一个靶标是 C3 对称靶标(C3 symmetric target),C3 其实还是比较难的一个靶标,在当时做骨架这一段的话,已经可以很好地按需生成,不管是用 AlphaFold 验证,在当时都可以生成很好的结果。
也就是说,虽然现在都在做 diffusion 或其他基于生成的蛋白质设计,但是其实基于物理建模,用以前所有那些很高效的方法把它们揉在一起、放在一起,变成一个非常经典的系统,其实也是可以完成这件事情的。
2. 小分子结合蛋白的按需设计
另外一个可以按需生成的好处是,我们不仅仅做蛋白质-蛋白质结合蛋白(protein binder),还可以做任意分子。因为所有的小分子结合蛋白(small molecule binder),在两三年前都还需要扫描 scaffold 库去做。但如果我们有这样一套可以按需生成的物理方法,你就可以针对任何一个靶标——可以是一个小分子(small molecule)——快速生成结合蛋白。
具体做法是:在靶标周围生成所有可能的相互作用残基(interaction residues),对于金属配位还可以根据每一个配位残基生成所有可能的配位残基(coordinating residue)。然后通过片段组装(fragment assembly),同时通过 RifScore 用 hash 方法快速找到哪个方式、哪个蛋白既可以和小分子有相互作用,又可以通过 RPX 方法检查蛋白质的 packing 是否合理。
这种方式不基于已有的任何 scaffold,但可以生成一个有非常好的空腔(cavity)或口袋(pocket)去包裹小分子的蛋白质结构。它没有任何 AI,但一个好处是你可以很好地控制哪里结合、哪里不结合、哪里必须有氢键、哪里没有氢键、哪里必须暴露、它有什么二级结构。这应该比 AI 更加容易控制。
我们测试了几个小分子:度鲁特韦(dolutegravir)、一个黄素(flavin)分子,以及一个荧光素(fluorescein)小分子。你把这个荧光素结合之后固定在平面状态,它就可以产生荧光。都可以得到很好的小分子结合蛋白。
另外一个,因为现在不管用什么 AI 方式还是以前蛋白质 docking 的方式,选择小分子还是比较重要的。就像我们做共价交联(cross-linking),如果靶标非常难,那你就注定很难拿到一个成功的 binder。小分子也是一样的:如果你有足够的重原子(heavy atom)、有很好的相互作用,那么就比较容易拿到结合蛋白。但如果小分子非常小又非常 polar,就意味着有更少的原子去接触,得到的亲和力肯定也不会很高。
针对这种比较小的分子,我们依据物理方法可以按照小分子的大小非常快速地生成结合蛋白。我们测试了一些神经递质小分子——血清素(serotonin)和多巴胺(dopamine),可以生成非常好的恰好包裹的口袋。通过在物理空间模拟蛋白质折叠,让它折叠成一个特定的结构,同时又和小分子有比较好的相互作用。对于这两个比较小的分子,我们都可以得到几十微摩尔(μM)级别的小分子结合蛋白。
这里大家可以看一下,我们粗略统计了比如最近或者一直以来大家做蛋白质 binder 的发表结果,我们这个 binder 还是 32.7(μM),是一个非常小的。那就证明了我们直接通过物理这种方法,确实可以很好地很高效地获得小分子结合蛋白。
3. 小分子传感器设计
得到 binder 之后,我们就可以做很多事情。因为它非常小、很好控制,我们就把一个蛋白分成两个部分,通过 split protein 的方式,只有在小分子存在的情况下才诱导两个部分组装在一起。比如连接一个 split GFP 样蛋白,有小分子存在时两个部分恰好在一起,改变了荧光素的局部环境,就可以让它发光,这样就成为一个传感器。
我们得到了这样一个血清素传感器:如果没有配体,信号很小;但如果有配体,它的 ΔF 可以达到 14 倍多,也就是变得非常亮。
4. 金属结合蛋白与金属传感器
另外一个,因为我们是物理建模,可以直接模拟如何配位(coordinate)一个金属。比如对于锌(zinc),可以用四面体(tetrahedral)配位;对于镍(nickel),可以通过正八面体配位。都可以提前规定好,规定好之后采样它的旋转异构体(rotamer),就是配位相互作用场(coordination interaction field),然后直接折叠成一个蛋白。
这样折叠蛋白的一个好处是我们可以控制它的能量——我们不想让蛋白太稳定,因为后续是想做一些传感器设计,太稳定就不太灵敏。我们让金属恰好位于蛋白质的核心,同时蛋白比较小。好处是:有金属的时候,金属可以驱动蛋白质去折叠;没有金属的时候,因为整个核心非常 polar,蛋白就会完全散开。
我们的体积排阻色谱(SEC)可以看到:没有金属时蛋白变得很大(出峰位置很早,说明是松散状态);有金属时就变得更小(出峰更晚)。CD 结果也可以明显看到,没有金属时就是一个 random coil。这样就可以很好地利用:没有金属时连上一个 split 荧光素,处于 unfolded 和 random coil 状态;加入金属后可以把 split 荧光素两个部分拉到一起,成为一个很好的金属传感器。
5. 光响应蛋白设计
我们还可以用基于物理的方法做一些配体光响应蛋白(light-responsive protein)。光响应蛋白用物理方法如何做呢?我们可以非常特异地开发一个方法,利用光响应氨基酸——比如偶氮苯(azobenzene)类,光一照就可以发生顺反异构化(cis-trans isomerization)。如果把它放到蛋白质的界面上,就可以让蛋白具有光响应能力。
这些设计本身有很多约束(constraint):你需要建模一个非天然氨基酸,还需要让非天然氨基酸恰好在界面上。同时,物理能量计算的一个好处是你还不想要蛋白之间的相互作用太强——如果太强,就不会有响应能力,相当于开关打不开。
我们的做法是:先采样所有光响应氨基酸可能的位置,再做 docking。在 docking 的同时,通过 RPX 计算蛋白-蛋白相互作用,同时检查是否有合适的位置去安装非天然氨基酸。最终选择一些 scaffold,它有很好的配体结合,非天然氨基酸恰好在界面,同时蛋白-蛋白界面又不能足够大。这样就可以生成一系列光响应的多聚体。
比如光响应的 homodimer,在 340 nm 光照时直接变成顺式构型(cis configuration)就会打开,在 420 nm 光照回去后就会组装,实现了一个非常快速响应的可逆光响应二聚体(reversible light-responsive dimer)。当然还可以做 heterodimer。有了这些光响应蛋白,可以做很多事情,比如水凝胶(hydrogel)——在一种光照时由于偶氮苯之间的交联形成凝胶,光照打开后变成液体,可以来回切换。所有这些都是完全从头设计(totally de novo)的。
6. 化学诱导二聚化(CID)系统
做物理建模还可以做一些小分子响应的东西。所有响应蛋白都需要你去平衡蛋白之间的相互作用以及蛋白和感应模块的亲和力——蛋白不能太强,否则很难用小分子去调控。这体现了基于物理方法的好处。
比如做化学诱导邻近(chemically induced proximity, CID):一个小分子加入后会把蛋白 A 和蛋白 B 拉到一起。以前这种 CID 系统还是非常局限的、非常少,而且做这种东西以前如果完全从头(totally de novo)设计其实也没什么人做,很多还是依赖于已有的复合物,比如小分子和蛋白的复合物,然后再以做 binder 的形式来做。
对于完全从头设计,我们选择了三重对称的金刚烷胺(amantadine),它是治疗流感的已上市药物,又很便宜、可以很多地方买到,是非常小的分子。我们用物理方法先有一个 scaffold 库,因为想做一个配体调控的同源三聚体(ligand-regulated homotrimer),需要在生成时就考虑:小分子存在时可以把蛋白诱导组装,没有的时候蛋白之间又很弱、不能组装成 homotrimer。在 docking 的时候同时优化蛋白-蛋白相互作用以及蛋白-配体相互作用,同时因为你整个建模过程可以计算每一个位置的能量,我们就可以非常轻松地增加或减少小分子——比如我用两个小分子同时诱导,可能会增强诱导能力。
我们测试了用一个小分子和两个小分子的情况。一个小分子时,在没有小分子且蛋白浓度很高的情况下,也会有自聚(self-association)倾向;加上小分子后会组装得更正常。但如果增加到两个小分子,在很高蛋白浓度时也几乎没有自聚;加入小分子后会在 SEC 上前移,说明发生了三聚化(trimerization)。我们解出来的结构也和设计几乎一致。
有了这些小分子调控系统,就可以去调控各种生物学过程。比如 HSF(heat shock factor),它本身的 DNA 结合域(DBD)在单体时几乎不会结合,只有三聚体时亲和力才够。我们用金刚烷胺调控的同源三聚体开发了一个只含单个蛋白的响应系统,随着金刚烷胺浓度升高就会激活下游基因表达。
还可以把两个同源三聚体连起来变成异源三聚体(heterotrimer),通过负设计(negative design)防止形成 homotrimer,这样就会形成一个比较好的 heterotrimer。ITC 数据显示:没有小分子时两个亚基几乎不结合,但随着小分子浓度提高就会很好地组装成最终的复合物。这种东西可以用作转录调控——把 DNA 结合域(DNA-binding domain)和转录激活域(transcription activation domain)分别放在我们设计的异源三聚体上,就可以控制基因表达。我们也在动物水平上验证了:因为金刚烷胺是 FDA 批准的、安全可口服的药物,如果蛋白在肝脏表达,就可以直接通过口服给药来开关信号(turn on/off signal)。
四、基于深度学习的蛋白质设计
上面介绍的主要是我们在基于物理建模方面做的工作。但是现在几乎所有人都在做 AI,AI 方法基本上主导了整个蛋白质设计领域。大家可以看到各种各样的方法,而且我这里也没有列全,因为每天还有不同的方法出来。AI 确实发展很快,它不仅仅像 ChatGPT 或 Claude 等大语言模型那样,对蛋白质设计的影响也是非常巨大的。我们实验室在这方面也做了很多探索。
1. ProdDiffusion:基于扩散模型的骨架生成
我们实验室陈彤开发了一个基于扩散框架的蛋白质生成方法 ProdDiffusion,整体架构和基本思路与 RFdiffusion 等比较类似,通过扩散的方式生成蛋白骨架。
2. ProdFlow:结构-序列协同扩散
后来我们又进行了更进一步的探索。现在大部分基于扩散(diffusion)或流匹配(flow matching)的方法,基本的原理其实比较类似——就是如何加噪、如何去噪这个过程是不是有随机性。主要在结构空间中进行引导,结构对序列的真正约束或采样还是比较有限的。虽然 RFdiffusion 等方法有一定序列信息,但序列本身是离散的——20 种氨基酸。
我们做的一件事情是先训练一个结构感知的语言模型(structure-aware language model),把序列信息映射到高维隐空间(latent space)。有了这样一个映射的高维 embedding 之后,在扩散时就可以更好地实现结构和序列的协同扩散(co-diffusion)。在 ProdDiffusion 基础上,我们开发了 ProdFlow,它有更好的序列感知(sequence-aware)能力。
对于完全给定的靶标,我们可以把靶标的结构和序列都当作约束(constraint)去引导生成。也可以做 binder,达到一些比较好的成功率和亲和力,达到纳摩尔(nM)级别。
更有意思的一点是,因为现在做 binder 设计已经有无数种方法——不管是 BindCraft 还是各种 diffusion 方法——如果你有很强的序列引导约束(sequence embedding),可以做另外一件事情:不是做普通 binder,而是做条件性 binder(conditional binder)。
比如我们有一个靶标是内吞性受体(internalizing receptor),我们不是说做一个 binder 直接结合它,而是说这个 binder 只有在另外一个蛋白存在的时候才去结合这个内吞性受体。好处是:如果我们要清理 Aβ,一边连一个 binder 去结合内吞性受体,另一边去结合要清理的 Aβ,用柔性 linker 连接。如果没有条件性设计,就算没有 Aβ 也可能被内吞性受体推进去清理掉。条件性设计的好处是:它自己不会结合受体,会先结合要清理的 Aβ,然后再像一个递送工一样去结合内吞性受体,达到更好的清理目的。也可以看到数据:在没有 Aβ 的时候它非常容易(不结合受体),只有在 Aβ 存在的时候才可以很好地清理。
3. 金属蛋白酶设计:切割 Aβ 用于阿尔茨海默症治疗
另外一个,在有很好的序列约束情况下,我们前段时间在 Nature Catalysis 上发表了一篇工作——金属蛋白酶的设计。和传统的酶设计方式比较类似,有一些催化残基(catalytic residues)去 scaffold 底物。但做金属蛋白酶有一个难点:要有很好的底物特异性(substrate specificity),因为要切割特定的序列。
David Baker 他们在 bioRxiv 上也有一篇类似工作,是做底物和酶同时设计,后面再做一些改造。我们这个方法可以直接把很强的序列信息通过 sequence embedding 的方式在结构生成过程中编码进去,生成时就会有序列感知,更好地生成序列特异性的蛋白酶去切割特定底物。
我们用了一种分步生成(stepwise generation)的方式:因为蛋白酶还是比较大的,直接一步生成不管是用 RFdiffusion 还是我们说的 ProdFlow 都比较困难。当然如果一个地方有很多 GPU 资源那肯定很简单,但对于我们来说一个是节省计算资源,另外一个是对底物有更好的包裹性。我们有一个催化中心(catalytic center),先生成一边,再生成另一边,两步走的方式把底物牢牢卡住——既更好地生成,又有更好的特异性。
我们设计了一些切割 Aβ 的蛋白酶,切割它的疏水区域使其不能聚集(aggregate),有望为阿尔茨海默症(Alzheimer's disease)治疗提供新的帮助。我们在三个位点上用了两种不同方法:一种只改变结合口袋(binding pocket),另一种完全从头(totally de novo)设计包括 scaffold 和 pocket。针对三个位点,完全从头设计反而在三个位点都成功了,而只改口袋的在其中两个位点没有成功。这可能意味着如果改动较小,由于原来结构的约束(constraint),使其不能兼容新底物(not compatible with the new substrate)。
结构验证也比较好,和我们的设计模型一致。底物密度在 cryo-EM 上也可以清楚看到。催化活性方面,中间一个位点的催化活性最好。也就是说,虽然在整体骨架(overall backbone)层面,现在用 diffusion 或 flow matching 方法生成应该没问题,但对于酶的活性位点(active site)这种非常精确的催化残基排列的调控,应该还是整个领域的难点。
我们也做了一些 partial 优化——先对部分加噪再重新生成,可以得到亲和力更好的酶。我们最好的 kcat/KM 已经可以达到 3000 多,已经接近一些常用酶了,当然还有很大提升空间。特异性方面,有些比较好——不切割另外两个位点;但有一个特异性还是有点差。也就是说现在蛋白酶的催化活性还是有一些经验性的,你可能做了很多突变会得到一个好的,但真正的完全从头设计非常高效的酶,同时保证序列水平每一个氨基酸精确识别,还是有一定难度。
4. Hallucination-based 设计方法
最后我想分享的是我们实验室另一个基于幻觉(hallucination)的设计方法。
现在基于 hallucination 的设计方法有很多,像 BindCraft 等其实都叫基于 hallucination。但我们的可能还不太一样。在大模型中一般提到的 hallucination 是指它可以编造事实——你问一个问题,它会随机捏造事实,甚至在没有真实信息的时候说得非常真。
现在比如一些像 RSO 或者通过反向传播(back propagation)或 MCMC 采样的方法,也叫 hallucination,但那些更多是网络激活最大化(network activation maximization)——有一个输出,使劲让它优化,让整个网络激活更好。
但如果我们类比于大语言模型的随机捏造,对于 AlphaFold3 这种生成式结构预测模型,它有一个很强的"幻觉":它可能把一个根本不折叠的东西也预测到折叠,两个蛋白或蛋白-小分子根本没有任何相互作用,但由于它整个训练过程看到的都是可以结合的,它就会给你找到一个 pocket 去塞进去。
我们认为这种方式本身就把整个能量景观(energy landscape)给平滑了——本来不能折叠、不能结合的,由于这种"幻觉"能力,生成式结构模型就可能把完全不对的东西预测出结果。
我们发现如果是这样的话,就可以通过迭代式地做 AlphaFold3 结构预测,再做序列设计(sequence design),慢慢通过这种序列和结构组合的方式,用一个结构预测模型来达到生成的目的、达到从头设计的目的,而且效果非常好。
另外一种方式,因为 AlphaFold3 是扩散模块(diffusion module),有多个步骤,你可以做一些条件化(conditioning):不是从随机噪声(random noise)出发,而是从部分加噪的结构(partially noised structure)出发。这样就可以做条件控制——你可以约束只在起始结构周围采样。如果不做任何条件化,就相当于在整个巨大的序列-结构空间采样。这就提供了一个既可以做从头设计(de novo design)、又可以做优化(optimization)的方式。
比如用 Chroma 生成的骨架质量相对不太好,可以通过我们的条件化方式去优化——可以截断(truncate)扩散到不同步数,通过序列-结构协同让 AlphaFold3 的分数变好。但如果用非常短、非常强的条件化,就会和原来非常像;完全不加控制,就基本上和原来天差地别,甚至和原来比要 12、22 Å 的 RMSD。它还可以优化 RSO 生成的结构,提高质量。RSO 应该是一个比较好的通过反向传播来优化或生成骨架的方式了,但通过这种方式还可以提高它的一些质量。
我们还可以用它来优化以前已经验证过的蛋白 binder:既保留 binder 模式(binder mode),又让原来不结合的不能结合,而且亲和力非常高。也适用于小分子结合——可以让一个有口袋但不结合小分子的 scaffold,通过 AlphaFold3 强行先"捏造"出来,再慢慢一轮优化达到目的。
我们做了一个 benchmark:如果单纯想做一个蛋白去结合小分子,这种迭代优化方式应该是最高效的。原因之一是你能保证初始 scaffold 库是好的,成功率更高。我们有一些成功的例子,甚至对于非常 polar 的分子,以前做甚至是 docking-based 的其实是很难想象的,像 ATP 我们都可以达到非常好的 binder,结构上也得到了验证。CMP 等非常 polar 的分子也可以做。
还可以做抗体(antibody)和纳米抗体(nanobody):固定一些 framework,只优化 CDR,通过这种方式达到设计抗体或纳米抗体的目的。比如有一个靶标,不需要固定任何结构,输入就是序列,通过迭代式结构预测和序列设计去优化,从一个巨大空间慢慢到达一个很好的低点,就可以得到 Aβ 的纳米抗体 binder。由于 AlphaFold3 可以处理任何翻译后修饰(post-translational modification)、非天然氨基酸(non-natural amino acid)、共价修饰(covalent modification)等,还可以做共价 binder、信号肽(signal peptide)设计等。也就是说你不需要做任何特殊的模型,都可以达到非常好的设计。
对于完全从头设计(totally de novo),起始不是任何抗体 framework 或小分子 scaffold,而是完全随机(totally random),测试还是比较难的——会生成一些非常长的东西。我们发现 ProteinMPNN 因为有语言模型做很强的序列约束,可能有进化(evolutionary)信息,基于 ProteinMPNN 的 hallucination 反而能生成更 compact 的结果。但一旦 pretrain 之后,总体上 AlphaFold3 的性能可能还是差不多,可能还稍微有点差距。不过一旦有了 compact 结构,就可以继续用 AlphaFold3-based 的 flow 去做任意优化,做这种迭代式的优化。AlphaFold3 一次、ProteinMPNN 一次,这样 base 的 hallucination,可能还能避免局部最优(local minimum)。
当然也可以做酶设计:不需要像 RFdiffusion 那样先生成 scaffold 再做 motif scaffolding,把催化残基用 scaffold 固定住,而是直接告诉它催化残基之间的连接关系,通过 hallucination 方式自动生成。我们生成的酶效率还不错,虽然只用了三个组氨酸催化残基(histidine catalytic residue),可能还缺少其他催化残基,但成功率还是很高。相比于 AlphaFold3-based hallucination 方法,我们觉得主要原因可能是 AlphaFold3 本身对结构的建模还是比较好的。可以生成一些这种醛缩酶(aldolase)等。
后来敏超又经过探索,不仅仅蛋白质,还可以做 DNA、RNA,增加小分子比如 NMPN,可以生成核酸、核酸结合蛋白、蛋白结合核酸、小分子结合核酸等,都可以用这套方式去做。
当然,我们实验室也做一些物理建模,我觉得对于特殊的设计问题,在当前特定条件下,某些方法会有自己特定的优势来达到特定目的。尤其是现在大家更多考虑蛋白质动态构象、酶催化等,各有优势,综合两种方法应该会更好地解决实际问题。
五、实验室团队介绍
我们实验室基本上是一群非常厉害的人:
博文:主要做光响应蛋白(light-responsive protein)
燕喆、一涛、之瑞、启涵:做小分子相关的工作
预开:做诱导相关
陈彤:计算机背景,很厉害,一直做 AI 方法,如何用 AI 更好地做蛋白质设计
燕南:做蛋白酶(protease)
- 敏超:开发了 hallucination design 方法,他应该也介绍了很多次,我觉得这个 hallucination design 还挺有意思的,任何一个 design case 你可能都需要跑一下 hallucination design,可能没什么坏处
当然还有很多其他实验室其他成员。
我们实验室也一直欢迎对蛋白质设计感兴趣的 PhD candidate 或博士后加入,一起去创造全新的方法工具,解决生物学中的各种实际问题。
六、问答与讨论环节
Q1(主持人):蛋白酶设计投稿 Nature Catalysis 的心理路程
主持人:您中间讲到单 β 折叠酶设计,然后投在 Nature Catalysis 上面。您能不能给我们分享一下投稿的心理路程?
曹龙兴:其实没有太多心理路程。蛋白酶理论上一个项目还是想把它做得更好,比如在动物水平上验证。原来 David 那边他其实也都是代表性的工作,后来我们知道他们也在投,我们也在投。后来 editor 对我们要求很高,让我们做很多工作,比如上老鼠实验。我们感觉整个工作还是比较完整的,就和 Nature Catalysis 的 editor 沟通了一下,他们对我们很感兴趣。但我们没想到 editor 不仅对我们要求很高,对其他团队也万般刁难。很感谢 Nature Catalysis 对我们非常专业、非常快速的处理。最终版本和最开始 bioRxiv 上的版本差别很大,后来做了很多东西。
Q2(杨威):对报告的评价
杨威:感谢龙兴的分享,非常系统、非常酷的工作。从非常底层的方法开发到应用都做得非常好。最典型的蛋白质设计研究应该做成什么样的典范——从方法、思路、工具到结果都非常漂亮。我和龙兴以前在西雅图是最好的朋友,现在他在西湖做工作。外面希望国内蛋白质设计的整个队伍越来越大,原来比较少,现在很多了。大家也越来越看到蛋白质设计的应用性更强了,也更方便地应用更多的人去解决实际的问题。现在基本上每个学校都有专门做蛋白质设计的 lab,像线上的张老师主要做 AI 这一块。各种各样的团队越来越大,也欢迎大家更多加入这个队伍。
Q3(张海刚):物理建模与深度学习方法是否割裂?如何融合?
张海刚:您之前用物理建模做了很多成功的工作,后面转向深度学习也成功了。这两个方法感觉是割裂或独立的吗?您最后也提到两类方法可以融合,您现在有什么好的想法或更多见解?
曹龙兴:这个问题非常好,我简短的回答就是我没有答案。我们几年前就在做物理建模整套方案,做得比较早,虽然很多文章还没发出来。那时候直接生成在 2022 年感觉很酷,后来 RFdiffusion 出来了,功能差不多,好像不太能融合上去。尤其做一些简单的小分子 binder,好像生成就可以替代了。
但对于光控等需要非天然氨基酸的设计,或者做小分子调控时需要更好地平衡蛋白-蛋白和蛋白-小分子相互作用,可能先用物理方法生成骨架,后面再用 AI 做序列设计和筛选会更好。
现在我们实验室的结合更多是上下游结合:这一步用物理方法生成什么样的骨架蛋白,后面用 AI 方法做 filter 和 design。但如何真正把物理打分融合在 AI 模型里面,我们确实还没有好的方法。几年前我尝试过用物理约束去约束 AI 的序列设计模型,后来发现 AI 之后就强调数据驱动,不太需要从物理中加东西,只要数据足够好就够了。
我觉得这是一个非常好的问题,没有答案。如何把两个方法融合得更好,使整个模型更加可控、更加精确、更加具有物理意义,对于描述蛋白质动态可能会更好。
Q4(任俊明):抗体设计的表现与传统纳米抗体的差异
任俊明:您对 PD-L1 等做了一些抗体设计,策略是对 CDR 进行 design、保留原来的 backbone。获得的抗体在表现上和传统的纳米抗体或 scFv 有什么差异?
曹龙兴:我现在还不太熟悉直接通过筛选得到的抗体的起始亲和力是多少,但我们设计的抗体很多时候亲和力可能离最终目标还有一定距离,比如纳米抗体的亲和力基本在几百纳摩尔左右。表达方面没有任何问题,因为我们固定 framework 不变,只通过 hallucination 方法优化 CDR,让它去结合 binding site。整个表达没什么问题,因为 framework 足够好。
现在抗体的难点是如何把亲和力做得很高。另外我们还没有试一些比较难的靶标,我们做的基本上是以前有过 binder 的。对于传统筛选,我觉得也比较难。但如果有一个起始的纳米抗体或 scFv,用这种方式做优化肯定是有效的。
Q5(任君明):CID 系统的大小控制
任俊明:传统 CID 工具比较少,而且都很大,可能对表达工程改造有一定难度。您这边获得的蛋白大小是否可控?
曹龙兴:这可能是从头设计比较好的地方。像一些 rapamycin 这些 regulator CID,它可能本身有一些副作用。小分子设计的也很小,我们整个蛋白只有 65 个氨基酸,其实就是用我们以前做小折叠蛋白的那一类库就可以设计。我们现在可以做 homotrimer、heterotrimer 等,理论上任意天然的我们都可以做到。变小非常简单,设计的量都非常小,表达非常好,因为它就是一个 totally de novo design protein,totally de novo design protein 都有这个性质。
现在最难的一点是如何提高灵敏度(sensitivity)。比如你现在设计一个 binder 还是比较简单的,但小分子就如何说在很低的浓度——亲和力这关键也不是亲和力——最难的一点就是你既不能让蛋白之间太强,又得让蛋白和小分子之间很强,就像在刀尖上跳舞一样。你蛋白太强就有很强的背景(background),如果蛋白和小分子又不强就需要很高浓度的小分子。所有现在的 AI 方法都只能预测结合不结合,但能不能诱导(induce)是做不到的。就像现在 AlphaFold3 文章中也提到的,比如用小分子两个构象可不可以,也不行。这是我们最近一直关注的:如何让蛋白质设计不仅仅是建模一个稳定状态,而是建模整个能量景观。有了能量景观之后,你就知道亲和力到底怎么样、能不能诱导、两个状态之间的能量差多少、需要加多少小分子。
Q6(谢丽,艾博泰克):AI 直接生成抗体的成熟度和产业布局
谢丽:用 AI 直接跳过动物免疫去生成抗体,目前实现起来怎么样?什么时候能大规模成熟应用?作为公司如何布局?
曹龙兴:现在确实每天都有新文章出来可以做抗体,做抗体的能力肯定是有的。但一个问题是大家选择的靶点可能不是真正要做的——真正做抗体可能希望靶点是传统免疫很难得到的,甚至是 variant-specific 的。但现在用的 benchmark 都属于传统免疫比较容易做到的 easy target,只是为了证明方法 work。比如 PD-L1,现在所有 binder design 的文章都用它做 benchmark,甚至包括我们 2022 年那篇 Nature 文章做一些 benchmark 也都包括那个,但它们都属于 easy target,大概率有比较好的 binding site。
对于简单靶点应该都能生成,但对于比较困难的,比如 GD2 这样的糖抗原,或者 GPCR 暴露很小的膜上区域,可能还是比较难。这可能是真正实际应用的难点——简单的大家都能做,难的传统免疫不好做、计算也不好做。可能还需要方法发展一下,尤其是抗体。需要积累数据(高质量抗体结构数据)、算法改进,以及后期筛选是否要加入物理计算方法如 MD simulation 来更好地选择 candidate。现在可能还没有一个开源统一的方法真正达到那种目的。可能还需要更多上下游的——不管是方法还是筛选,甚至是人的 expert 去最终挑一些 candidate,都有帮助来让你最终 success rate 或 affinity 更高。
Q7(谢丽):科研抗体公司与药厂在 AI 抗体发现上的差异
谢丽:我们艾博泰克做科研抗体,靶点很多,可能一两次更新就达到可销售状态;药厂可能针对一个靶点不停打磨。这两种场景对模型或算法要求有什么不一样?
曹龙兴:这个我还真没考虑过。药厂可能只需要一两个抗体就可以维持市值,利润很高。但对于方法验证,要针对很多靶点都行才行。最好的是上下游结合——真正做方法的知道药厂最关切什么。比如设计 PD-L1 抗体没有药厂会感兴趣,但如果药厂有自己的靶标,和上游结合好需求,这才是最好的。
Q8(谢丽):平台型与产品型两条产业化路径
谢丽:高校老师做产业化有两条路径——做平台(服务公司帮药厂做抗体优化发现)或做产品(直接把一个治疗阿尔茨海默症的蛋白酶或金属酶做成药),您怎么看?美国现在是什么情况?
曹龙兴:这跟个人兴趣有关。做方法的可能更喜欢做平台,关心 biology 的可能想把产品做好。两个可能都需要。
Q9(聊天框问题):金刚烷胺轻微多聚导致背景信号
提问:我们的金刚烷胺有轻微的多聚,导致背景信号,有什么改进建议?
曹龙兴:这个朋友可以给我发 email,告诉我具体应用场景和怎么多聚的,我们在体外是没有多聚的。你到时候发个 email,我们看看有什么改进建议。
Q10(聊天框问题):蛋白酶设计是否考虑局部电场
提问:蛋白酶设计是否考虑了局部电场?
曹龙兴:局部电场我们还没有做到。现在 AI 方式没有考虑局部电场,所有酶的设计基本上只考虑催化主题(catalytic motif)——就是催化残基的构象精确性。关于局部电场怎么影响酶活性,应该还是不知道的——这也是蛋白质设计的一个问题,我们根本不太清楚局部电场怎么影响,在设计中就更谈不上设计了。
Q11(聊天框问题):数据和物理驱动是否抛弃了人类知识
提问:数据和物理驱动上我们是否抛弃了人类知识?
曹龙兴:可能也不叫抛弃了人类知识,更多的是整个人类发展的趋势。不管是各行各业都是这样的——已经从还原论(reductionism)似的(你先知道某一个是怎么回事,然后亲手搭建)慢慢走向了模型统一的。这就牵涉到了模型的可解释性。AlphaFold 很好,你可以知道哪个模块很重要,但它到底为什么可能弥散在成千上万个参数中,我们是不知道的。人类知识的沉淀更多是还原论,我们知道某个部分怎么样,可以靠理性去推。我觉得这是发展趋势,人类当前恰好在这个 AI 时期。未来随着 AI 发展,我们可能会更加理解,还是说根本不需要人类去理解蛋白质怎么折叠的更底层原理——AI 就够了——我也不好说。
Q12(聊天框问题):从头设计蛋白与自然界蛋白性能对比
提问:蛋白质从头设计很有意思,但从用途上看,光控蛋白的激活倍数、小分子 sensor、酶的催化效率,和自然界有类似功能的蛋白相比怎么样?
曹龙兴:现在如果单纯设计其实还是比较难的,比如催化效率还是很难接近自然界的。最好的方式是:从头设计可以给你一个很好的起始点(starting point),如果有一个比较好的定向进化(directed evolution)方法,那就是完美的闭环——既借助蛋白质设计生成你想要的结构和序列,大概是对的,虽然效率或亲和力不够好,再借用类似自然界的方法比如 evolution 去优化它。我觉得定向进化在未来很长时间应该很难被完全替代,因为对于很多特殊的问题,AI 的数据还是太少了。
Q13(聊天框问题):如何看待靶蛋白缩短的工作
提问:我如何看待靶蛋白缩短的工作?这一类蛋白应该是否有蛋白混凝胶?
曹龙兴:这个我还不太清楚,应该是 Nature 上面的文章。你要设计靶蛋白缩短的话,还可以做一些关键位点的 scaffolding。
Q14(线上提问):Hallucination 与 BindCraft 的区别及优势
提问者:BindCraft 是基于序列用 AlphaFold multimer 去预测模型,不断迭代优化序列和结构。您提到的 hallucination 也是 AlphaFold3 不断去预测想象,虽然空间结构有可能是错误的。这两者有什么区别?Hallucination 在 binder design 中相对于 BindCraft 有什么优势?
曹龙兴:两者不一样。BindCraft 更多是通过反向传播(back propagation)来优化,最大化 AlphaFold2 的 activation。也就是说你最终做 back propagation 的目的,相当于一直让你的网络激活更好。它虽然也优化了一些序列,但序列可能更多是在 latent space 那种序列。而 hallucination 更接近于我们大模型说的那种"幻觉"——它把不能折叠成这种结构的序列折叠成这种结构。可能不一样,建议你可以看看我们的文章。
关于优势,我个人觉得做 binder design 什么方法都可以,只要生成很多,最终用 AlphaFold3 等去 filter 都行。BindCraft 也行,RFdiffusion 也行,ProdFlow 也行。按照 David 的说法,binder design 其实已经是一个 solved problem,尤其对简单靶点都可以做出来。
Q15(线上提问):Hallucination 产生的"不可能结构"是否会污染训练数据
提问者:如果本来不可能存在的结构被 hallucination 产生出来,有没有可能作为以后训练大模型的 input,对模型造成污染?
曹龙兴:在一轮迭代中它不仅仅生成一个结构,还要生成一个 AlphaFold3 的 confidence metric。最开始随机序列虽然会生成结构,但它的信心没有那么高——它自己也不那么相信。随着慢慢优化,它就越来越相信。如果你用最终它很相信的结果,我觉得可以用来训练其他模型,这也是 AI 中常用的"蒸馏"(distillation)方式。它是有一个 confidence 的,这个我可能没提到。
Q16(线上提问):Binder 在体内受其他因素影响,是否应纳入 AI 模型考虑
提问者:Binder 设计出来后在体内可能受环境因素等影响,可能非特异性结合其他蛋白,这是 AI 模型没有考虑的。有没有可能把这种情况纳入未来 AI 模型的改进?您觉得这种考虑更复杂的情况在未来是否也可能被实现?
曹龙兴:可以,但这个我也没想清楚,在体内还是太复杂了,考虑到可能也很难。
我个人一直秉持这样的态度:我只关注当前有什么问题,就想办法解决它。比如你考虑的蛋白会不会受影响,那就去想办法测试有没有影响、怎么改进。我并不觉得要做一个东西解决所有问题,但现在最实际的是更关注一个特定的问题、想办法解决。通过这种积累,慢慢应该就能达到你想要的那种解决所有问题的状态。我不知道我说的对不对。
七、结语
由于时间限制,我们今天的论坛就到这里了。再次感谢曹老师给我们带来的精彩分享,也感谢杨老师、任老师、张老师和艾博泰克的谢老师参与讨论,感谢各位老师和学生参加本次论坛,最后感谢赞助商艾博泰克。艾博泰克主营抗体和分子酶试剂、生命科学仪器、抗体发现 CRO 服务等,致力于为全球生命科学工作者提供更好的产品和服务。