- README.md with architecture diagram and project overview - docs/architecture-overview.md: core design, scheduling, RefPack protocol - docs/routing-compression-subnet.md: multi-modal encoding, compression training - docs/memory-subnet.md: MANN, GNN, retrieve-pull mechanism training - docs/logic-trace-subnet.md: RLHF+PRM, MCTS, self-correction training - docs/llm-subnet.md: SFT, RLHF fine-tuning, multi-language alignment
6.1 KiB
6.1 KiB
路由与压缩子网(感觉中枢)
概述
路由与压缩子网类比人脑的感觉中枢,负责将外部的多模态输入(文本、图像、音频等)转化为结构化的内部表示。它是 NextAgent 的入口层,所有输入数据必须经过此子网处理才能进入后续流程。
核心职责
- 多模态特征提取:将不同模态的原始数据统一为向量表示
- 信息压缩:在保留语义的前提下最大化压缩率,降低存储与传输成本
- 引用包生成:将压缩后的特征打包为标准引用包(RefPack),供调度 Core 分发
- 输入路由:根据输入类型将数据分发到对应的特征提取通道
架构设计
graph TB
Input["多模态输入"] --> Router["输入路由器"]
Router -->|"文本"| TextEnc["文本编码器<br/>BERT/RoBERTa"]
Router -->|"图像"| ImageEnc["图像编码器<br/>ViT/ResNet"]
Router -->|"音频"| AudioEnc["音频编码器<br/>Wav2Vec 2.0"]
Router -->|"视频"| VideoEnc["视频编码器<br/>VideoMAE"]
TextEnc --> Merger["特征融合器"]
ImageEnc --> Merger
AudioEnc --> Merger
VideoEnc --> Merger
Merger --> Compressor["压缩模块<br/>AutoEncoder"]
Compressor --> RefPack["引用包生成器"]
RefPack --> Output["引用包输出"]
subgraph Training ["训练组件"]
SimCLR["对比学习<br/>SimCLR/MoCo"]
KD["知识蒸馏"]
AE["AutoEncoder<br/>训练"]
end
TextEnc -.-> SimCLR
ImageEnc -.-> SimCLR
Merger -.-> KD
Compressor -.-> AE
训练目标
目标 1:多模态特征提取
训练各模态编码器,使其能够从原始输入中提取高质量的语义特征。
- 文本模态:预训练语言模型(BERT-base / RoBERTa-base),输出 768 维向量
- 图像模态:视觉 Transformer(ViT-B/16),输出 768 维向量
- 音频模态:自监督语音模型(Wav2Vec 2.0 Base),输出 768 维向量
- 视频模态:视频掩码自编码器(VideoMAE Base),输出 768 维向量
目标 2:信息压缩
在保持重建质量的前提下,将特征维度压缩至原始大小的 10%-20%。
- 压缩率目标:≥ 5 倍(即 768 维 → ≤ 150 维)
- 重建相似度:余弦相似度 ≥ 0.92
- 推理速度:单次压缩 ≤ 5ms(GPU)
目标 3:引用包生成
将压缩特征包装为标准化的引用包,包含元数据、签名和冷区索引。
训练计划
阶段 1:对比学习预训练(SimCLR / MoCo)
目标:为各模态编码器学习通用的特征表示。
-
SimCLR:用于文本和图像编码器的初始训练
- 批大小:4096
- 温度系数 τ:0.07
- 投影头:2 层 MLP(2048 → 2048 → 128)
- 损失函数:NT-Xent(归一化温度标度交叉熵损失)
- 优化器:LARS(Layer-wise Adaptive Rate Scaling)
- 学习率:0.3 × BatchSize / 256
- 训练轮数:100 epochs
-
MoCo v3:用于视频和音频编码器的训练
- 动量系数 m:0.999
- 队列大小:65536
- 编码器更新:动量式(momentum encoder)
- 损失函数:InfoNCE
- 优化器:AdamW
- 学习率:1.5e-4
- 训练轮数:200 epochs
数据集:
| 模态 | 数据集 | 规模 |
|---|---|---|
| 文本 | Wikipedia + BookCorpus | 16GB |
| 图像 | ImageNet-1K + LAION-400M | 4 亿样本 |
| 音频 | LibriSpeech + AudioSet | 5000 小时 |
| 视频 | Kinetics-700 + HowTo100M | 70 万视频 |
阶段 2:知识蒸馏
目标:将大模型的丰富特征迁移到轻量编码器,减少推理成本。
- 教师模型:CLIP ViT-L/14(文本+图像)、HuBERT-Large(音频)、InternVideo(视频)
- 学生模型:各模态专用编码器(参数量为教师模型的 1/10)
- 蒸馏损失:
- 特征蒸馏:MSE(教师特征, 学生特征)
- 关系蒸馏:基于互信息的对比蒸馏
- 逻辑蒸馏:KL 散度(教师输出 || 学生输出)
- 总损失:L = α·L_feat + β·L_rel + γ·L_logit
- α = 0.5, β = 0.3, γ = 0.2
- 温度 T:4.0(软化概率分布)
- 训练轮数:50 epochs
阶段 3:AutoEncoder 压缩训练
目标:训练压缩-解压缩的 AutoEncoder 结构。
- 编码器结构:
Input (768) → Dense(512, ReLU) → BN → Dense(256, ReLU) → BN → Dense(128, Linear) - 解码器结构:
Latent (128) → Dense(256, ReLU) → BN → Dense(512, ReLU) → BN → Dense(768, Linear) - 损失函数:
- 重建损失:MSE + 余弦相似度
- 感知损失:基于预训练编码器的特征匹配
- 对抗损失:附加判别器,提升重建质量
- KL 散度正则项:β-VAE 风格
- 优化器:Adam(β1=0.9, β2=0.999)
- 学习率:1e-4,余弦退火调度
- 训练轮数:150 epochs
- 压缩比搜索:在 {2×, 3×, 5×, 8×, 10×} 中搜索最优压缩比
阶段 4:端到端联合微调
目标:将编码器、压缩器联合微调,优化跨模态对齐。
- 固定解码器参数
- 引入跨模态对比损失:batch_size 内的跨模态负样本挖掘
- 训练轮数:30 epochs(低学习率 5e-5)
评估指标
压缩效率
| 指标 | 定义 | 目标值 |
|---|---|---|
| 压缩率 | 原始维度 / 压缩后维度 | ≥ 5× |
| 压缩延迟 | 单次前向推理时间 | ≤ 5ms |
| 吞吐量 | 每秒处理的样本数 | ≥ 1000 samples/s |
重建质量
| 指标 | 定义 | 目标值 |
|---|---|---|
| MSE | 原始与重建的均方误差 | ≤ 0.01 |
| 余弦相似度 | 原始与重建的余弦相似度 | ≥ 0.92 |
| PSNR | 峰值信噪比(图像模态) | ≥ 30dB |
| 感知距离 | LPIPS( Learned Perceptual Image Patch Similarity) | ≤ 0.05 |
检索与召回
| 指标 | 定义 | 目标值 |
|---|---|---|
| Top-1 召回 | 压缩查询的最近邻检索准确率 | ≥ 85% |
| Top-5 召回 | Top-5 召回率 | ≥ 95% |
| 跨模态检索 | 文本→图像/图像→文本检索准确率 | ≥ 70% |
| 反事实一致性 | 语义相近输入的重建一致性 | ≥ 90% |