Details: End-to-End FLow
下面给出端到端流程图。先放一张 ASCII 总览图,再给 Mermaid 版本(可渲染),最后按阶段拆解每步的输入/输出与中间数据结构。
一、ASCII 端到端流程图
┌─────────────────────────────────────────────────────────────────────┐
│ 输入 │
│ • k 个 PPI 网络 G₁, …, G_k(人、鼠、蝇、线虫、酵母) │
│ • 序列相似性 E(Ensembl BLAST bit-score,归一化) │
│ • 参数:α=0.6(拓扑/序列权衡), β=0.01(相对阈值) │
│ γ(PPR 传送概率), ε(push 残差阈值), 物种顺序 π │
└─────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────┐
│ 阶段 1:成对打分(原版 IsoRank,Box 1) │
│ │
│ for each pair (G_i, G_m): │
│ R ← α A R + (1−α) E ← 幂法迭代求唯一正解 │
│ 得到跨物种蛋白对 (v_i, v_j) 的功能相似分数 R_ij │
│ │
│ 注意:IsoRankN 省略原版 IsoRank 最后的“贪心一对一匹配”步骤 │
└─────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────┐
│ 中间产物:功能相似图 G_sim │
│ │
│ • 顶点:所有 k 个网络的全部蛋白 │
│ • 部:每个物种一个部(k 部图) │
│ • 边:只连不同物种的蛋白对;部内无边 │
│ • 边权:R_ij(IsoRank 功能相似分数) │
│ • 性质:加权 k 部完全图 │
└─────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────┐
│ 阶段 2:Star Spread(对选定物种 G_L 中的蛋白 v,按星总权重降序) │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 2a. 计算星 S_v │ │
│ │ S_v = { u ∈ N(v) | w(v,u) ≥ β · max_x w(v,x) } │ │
│ │ • N(v):G_sim 中 v 的邻居(即所有其他物种的蛋白) │ │
│ │ • 相对阈值 β·w_max,适应不同蛋白分数尺度 │ │
│ │ • 只含跨物种邻居,不含同物种蛋白 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 2b. 在 S_v 诱导子图 H 上做谱局部划分 │ │
│ │ │ │
│ │ ① 近似 Personalized PageRank(push 方法) │ │
│ │ p ≈ γχ_v + (1−γ)pW, W = ½(I + D⁻¹R) │ │
│ │ • χ_v:起点指示向量 │ │
│ │ • γ:传送回 v 的概率,控制局部性 │ │
│ │ • 懒惰随机游走:1/2 不动,1/2 按边权跳 │ │
│ │ • push 直到所有残差 ≤ ε·deg │ │
│ │ │ │
│ │ ② 按 p(u) 降序排序 S_v 中节点 │ │
│ │ │ │
│ │ ③ 扫描割:对每个前缀 T_j = 前 j 个节点 │ │
│ │ 计算 conductance Φ(T_j) │ │
│ │ Φ(S) = σ(S) / min[vol(S), 2m − vol(S)] │ │
│ │ │ │
│ │ ④ 取 S_v^s = argmin_j Φ(T_j) │ │
│ │ ——包含 v 的低 conductance 近 clique 簇 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 2c. 分配簇 │ │
│ │ C_new ← (S_v^s \ assigned) ∪ {v} │ │
│ │ C ← C ∪ {C_new} │ │
│ │ assigned ← assigned ∪ C_new │ │
│ │ • 只纳入尚未分配的蛋白,避免重复分配 │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 处理完 G_L 后,执行阶段 3 │ │
│ └───────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────┐
│ 阶段 3:Star Merging │
│ │
│ for each pair of clusters (C_a, C_b) in C: │
│ 设 C_a 中心 v₁, C_b 中心 v₂,且 v₁、v₂ 在同一 PPI 网络 │
│ if ∀ u ∈ C_b \ {v₂}: w(v₁,u) ≥ β·max_x w(v₁,x) │
│ and ∀ u ∈ C_a \ {v₁}: w(v₂,u) ≥ β·max_x w(v₂,x) │
│ then 合并 C_a 与 C_b │
│ │
│ 目的:解决 k 部图“部内无边”问题,使同物种旁系同源进入同一簇 │
│ 反复扫描直到无簇可合并 │
└─────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────┐
│ 阶段 4:迭代 │
│ │
│ • 按物种顺序 π 移动到下一个物种 G_{L+1} │
│ • 重复阶段 2–3 │
│ • 直到所有蛋白都被分配到某个簇 │
│ │
│ 物种顺序 π = (人, 鼠, 蝇, 线虫, 酵母) │
│ (选此顺序因平均归一化熵最小;120 种排列均优于其他方法) │
└─────────────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────┐
│ 输出:簇集合 C = {C₁, C₂, …} │
│ │
│ • 每个簇是跨物种蛋白集合,至少含两个物种 │
│ • 可含同物种旁系同源(由 Star Merging 纳入) │
│ • 每个蛋白最终属于一个簇 │
│ • 这些簇即多 PPI 网络全局对齐的结果 │
│ • 后续可用于功能正交同源预测、GO/KEGG 富集分析等 │
└─────────────────────────────────────────────────────────────────────┘
二、Mermaid 版本(可渲染)
三、按阶段拆解:每步的输入/输出与中间数据结构
| 阶段 | 输入 | 操作 | 输出/中间产物 | 关键参数 |
|---|---|---|---|---|
| 1. 成对打分 | ,序列相似性 | 对每对网络跑原版 IsoRank:,幂法迭代 | 功能相似图 :加权 部完全图,边权 | |
| 2a. 计算星 | ,蛋白 | 取 的高权跨物种邻居: | 星 及其诱导子图总边权(用于排序) | |
| 2b. 谱划分 | 星 的诱导子图 | ① push 近似 PPR 得 ;② 按 排序;③ 扫描割取最小 conductance 前缀 | 低 conductance 子集 | |
| 2c. 分配 | ,已分配集合 assigned | 只把未分配蛋白纳入新簇 | 新簇 ,更新 与 assigned | — |
| 3. 星合并 | 簇集合 | 对同物种中心的两个簇,检查彼此成员是否互相“认可”(相对阈值 ) | 合并后的簇集合 | |
| 4. 迭代 | 下一物种 | 重复 2–3,直到所有蛋白分配 | 最终簇集合 | 物种顺序 |
四、流程图中的关键“数据形态”变化
原始输入
k 个无权 PPI 图 + 序列相似性
│
▼ 阶段 1
连续分数矩阵 R(所有跨物种蛋白对)
│
▼ 构建
加权 k 部完全图 G_sim(边权 = R_ij)
│
▼ 阶段 2a(每个 v)
星 S_v(高权邻居集合,仍带边权)
│
▼ 阶段 2b
Personalized PageRank 向量 p(每个节点的局部重要性)
│
▼ 扫描割
子集 S_v^s(低 conductance,近 clique)
│
▼ 阶段 2c
离散簇 C_new(一组蛋白,尚无同物种成员)
│
▼ 阶段 3
合并后的簇(可含同物种旁系同源)
│
▼ 阶段 4 迭代
最终簇集合 C(每个蛋白属于一个簇)
五、一句话总结流程图
输入 个 PPI 网络和序列相似性 → 原版 IsoRank 成对打分得到功能相似图(加权 部完全图)→ 对每个蛋白取星 ,在星上做 push 近似 Personalized PageRank + 扫描割得到低 conductance 子集 → 分配未分配蛋白形成簇 → 对同物种中心的簇按“互相认可”条件合并 → 按物种顺序迭代直到所有蛋白分配 → 输出跨物种功能簇集合。
如果你愿意,下一步我可以把这张流程图配上 Table 1–3 的指标速查表,或者整理全文的符号表,方便你写笔记或做汇报。