fix: README标题从Mamba2更正为Mamba3,更新项目名称和核心创新描述
🌳 想看世界树的分支吗?三螺旋带你见证未来。 Care to witness Yggdrasil’s branches? Three helices bear every future. 三链 = 世界树的根/干/枝:时间链 h_t 深入时间长河(树根),空间链 h_s 展开世界结构(树干),因果链 h_c 分叉出多种未来(枝叶)。 同参数 Transformer 看不见枝叶(zero_ratio=1.0 全猜 0),三链在长程外推里看见每一个分支(OOD decay≈0)。
🌳 想看世界树的分支吗?三螺旋带你见证未来。 Care to witness Yggdrasil’s branches? Three helices bear every future.
三链 = 世界树的根/干/枝:时间链 h_t 深入时间长河(树根),空间链 h_s 展开世界结构(树干),因果链 h_c 分叉出多种未来(枝叶)。 同参数 Transformer 看不见枝叶(zero_ratio=1.0 全猜 0),三链在长程外推里看见每一个分支(OOD decay≈0)。
h_t
h_s
h_c
Three-Chain DNA-Mamba3 for Long-Range Spatiotemporal Extrapolation 基于 Mamba3(dt-RoPE 复数状态空间 + 梯形离散化)的三链状态空间模型,用于多智能体长程时空预测,长程外推不退化。
mamba_ssm
SDD nexus(12 视频,多 agent 交互复杂场景)是本工作独有的差异化验证,下面精简表给出三项最关键指标——因果通道贡献、Agent 身份学习、长程衰减控制。完整数据见 SDD 章节 与 paper/Nexus消融实验验证报告.pdf。
核心叙事:SSM 在多智能体复杂场景下不仅不退化,还能学到 agent 身份动力学(2.3 倍随机基线),因果链在多场景下从噪声升级为关键贡献链——这是同参数 Transformer 完全无法做到的差异化能力。
长程时空外推(long-horizon spatiotemporal extrapolation)是世界模型的核心能力:模型在训练时观察 T_train 步序列,推理时需对 T_eval ≫ T_train 的未来做预测。Transformer 受注意力二次复杂度与位置编码外推能力限制;近年 SSM(Mamba/Mamba2)在线性复杂度下展示出长程建模潜力,但其外推稳定性随规模放大是否保持,此前缺乏严格验证。
本工作在 O(N) 线性复杂度 下,于 [100M → 1.13B] 参数区间验证长程外推不退化(单点 decay 与窗口 decay 双双全部落在 ±2% 内,1B 三 seed spread 仅 0.5%),并经三个控制实验(随机标签 / 多 seed / 步数对照)严格证明这是真实泛化而非指标噪声。
训练 T=100 步,评估 T=150 步(超训练 50%,从未见过的长度)。同参数 Transformer-tiny(3.43M)在 OOD 区完全塌缩成全猜 0(zero_ratio=1.0),三链 SSM(3.26M)OOD changed_acc 稳定在 0.5952 ± 0.0034,decay ≈ 0。一眼可见「不退化」的核心优势。
causal_conv1d
仓库含完整可运行源码(非纯文档项目),关键文件:
models/three_chain_mamba3.py
train.py
eval_ood.py
data/dataset.py
data/gen_sdd_grid.py
scripts_sdd/eval_ood_advanced.py
scripts_sdd/eval_negative_shadow.py
不想花几小时训练?直接下载 3.26M GridWorld 预训练权重(best.pt,39 MB),10 秒内见证 OOD 长程外推不退化:
best.pt
# 1. 下载预训练权重(从 GitHub Release 或 GitLink Release) # GitHub: https://github.com/lululudj/trihelix-mamba/releases/download/v1.0-weights/best.pt # GitLink: https://www.gitlink.org.cn/lulululudj/ThreeChainMamba/releases curl -L -o best.pt https://github.com/lululudj/trihelix-mamba/releases/download/v1.0-weights/best.pt # 2. 直接跑 OOD 长程评估(训练 T=100 → 评估 T=150,1.5× 外推) python eval_ood.py --checkpoint best.pt \ --config configs/matched_mamba2.yaml \ --data_root ./data/ood_T150 # 期望输出: OOD changed_acc ≈ 0.59, ood_decay_pct ≈ 0% (不退化)
💡 上面的 best.pt 是 3.26M 三链主力模型(GridWorld 100 步训练),OOD changed_acc@T=150 = 0.5952 ± 0.0034,decay ≈ 0。SDD 30M 模型 checkpoint 因体积较大(>100MB)未入 Release,可联系 owner 获取。
# 1. 环境(mamba_ssm 需 --no-build-isolation 避免 torch 隔离) pip install -e . --no-build-isolation # 2. 训练(30M 模型, 任何 GPU 单卡可跑) python train.py --config configs/matched_mamba2_30m.yaml --max_steps 500 # 3. OOD 长程评估(训练 T=100 → 评估 T=150, 1.5× 外推) python eval_ood.py --checkpoint results/matched_mamba2_30m/best.pt \ --config configs/matched_mamba2_30m.yaml \ --data_root ./data/ood_T150 # 4. SDD 真实数据高级指标(含 position_iou / agent_id 分解) python scripts_sdd/eval_ood_advanced.py \ --checkpoint results_stage2/nexus_30m_seed0_10k/best.pt \ --config configs/sdd_mamba2_30m_nexus.yaml \ --data_root ./data/ood_T150_sdd_nexus # 5. 三链负面分身消融(验证三链 SSM 贡献) python scripts_sdd/eval_negative_shadow.py \ --checkpoint results_stage2/nexus_30m_seed0_10k/best.pt \ --config configs/sdd_mamba2_30m_nexus.yaml \ --data_root ./data/ood_T150_sdd_nexus
复现实验数据:41+ 实验原始指标 JSON 留存于 results_stage2/(SDD 真实数据)、results_stage3/(机制消融)、results_wsl/(WSL2 本地基准)目录,指标可追溯。
results_stage2/
results_stage3/
results_wsl/
📌 关于模型权重:模型权重文件因体积较大未上传至 git 仓库,所有实验均可通过训练脚本从零复现,指标原始数据已全部开源留存(results_stage2/、results_stage3/、results_wsl/)。3.26M GridWorld 预训练权重已通过 Release 提供「秒级验证」通道(见上方 📦 段)。
状态空间模型(Mamba/SSD)在 分布外(OOD)长序列 上会退化——测试长度超过训练长度时,预测塌缩成全猜 0。这是 SSM 的”越外推越失忆”问题。本工作用三链并行 SSM + AnchorInit2 结构性锚定治好该问题。
主结论:100M→1.13B 全部 converged 实验,单点 decay 与窗口 decay 双双全部落在 ±2% 内;5× 外推(T=500)仍保持(单点 decay=+0.36%)。大模型方差更小(1B spread=0.5% < 100M 1.7%),说明大模型不仅不退化,训练更稳定。
--shuffle_labels
详见 figures/control_experiments.png 与 figures/seed_stability.png。
统一时空张量 x : (B, T, N², d) ← AnchorInit2 锚定 │ ┌──────────────────┼──────────────────┐ ▼ ▼ ▼ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ 空间链 │ │ 时间链 │ │ 因果链 │ │ (双向 │ │ (因果 │ │ (K 维 │ │ Mamba2) │ │ Mamba2) │ │ 扫描) │ │ N² 维 │ │ T 维 │ │ K(agent) │ └────┬─────┘ └────┬─────┘ └────┬─────┘ │ │ │ └────────┬────────┴────────┬────────┘ ▼ 每层残差融合 ▼ ┌──────────────────────┐ │ Layer × N │ └──────────────────────┘ │ ▼ cell logits
三链共享同一个统一时空张量 x:(B,T,N²,d),作为 3 种扫描视角,每层残差融合:
x:(B,T,N²,d)
关键设计(从 6 个失败模式中学到的教训):
d_state
expand
headdim
为回答”为什么 SSM 不退化而 Transformer 退化”,设计了 5 个可证伪假说(H1–H5),通过 3 组实验严格验证(3 支持 / 2 推翻,推翻也诚实记录)。
AnchorInit2 = x = cell_embed(S_0) + act_mean + time_emb,提供 O(1) 复杂度的初始锚定。
x = cell_embed(S_0) + act_mean + time_emb
对 SSM 与 Transformer 各注入扰动信号,测量 retention(t):
Transformer 完美保留 99.4% 输入信号,但预测完全崩溃——推翻了”Transformer 退化因注意力稀释信号”的假说,揭示 **”信号保留 ≠ 预测质量”**:根因是 Transformer 缺 AnchorInit2 锚定,无法建立有效的时间外推映射。
详见 paper/mechanism_analysis.md 与 figures/stage3_3_retention.png。
脱离 toy 网格世界,验证 SSM 不退化机制在真实长程序列上成立。零模型改动(不改 models/three_chain_mamba2.py),只新增数据生成 + 配置,严格控制变量。
models/three_chain_mamba2.py
SDD nexus 是本工作独有的多智能体复杂场景验证,下面表格一次性给出 position_iou 长程衰减、agent 身份识别、三链负面分身贡献三项核心指标。
Nexus 三大发现:
完整数据见 paper/stage2_sdd_report.md §7 与 paper/Nexus消融实验验证报告.pdf。
use_checkpoint: true
详见 paper/stage2_sdd_report.md 与 figures/stage2_sdd_3k_vs_10k.png。
# 1. 基础依赖 pip install torch numpy pyyaml matplotlib # 2. 安装 triton(Mamba2 kernel 依赖) pip install triton # 3. 安装 mamba_ssm 与 causal_conv1d # 注意:必须用 --no-build-isolation,复用已安装的 torch CUDA 版本编译 pip install --no-build-isolation mamba_ssm causal_conv1d # 或从源码编译(沐曦 MXMACA 等非 CUDA 后端同理,Triton 后端会自动选择) # git clone https://github.com/state-spaces/mamba.git # cd mamba && MAMBA_FORCE_BUILD=TRUE pip install --no-build-isolation --no-deps -e .
# 1. 生成 GridWorld 数据 python data/gen_grid_world.py # 2. 训练(3.26M 主力模型) python train.py --config configs/matched_mamba2.yaml --model three_chain_mamba2 --seed 42 # 3. OOD 长程外推评估(--extend_max_T 扩展 time_embed 到未见长度) python eval_ood.py --checkpoint results/best.pt --extend_max_T 1024 # 4. 退化诊断(非退化门) python probe_mamba2_brain.py --model three_chain_mamba2 --max_steps 2000 --seed 42 # 5. 同参数 Transformer 对照 python probe_mamba2_brain.py --model transformer --config configs/matched_transformer_tiny.yaml --max_steps 2000 --seed 42
# 100M / 300M / 700M / 1B 对应配置 python train.py --config configs/matched_mamba2_100m.yaml --seed 0 python train.py --config configs/matched_mamba2_300m.yaml --seed 0 python train.py --config configs/matched_mamba2_700m.yaml --seed 0 python train.py --config configs/matched_mamba2_1000m.yaml --seed 0 # 1B, 需 use_checkpoint # SDD 真实数据 python data/gen_sdd_grid.py python train.py --config configs/sdd_mamba2_30m.yaml --max_steps 10000 python train.py --config configs/sdd_mamba2_30m_nexus.yaml --max_steps 10000
trihelix-mamba/ ├── models/ │ ├── three_chain_mamba3.py # 主力:ThreeChainMamba3 + PairwiseBasePairMamba3(168K / 可扩到 1.13B) │ ├── three_chain_mamba2_bpv2.py # 消融:跨链碱基对(3.40M) │ ├── three_chain_mamba2_bp.py # 消融:链内碱基对 v1(已失败) │ ├── three_chain.py # 旧基线(4.77M,退化) │ ├── baselines.py # SingleChain / ConcatMamba / Transformer / GNN │ └── common.py # 共享组件(AnchorInit2 / HeteroMamba2) ├── configs/ │ ├── matched_mamba2.yaml # 主配置(3.26M) │ ├── matched_mamba2_100m.yaml # 参数扩展:100M │ ├── matched_mamba2_300m.yaml # 参数扩展:300M │ ├── matched_mamba2_700m.yaml # 参数扩展:700M │ ├── matched_mamba2_1000m.yaml # 参数扩展:1.13B(gradient checkpointing) │ ├── matched_transformer_tiny.yaml # 同参数 Transformer(3.43M) │ ├── sdd_mamba2_30m.yaml # SDD bookstore(7 视频) │ └── sdd_mamba2_30m_nexus.yaml # SDD nexus(12 视频) ├── data/ # GridWorld / SDD 数据生成 │ └── ood_T150/ # OOD 测试集(已提交,用于复现) ├── scripts_sdd/ # SDD 数据下载 / 划分 / 评估脚本 ├── train.py # 训练循环 ├── eval_ood.py # OOD 长程外推评估 ├── probe_mamba2_brain.py # 退化诊断工具(非退化门) ├── probe_token_retention.py # 信号保留探针(H4/H5 验证) ├── regen_figures.py # 图表重生成(ASCII 安全) ├── paper/ # 论文 LaTeX 源 + 技术报告 + 图表 │ ├── main.tex │ ├── sections/ # arXiv 风格分章节 │ ├── figures/ # 全部实验图表(PNG) │ ├── technical_report.md # 完整技术报告(v0.3) │ ├── mechanism_analysis.md # 机制深挖(5 假说验证) │ ├── stage2_sdd_report.md # SDD 真实数据报告 │ └── Nexus消融实验验证报告.pdf # 申报佐证附件(5 页,含 4 图 + 6 节正文,一键下载) ├── results_stage2/ # SDD 实验指标 JSON(bookstore + nexus) ├── results_stage3/ # 机制消融实验指标 JSON ├── results_wsl/ # WSL2 本地基准指标 JSON ├── figures/ # 早期基准图表 ├── docs/ # Wiki 技术文档(架构方程 / 理论 / MXMACA 适配) │ ├── Home.md # GitLink Wiki 首页 │ ├── architecture.md # 三链架构 + LaTeX 数学方程 │ ├── theory.md # 三层保障机制 + 5 假说验证 │ └── mxmaca_adaptation.md # 沐曦 MXMACA 零修改适配方案 ├── PROFESSIONAL_REPORT.md # 早期 5-seed 基准报告 ├── requirements.txt └── LICENSE # MIT
[42, 123, 456, 789, 1024]
[0, 1, 2]
zero_ratio < 0.90
changed_acc > 0.30
d_conv ∈ {2,3,4}
expand=1
headdim=32
d_model*expand
在三链Mamba3(dt-RoPE复数状态 + 梯形离散化)基础上,引入两两碱基对耦合(PairwiseBasePairMamba3),受DNA三螺旋碱基对配对启发,实现三链间的信息交换:
v2 -> v2.1 演进:
reset_b * sgate_b * x_t
reset_b * x_t + sgate_b * x_t
算力环境:沐曦MetaX C500 GPU(64GB显存),Triton 3.0.0+metax,mamba_ssm 2.2.4+metax,torch 2.6.0+metax
所有7个调制网络权重范数全部非零(94/94结果),v2.1加法修复彻底解决了乘法梯度死锁。
核心发现:BP在对抗性场景和极端场景提升最明显(+1.1%~+1.9%),说明碱基对耦合在复杂多智能体交互中发挥作用。
source /opt/maca/env.sh
torch.cuda.synchronize()
"场景|seedN|模型"
@misc{threechainmamba2026, title={ThreeChainMamba3: Three-Chain DNA-Mamba3 with Pairwise Base Pair Coupling for Long-Range Spatiotemporal Extrapolation}, author={lulululudj}, year={2026}, url={https://github.com/lululudj/trihelix-mamba} }
论文(arXiv 预印本)即将上线,LaTeX 源见 paper/。
MIT——见 LICENSE。
本工作面向沐曦青年开源专项基金申请开源。核心代码(models/、train.py、eval_ood.py)、实验指标(results_stage2/)、论文源码与图表(paper/)均已开源,便于评审复现与国产 GPU 适配验证。
models/
paper/
基于 Mamba3(dt-RoPE 复数状态空间 + 梯形离散化)的三链 DNA-Mamba3 状态空间模型,集成 BP v2.1 两两碱基对耦合,用于多智能体长程时空预测。在国产沐曦 C500 GPU 上完成 32 场景 × 4 模型 × 3 seed = 384 次实验验证,长程外推不退化。
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
ThreeChainMamba3 🧬 三链 DNA-Mamba3
Three-Chain DNA-Mamba3 for Long-Range Spatiotemporal Extrapolation 基于 Mamba3(dt-RoPE 复数状态空间 + 梯形离散化)的三链状态空间模型,用于多智能体长程时空预测,长程外推不退化。
📌 项目概述(面向沐曦青年开源专项基金评审)
mamba_ssm基于 Triton,沐曦 Triton-MXMACA 编译后端可零修改适配,适合端侧人形机器人多智能体实时推演🌟 Nexus 多智能体场景核心亮点(评审首页直读)
核心叙事:SSM 在多智能体复杂场景下不仅不退化,还能学到 agent 身份动力学(2.3 倍随机基线),因果链在多场景下从噪声升级为关键贡献链——这是同参数 Transformer 完全无法做到的差异化能力。
为什么重要
长程时空外推(long-horizon spatiotemporal extrapolation)是世界模型的核心能力:模型在训练时观察 T_train 步序列,推理时需对 T_eval ≫ T_train 的未来做预测。Transformer 受注意力二次复杂度与位置编码外推能力限制;近年 SSM(Mamba/Mamba2)在线性复杂度下展示出长程建模潜力,但其外推稳定性随规模放大是否保持,此前缺乏严格验证。
本工作在 O(N) 线性复杂度 下,于 [100M → 1.13B] 参数区间验证长程外推不退化(单点 decay 与窗口 decay 双双全部落在 ±2% 内,1B 三 seed spread 仅 0.5%),并经三个控制实验(随机标签 / 多 seed / 步数对照)严格证明这是真实泛化而非指标噪声。
🎯 一图看懂:三链 vs Transformer 长程外推
沐曦 GPU 落地路径
mamba_ssm/causal_conv1d的 CUDA kernel 全部由 Triton 编写,与硬件后端解耦;⚡ 快速验证(一键复现,评审可运行)
仓库含完整可运行源码(非纯文档项目),关键文件:
models/three_chain_mamba3.pytrain.pyeval_ood.pydata/dataset.pydata/gen_sdd_grid.pyscripts_sdd/eval_ood_advanced.pyscripts_sdd/eval_negative_shadow.py📦 秒级验证(无需训练,直接下载预训练权重)
不想花几小时训练?直接下载 3.26M GridWorld 预训练权重(
best.pt,39 MB),10 秒内见证 OOD 长程外推不退化:🛠️ 从零训练(完整复现)
复现实验数据:41+ 实验原始指标 JSON 留存于
results_stage2/(SDD 真实数据)、results_stage3/(机制消融)、results_wsl/(WSL2 本地基准)目录,指标可追溯。🎯 解决什么问题
状态空间模型(Mamba/SSD)在 分布外(OOD)长序列 上会退化——测试长度超过训练长度时,预测塌缩成全猜 0。这是 SSM 的”越外推越失忆”问题。本工作用三链并行 SSM + AnchorInit2 结构性锚定治好该问题。
📊 核心结果
主结果:规模-decay 曲线(GridWorld 离散符号动力学)
主结论:100M→1.13B 全部 converged 实验,单点 decay 与窗口 decay 双双全部落在 ±2% 内;5× 外推(T=500)仍保持(单点 decay=+0.36%)。大模型方差更小(1B spread=0.5% < 100M 1.7%),说明大模型不仅不退化,训练更稳定。
早期基准(3.26M 三链 vs 基线,5 seed)
控制实验(严谨性证据)
--shuffle_labels详见 figures/control_experiments.png 与 figures/seed_stability.png。
🧬 架构:三链螺旋扫描同一张量
三链共享同一个统一时空张量
x:(B,T,N²,d),作为 3 种扫描视角,每层残差融合:关键设计(从 6 个失败模式中学到的教训):
x:(B,T,N²,d),不是分支独立d_state/expand/headdim🔬 机制深挖:AnchorInit2 结构性锚定(三层保障)
为回答”为什么 SSM 不退化而 Transformer 退化”,设计了 5 个可证伪假说(H1–H5),通过 3 组实验严格验证(3 支持 / 2 推翻,推翻也诚实记录)。
三层保障机制
AnchorInit2 =
x = cell_embed(S_0) + act_mean + time_emb,提供 O(1) 复杂度的初始锚定。关键反直觉发现:H5 推翻
对 SSM 与 Transformer 各注入扰动信号,测量 retention(t):
Transformer 完美保留 99.4% 输入信号,但预测完全崩溃——推翻了”Transformer 退化因注意力稀释信号”的假说,揭示 **”信号保留 ≠ 预测质量”**:根因是 Transformer 缺 AnchorInit2 锚定,无法建立有效的时间外推映射。
详见 paper/mechanism_analysis.md 与 figures/stage3_3_retention.png。
🧪 实验亮点:双场景验证
场景一:GridWorld 参数扩展实验(30M → 1.13B)
场景二:SDD 真实数据(Stanford Drone Dataset)
脱离 toy 网格世界,验证 SSM 不退化机制在真实长程序列上成立。零模型改动(不改
models/three_chain_mamba2.py),只新增数据生成 + 配置,严格控制变量。🔬 Nexus 多智能体场景核心数据(评审首页直读,无需点进报告)
Nexus 三大发现:
完整数据见 paper/stage2_sdd_report.md §7 与 paper/Nexus消融实验验证报告.pdf。
use_checkpoint: true梯度检查点详见 paper/stage2_sdd_report.md 与 figures/stage2_sdd_3k_vs_10k.png。
🛠️ 安装与使用
环境要求
mamba_ssm预编译 wheel)安装
快速开始
大规模训练(100M → 1.13B)
📁 仓库结构
🔬 可复现性
[42, 123, 456, 789, 1024];大规模实验用[0, 1, 2]。zero_ratio < 0.90(不能全猜 0)changed_acc > 0.30(比随机 1/16 = 0.0625 强)d_conv ∈ {2,3,4};空间链expand=1必须headdim=32;headdim必须整除d_model*expand;1B 训练需 gradient checkpointing(25GB → 10.2GB)。🧬 BP v2.1 碱基对耦合:三链Mamba3 + Pairwise Base Pair(C500国产GPU实测)
v2.1 核心创新:加法独立调制解决乘法梯度死锁
在三链Mamba3(dt-RoPE复数状态 + 梯形离散化)基础上,引入两两碱基对耦合(PairwiseBasePairMamba3),受DNA三螺旋碱基对配对启发,实现三链间的信息交换:
v2 -> v2.1 演进:
reset_b * sgate_b * x_t乘法->两个零初始化网络相乘导致梯度互相阻塞->死锁)reset_b * x_t + sgate_b * x_t->两项梯度独立可流过->死锁解除)C500国产GPU实验结果(32场景 × 3seed × 4模型 = 384次训练)
算力环境:沐曦MetaX C500 GPU(64GB显存),Triton 3.0.0+metax,mamba_ssm 2.2.4+metax,torch 2.6.0+metax
模型性能对比
BP v2.1 修复验证(乘法梯度死锁解除)
所有7个调制网络权重范数全部非零(94/94结果),v2.1加法修复彻底解决了乘法梯度死锁。
按场景类型分析(ood_ch_acc)
核心发现:BP在对抗性场景和极端场景提升最明显(+1.1%~+1.9%),说明碱基对耦合在复杂多智能体交互中发挥作用。
BP优势最显著场景
国产GPU适配经验
source /opt/maca/env.sh设置MACA_HOME环境变量。torch.cuda.synchronize()解决。"场景|seedN|模型",已跑的跳过,即时保存JSON,适合长时间实验中断恢复。🗺️ 路线图
📝 引用
论文(arXiv 预印本)即将上线,LaTeX 源见 paper/。
许可证
MIT——见 LICENSE。