paper-replication

Installation
SKILL.md

Deep Learning Paper Replication Skill

读取深度学习论文(PDF 或文本),将论文中的数学描述、网络结构和实现细节转化为可运行、可验证、可维护的 PyTorch 代码与配套文档。

Core Objective

  • 先理解论文的核心问题、创新点、数学公式和超参数。
  • 再用 Mermaid 可视化关键数据流和张量形状。
  • 最后输出工业级 PyTorch 实现,并在需要时生成模块级技术文档。

Workflow

根据用户需求和论文复杂度,选择合适的执行模式:

  • 完整模式(默认):执行全部 4 个 Phase,适用于复杂模型的完整复现。
  • 快速模式:用户明确只需要代码时,跳过 Phase 4(文档生成)。
  • 代码优先模式:用户已理解论文时,简化 Phase 1 的解构,重点执行 Phase 3。

对于简单模型(如 MLP、单层网络),自动简化:

  • Phase 2 的 Mermaid 图使用简化版本。
  • Phase 4 的文档结构按需裁剪,不强制生成所有子目录。

Phase 1: 论文审计与架构解构

输出最小但完整的解构结果:

  • 论文概述:一句话问题定义 + 2-4 条核心创新。
  • 数学原理:核心公式、符号说明、Loss Function 分析。
  • 架构细节:层数、头数、维度、卷积参数、dropout、激活函数、归一化方式。
  • 实现缺口:把论文未明确说明的实现细节单独标注,不要伪装成论文原文。

推荐输出骨架:

## 论文概述
**问题 (Problem)**: ...

**核心创新 (Contribution)**:
1. ...
2. ...

## 数学原理
### 核心公式
$$ ... $$

### Loss Function
$$ ... $$

## 架构细节
| 组件 | 参数 || 来源 |
|------|------|-----|------|

Phase 2: 架构流程可视化

使用 Mermaid 展示论文的数据流,至少覆盖:

  • 输入和输出节点。
  • Backbone / Encoder / Decoder / Neck / Head / Loss 中的关键路径。
  • 关键节点的 Input/Output Tensor Shape,统一使用 [B, C, H, W][B, N, D] 等标准符号。
  • 深层网络用模块级粒度,不机械展开所有层。

颜色规范:

  • Blue #e1f5fe:输入/输出节点。
  • Orange #fff3e0:核心处理模块。
  • Green #e8f5e9:特征提取或缓存模块。
  • Pink #fce4ec:注意力机制。
  • Purple #f3e5f5:Loss 或聚合节点。

简单模型可使用简化图;复杂模型优先画模块关系图,再补张量形状变化图。

Phase 3: PyTorch 实现

实现代码时遵循以下要点:

  • 继承 torch.nn.Module,并给核心类加清晰 docstring。
  • 严格使用类型提示。
  • 在关键运算后显式标注张量形状变化。
  • 把复杂子模块拆分为独立 class 或 modules/ 子文件。
  • 提供 _init_weights 或等价初始化逻辑,并注明来源。
  • 提供 set_seed 或等价可复现性配置。
  • 在文件尾部附带最小可运行验证代码:前向传播、shape 检查、参数量检查、梯度流检查。
  • 对于论文未说明的超参数,显式标注 Paper did not specify,同时写明推荐值、参考来源、备选值和潜在影响。

完整编码规范、验证模板和 Paper did not specify 协议见 references/CODING_STANDARD.md

Phase 4: 模块文档生成

为每个核心模块生成技术文档,包含:

  • 概述:功能、架构位置、输入输出规格。
  • 数学原理:公式、符号说明、必要时给推导。
  • 数据流图:Mermaid 流程图 + 张量形状变化。
  • 实现细节:关键代码、超参数、设计决策。
  • 使用示例:调用方式和输入输出示例。
  • 注意事项:常见问题、性能考量、与论文差异。

详细文档规范和 Mermaid 模板见 references/DOCUMENTATION_GUIDE.md

Tensor Shape Notation Standard

整个复现过程统一使用以下维度符号:

符号 含义
B Batch size
C Channels
H, W Height / Width
T Time or sequence length
D Feature dimension
N Number of elements / tokens
E Embedding dimension
K Kernel size

注释格式统一为:

# x: [B, C, H, W] <- Input tensor
# x: [B, 64, H//2, W//2] <- Conv2d(C, 64, k=3, s=2, p=1)

Output Structure

根据模型复杂度自适应调整输出结构:

简单模型(单文件即可表达,如 MLP、简单 CNN):

output/
├── model.py
└── README.md

中等模型(需要子模块拆分):

output/
├── model.py
├── modules/
└── README.md

复杂模型(完整复现,如 Transformer、检测网络):

output/
├── README.md
├── docs/
├── model.py
├── modules/
├── config.py
└── requirements.txt

如果论文存在训练、推理、配置三条明显边界,可以进一步拆出 train.pyinfer.pyconfigs/,但仅在复杂度确实需要时这样做。

Reading Strategy

  • 先读主论文,再按需读 Appendix 或 Supplementary。
  • 先以文字描述、公式和伪代码为准,再用图表做交叉验证。
  • 如果官方代码存在,优先用官方代码校正文中歧义,并在注释中说明差异。
  • 对于 Supplementary Material / Appendix 的单独文件,优先读取主论文,再补充查找详细超参数、额外消融和完整伪代码;凡来自补充材料的实现细节,标注 Reference: Supplementary Section X

更多 PDF 阅读要点和常见陷阱见 references/COMMON_PITFALLS.md

Constraints

Tool Stack

  • Python 3.10+
  • PyTorch 2.0+
  • Mermaid
  • einops(可选)
  • timm(可选)

Language Rules

  • 分析与解释使用简体中文。
  • 代码注释使用英文。
  • 变量命名使用英文并遵循 PEP 8。

Verification Checklist

在结束前确认:

Phase 1

  • 核心问题和创新点已明确。
  • 关键公式、损失函数和符号说明已提取。
  • 超参数配置完整,未指定项已显式标注。

Phase 2

  • Mermaid 图覆盖主要组件。
  • 关键节点标注了 Tensor Shape。
  • 深层网络使用了合适粒度。

Phase 3

  • 实现继承 nn.Module
  • 类型提示完整。
  • 关键层后有维度注释。
  • 子模块边界清晰。
  • 初始化、随机种子和验证代码齐全。

Phase 4(如启用)

  • 每个核心模块有对应文档。
  • 文档覆盖概述、数学、流程图、实现、示例、注意事项。
  • 文档结构与模型复杂度相匹配,不过度生成。

Runtime Validation

  • 随机 Tensor 前向传播正常。
  • 输出 Shape 与预期一致。
  • 参数量与论文或官方实现基本一致(如可比)。
  • 梯度流检查通过。
  • 已排查关键实现陷阱和框架差异。

References

  • references/CODING_STANDARD.md 何时读取:开始写代码前,或需要补全验证模板时。
  • references/DOCUMENTATION_GUIDE.md 何时读取:需要生成 docs/、模块文档或 Mermaid 模板时。
  • references/COMMON_PITFALLS.md 何时读取:读取 PDF、比对论文与代码、处理框架差异、查缺失细节时。
Weekly Installs
23
GitHub Stars
13
First Seen
Jan 24, 2026
Installed on
claude-code20
opencode20
codex19
gemini-cli19
cursor18
antigravity17