Skip to main content

9 Use Cases of SeGram

下面把论文 第 9 节 USE CASES OF SEGRAM 拆开讲清楚。
这一节讲的是:SeGraM 的模块化设计让它不仅可以端到端跑完整流程,还能把 MinSeed 和 BitAlign 拆开单独使用。因此论文给出了三种典型用例:端到端映射、单独 alignment、单独 seeding。


一、为什么 SeGraM 能拆开用?​

论文原文:

As a result of the flexibility and modularity of the SeGraM framework, we can run each accelerator (i.e., MinSeed and BitAlign) together for end-to-end mapping execution, or separately.

翻译:
由于 SeGraM 框架具有灵活性和模块化,我们可以把两个加速器(MinSeed 和 BitAlign)合在一起做端到端映射,也可以分开单独使用。

通俗理解:
SeGraM 就像一套工具组合:

  • MinSeed 是“快速定位器”,负责找候选区域;
  • BitAlign 是“精细比对器”,负责精确比对。
  • 你可以两个一起用(完整流程),也可以只用其中一个,搭配别的工具。

二、三种用例详解​

1. 端到端映射(End-to-End Mapping)​

论文原文:

For sequence-to-graph mapping, the whole SeGraM design (MinSeed + BitAlign) should be employed, since both seeding and alignment steps are required. With the help of the divide-and-conquer approach inherited from the GenASM algorithm, we can use SeGraM to perform sequence-to-graph mapping for both short reads and long reads. Because traditional sequence-to-sequence mapping is a special and simpler variant of sequence-to-graph mapping (i.e., a graph where each node has an outgoing edge to exactly one other node), SeGraM can be used for sequence-to-sequence mapping as well.

翻译并解释:

  • 适用场景:完整的 S2G 映射,需要 seeding 和 alignment 两步。
  • 组件:MinSeed + BitAlign 一起工作。
  • 支持读长:短读和长读都行,因为 BitAlign 继承了 GenASM 的分治策略(divide-and-conquer),能把长 read 切成窗口处理。
  • 也支持 S2S:因为 S2S 是 S2G 的特例——线性参考就是每个节点只有一条出边的图。所以 SeGraM 也能跑传统的序列到序列映射。

通俗理解:
这是 SeGraM 的“完全体”。输入是 query read,输出是它在参考图(或线性参考)上的最优比对位置。
无论你是做图映射还是传统线性映射,都可以用这一套。


2. 对齐(Alignment)——单独使用 BitAlign​

论文原文:

Since BitAlign takes in a graph-based reference and a query read as its inputs, it can be used as a standalone sequence-to-graph aligner, without MinSeed. Similar to SeGraM, BitAlign can also be used for sequence-to-sequence alignment, as sequence-to-sequence alignment is a special and simpler variant of sequence-to-graph alignment. BitAlign is orthogonal to and can be coupled with any seeding (or filtering) tool/accelerator.

翻译并解释:

  • 输入:图参考 + query read。
  • 单独使用:不需要 MinSeed,BitAlign 自己就能做 S2G 对齐。
  • 也支持 S2S:同样因为 S2S 是 S2G 的特例。
  • 可与其他工具耦合:BitAlign 是“正交”的,意思是它不依赖特定的 seeding 工具,可以搭配任何 seeding 或过滤工具/加速器。

通俗理解:
BitAlign 就像一个“精细比对引擎”。
你可以用自己的 seeding 工具找到候选区域,然后把候选子图和 read 交给 BitAlign,让它做精确比对。
它不关心候选区域是怎么来的,只要给它图和 read 就行。

适用场景:

  • 已有 seeding 工具,但 alignment 太慢,想用 BitAlign 加速;
  • 研究新的 seeding 算法,用 BitAlign 做标准 alignment;
  • 只需要 alignment 功能的场景。

3. 种子(Seeding)——单独使用 MinSeed​

论文原文:

Similarly, MinSeed can be used without BitAlign as a standalone seeding accelerator for both graph-based mapping and traditional linear mapping. MinSeed is orthogonal to and can be coupled with any alignment tool or accelerator.

翻译并解释:

  • 单独使用:不需要 BitAlign,MinSeed 自己就能做 seeding。
  • 支持两种映射:图映射和传统线性映射都行。
  • 可与其他工具耦合:MinSeed 也是“正交”的,可以搭配任何 alignment 工具或加速器。

通俗理解:
MinSeed 就像一个“快速候选区域生成器”。
你把它接在自己的 alignment 工具前面,它就能快速找出候选子图,然后你的 alignment 工具再做精细比对。
它不关心后面用什么 alignment 工具。

适用场景:

  • 已有 alignment 工具,但 seeding 太慢,想用 MinSeed 加速;
  • 研究新的 alignment 算法,用 MinSeed 做标准 seeding;
  • 只需要 seeding 功能的场景。

三、三种用例对比​

用例使用的组件输入输出适用场景
端到端映射MinSeed + BitAlignquery read最优比对结果完整 S2G 或 S2S 流程
单独 AlignmentBitAlign图参考 + query read最优比对结果搭配任意 seeding 工具;只做 alignment
单独 SeedingMinSeedquery read候选子图搭配任意 alignment 工具;只做 seeding

四、为什么这种模块化设计重要?​

论文强调 SeGraM 的灵活性和模块化,主要有三个好处:

  1. 可重用:
    MinSeed 和 BitAlign 都可以独立使用,不需要绑定在一起。
    用户可以根据现有工具链,选择只替换其中一环。

  2. 可集成:
    它们都是“正交”的,可以和其他 seeding/alignment 工具耦合。
    比如,你可以用 BWA 做 seeding,用 BitAlign 做 alignment;或者用 MinSeed 做 seeding,用 GraphAligner 做 alignment。

  3. 适应不同需求:
    有些人只需要加速 alignment,有些人只需要加速 seeding。
    SeGraM 提供了灵活的组件,而不是一个封闭的黑盒。


五、总结:第 9 节的核心逻辑​

  1. SeGraM 是模块化的:MinSeed 和 BitAlign 可以组合,也可以分开。
  2. 三种用例:
    • 端到端映射:MinSeed + BitAlign,完整 S2G/S2S 流程。
    • 单独 Alignment:只用 BitAlign,搭配任意 seeding 工具。
    • 单独 Seeding:只用 MinSeed,搭配任意 alignment 工具。
  3. 都支持 S2G 和 S2S:因为 S2S 是 S2G 的特例。
  4. 正交性:两个组件都不依赖对方,可以灵活集成到现有工具链。

一句话:
第 9 节讲的是 SeGraM 的三种用法:你可以把它当作完整的 S2G/S2S 加速器,也可以只取它的 seeding 或 alignment 部分,搭配其他工具使用。这种模块化设计让 SeGraM 更灵活、更通用,能适应不同的基因组分析流程。