《RNAFlow:基于逆折叠流匹配的 RNA 结构与序列设计》

分开设计的模型

这是一个很好的问题 —— 你确实有必要仔细审查这个细节。

❓ 在 RNAFlow 中,RNA 序列结构 是联合共同设计的吗?

是的,但并非在最严格意义上的同时共同设计。

以下是详细说明:


🔄 RNAFlow 中的共同设计机制

组件 行为
序列 首先 从一个加噪的蛋白 - RNA 复合体(通过 噪声到序列)中预测出来
结构 其次 通过使用 预训练的 RF2NA 折叠序列来预测
监督 预测的序列和由此折叠得到的结构都用于计算损失
反向传播 梯度 通过 序列和结构传导(通过 Gumbel-Softmax + RF2NA)

🔍 解释

  • 并非真正的共同设计: 该模型不会像某些蛋白质共同设计方法那样,在一个循环中 迭代地共同优化 序列和结构。
  • 但: 由于梯度从结构损失传导回序列预测器,结构确实会影响序列的优化方式。

因此,序列在优化时 会考虑结构后果,但结构是 不会共同学习的(RF2NA 是固定的)。


🧠 总结

RNAFlow 是 半耦合的共同设计

  • 序列是可学习的
  • 结构是固定的(预测的,而非学习的)
  • 设计是 以序列为中心 的,结构用于通过可微分的监督来引导优化。

您想要将其与像 AlphaDesign 或基于 SE(3)- 变换器的联合模型这样的真正的共同设计架构进行比较吗?

好的,以下是翻译成中文的内容:

以下是论文《RNAFlow:基于逆折叠流匹配的 RNA 结构与序列设计》的 任务数据(输入/输出)框架 的简洁概述:

🎯 任务

设计能够与给定蛋白质结合的 RNA 序列和结构,使用名为 RNAFlow 的机器学习模型。其目标是:

  • 联合生成 RNA 序列 及其 3D 主链结构
  • 以目标蛋白质的序列和结构为条件 进行生成。
  • 建模 RNA 的结构 柔性(即构象系综),以提高设计质量。

📥 输入和 📤 输出

组件 描述
输入 - 蛋白质序列:{pi}(氨基酸 tokens)
- 蛋白质结构:P ∈ ℝ^(Lp × 3 × 3)(每个残基的 N、Cα、C 原子)
输出 - RNA 序列:{ri}(核苷酸 tokens:A、C、G、U)
- RNA 结构:R ∈ ℝ^(Lr × 3 × 3)(每个核苷酸的 P、C4′、N1/N9 原子)

🏗️ 框架概述

🔁 RNAFlow 工作流程:

  • 第 1 步:加噪
    在 RNA 结构上应用随机噪声,采用流匹配策略(从高斯噪声到目标 RNA 结构进行插值)。

  • 第 2 步:序列预测(噪声到序列)
    使用基于图的神经网络(GVP-GNN 逆折叠模型),在以下条件下预测 RNA 序列:

    • 加噪后的 RNA 结构
    • 蛋白质序列和结构
    • 时间步 t(编码噪声水平)
  • 第 3 步:结构预测(RF2NA)
    使用预训练的 RosettaFold2NA 模型,将预测的 RNA 序列进行折叠以生成 RNA 主链结构。

  • 第 4 步:损失函数
    训练最小化:

    • 经过 Kabsch 对齐后,预测 RNA 结构与真实 RNA 结构之间的均方误差(MSE)
    • RNA 序列预测的交叉熵损失

🌀 基于轨迹的增强(RNAFlow-Traj)

  • 在推理过程中,从中间结构预测中收集多个构象。
  • 使用多图 GNN(轨迹到序列)基于此 构象系综 预测最终的 RNA 序列,从而更好地模拟 RNA 的柔性。

🔍 重新打分模块

  • 一个单独的模型对多个生成的 RNA 样本进行打分,并选择具有最高预测恢复概率的样本

如果您需要图表来可视化此工作流程,请告诉我。

以下是 RNAFlow 框架的 步骤流程

🧬 RNAFlow 流程:以蛋白质为条件的 RNA 序列与结构设计


(1)输入准备

  • 蛋白质输入:

    • 序列:{pi}(氨基酸)
    • 结构:P ∈ ℝ^(Lp × 3 × 3)(N、Cα、C 原子)
  • RNA 目标(仅在训练期间用于监督):

    • 序列:{ri}(核苷酸)
    • 结构:R ∈ ℝ^(Lr × 3 × 3)(P、C4′、N1/N9 原子)

(2)先验采样与噪声注入

  • 从标准高斯分布中采样噪声:R₀ ∼ N(0, I₃)
  • 通过 Kabsch 对齐将 R₀ 与真实值 R 对齐,以消除旋转。
  • 从均匀分布中采样时间步:t ∼ U[0,1]
  • 插值得到加噪结构:Rₜ = t·R + (1–t)·R₀

(3)序列预测:噪声到序列

  • 输入:[蛋白质结构 P、蛋白质序列 {pi}、加噪 RNA 结构 Rₜ、时间步 t]
  • 模型:基于 GVP-GNN 的逆折叠网络
  • 输出:RNA 序列预测 {r̂i}

(4)结构预测:RosettaFold2NA(RF2NA)

  • 输入:{r̂i}(预测的 RNA 序列)
  • 输出:RNA 结构 (预测的主链)

(5)损失函数

  • 结构均方误差(MSE):MSE(Kabsch(R̂, R), R)
  • 序列损失:CE({r̂i}, {ri})
  • 综合损失:
L = MSE(R̂, R) + ∑ CE(r̂i, ri)

(6)(可选)基于轨迹的推理:RNAFlow-Traj

  • 运行多个流步骤(例如,N = 5)以构建 RNA 结构轨迹
  • 使用 轨迹到序列(Traj-to-Seq) 从多个构象预测最终 {r̂i}
  • 聚合多个中间结构以进行动态建模

(7)(可选)输出重新打分

  • 对于多个生成的样本:
    • 输入:{pi}P{r̂i}
    • 输出:预测 RNA 是否实现 ≥30% 序列恢复的得分
    • 根据得分选择最佳 RNA 设计

您需要这个流程的可视化流程图吗?

posted @ 2025-05-06 01:49  GraphL  阅读(157)  评论(0)    收藏  举报