Appearance
Model Order 阅读入口:DLinear -> PatchTST -> Informer
Abstract
model-order的意思是:不是按 PyTorch 知识类别排序,而是按你学习模型时第一次遇到这些函数的顺序排序。
1. 总顺序
当前固定顺序:
text
DLinear -> PatchTST -> Informer原因:
| 顺序 | 模型 | 为什么放这里 |
|---|---|---|
| 1 | DLinear | 最简单,先学 moving_avg / AvgPool1d / Linear |
| 2 | PatchTST | 在 DLinear 基础上加入 patch / unfold / Transformer encoder / FullAttention |
| 3 | Informer | 最后再看更复杂的 DataEmbedding / ProbAttention / Encoder-Decoder |
2. DLinear 目录
目录:
text
01-DLinear/阅读顺序:
| 顺序 | 文档 | 解决的问题 |
|---|---|---|
| 1 | [[01-DLinear/01-Autoformer_EncDec-moving_avg-forward-基础语法注解]] | moving_avg.forward 里的切片、repeat、torch.cat |
| 2 | [[01-DLinear/02-AvgPool1d与permute-DLinear-moving_avg]] | AvgPool1d 为什么要先 permute(0,2,1) |
| 3 | [[01-DLinear/03-Linear最后一维规则-DLinear-Informer-PatchTST]] | nn.Linear 为什么作用最后一维;DLinear 怎么 seq_len -> pred_len |
DLinear 阶段的核心目标:
text
先把 (B,T,C) 的时间序列张量、滑动平均、线性投影讲清楚。3. PatchTST 目录
目录:
text
02-PatchTST/阅读顺序:
| 顺序 | 文档 | 解决的问题 |
|---|---|---|
| 1 | [[02-PatchTST/01-ReplicationPad1d与unfold-PatchTST-PatchEmbedding]] | 为什么先 padding,再 unfold 切 patch,再 reshape(B*C,...) |
| 2 | [[02-PatchTST/02-Flatten与标准化统计-PatchTST输出头]] | mean(dim=1)、标准化、FlattenHead、反标准化 |
| 3 | [[02-PatchTST/03-Conv1d与BCL格式-Informer-PatchTST]] | Transformer FFN 里的 Conv1d(kernel=1) 和 (B,C,L) 格式 |
| 4 | [[02-PatchTST/04-LayerNorm-BatchNorm-Dropout-Transformer基础]] | Transformer 层里的归一化和 dropout |
| 5 | [[02-PatchTST/05-Attention基础操作-view-matmul-einsum-softmax-topk]] | PatchTST / Informer attention 里的 view / einsum / softmax / topk |
| 6 | [[02-PatchTST/06-Encoder实例逐步精读-PatchTST-Layer2B]] | PatchTST self.encoder 实例如何嵌套、forward 每步怎么走、token 数值直觉怎么变 |
PatchTST 阶段的核心目标:
text
理解 patching + channel-independent + Transformer encoder。注意:
有些文档标题里仍然带
Informer,因为这些函数是 Transformer 共用基础。
但在 model-order 里,它们先放在 PatchTST 阶段学习,因为 PatchTST 是第一次系统遇到 Transformer encoder / attention 的地方。
4. Informer 目录
目录:
text
03-Informer/阅读顺序:
| 顺序 | 文档 | 解决的问题 |
|---|---|---|
| 1 | 01-Embedding与位置编码-Informer-PatchTST | Informer 的 DataEmbedding / TokenEmbedding / TemporalEmbedding / PositionalEmbedding,以及 PatchTST PatchEmbedding 对照 |
| 2 | 02-ProbAttention完整代码精读 | SelfAttention_Family.py 里的 ProbAttention:采样 key、选择 top query、初始化 context、精确更新 context |
Informer 阶段的核心目标:
text
在已经理解 Transformer 基础操作之后,再看 Informer 特有的 embedding 和 ProbAttention。后续如果继续补 Informer,应优先新增:
text
03-Informer/02-ProbAttention完整代码精读.md
03-Informer/03-DataEmbedding完整下钻.md
03-Informer/04-EncoderDecoder主链基础函数.md5. 和 concept-order 的区别
concept-order/ 是按知识类别整理:
text
层函数
Tensor 操作model-order/ 是按模型学习路径整理:
text
DLinear -> PatchTST -> Informer如果你是在复习 PyTorch 函数,优先看 concept-order。
如果你是在跟模型源码,优先看 model-order。