# 第一节证据与独立复算对照

核验日期：2026-10-21。对应上传的第一节重建指令 S01—S18；线上稳定 ID 由施工侧映射。

## 本轮采用的数据

课堂主图采用 `section1-data.json` 内的**教学独立复算**，脚本为 `build-section1-data.py`。其中除最优线性曲线外，容量曲线使用随机单位球面 key 的矩或积分，不是作者采样实验的中位数。最优线性超载段使用各向同性 leverage 近似。T 图样为指定种子下的单次实际向量计算，与理论曲线分开标注。

原文：[Alex Wang, You could have invented transformers from memory](https://alexwang.ai/posts/associative-memory/)，发布于2026-10-15。

配套源码：[仓库](https://github.com/KeAWang/associative-memory-blog)，本轮核验 commit `5defb8d90265b5c22daf497c81905b73e0230ff8`（2026-10-15）。[固定版代码](https://github.com/KeAWang/associative-memory-blog/blob/5defb8d90265b5c22daf497c81905b73e0230ff8/crosstalk.py)；[固定版图数据](https://github.com/KeAWang/associative-memory-blog/blob/5defb8d90265b5c22daf497c81905b73e0230ff8/data/crosstalk.json)。

GitHub API 的 license 字段为 null，根目录仅 `.gitignore`、`README.md`、`crosstalk.py`、`data`，未发现许可证。因此公开成品提供独立代码、独立绘图数据与来源链接，不把作者代码、图像或文章全文重新发布。核验下载件单独留在 `reference-only/`。

## 原文—课堂映射

以下原文锚点均接在 `https://alexwang.ai/posts/associative-memory/` 后。

| 页 | 原文位置或来源 | 回答的问题 / 前台对象 | 必需条件、说明中的深度 |
|---|---|---|---|
| S01 | 课程负责人开场组织；原文引言为相关背景 | 为什么“增加材料与训练”还需要承载结构？两条线 | 必要不充分；解释顺序不等于训练时间顺序 |
| S02 | `#recall-picks-up-interference`；T图为上传稿独立构造 | 同一查询下，写得更多是否仍读得回来？ | 64维、seed 20261021、同256条存储前缀；固定灰度范围；原始向量算R |
| S03 | `#an-outer-product-memory-store`；二维数值为教学构造 | 外积把哪两个对象写进哪个矩阵？ | W为d_v×d_k，key/value是方向，非词本身 |
| S04 | `#recall-picks-up-interference` | 为什么读A会带出B？实际输出分解 | 查询是已存单位key；串扰来自本次外积规则，非一切线性层 |
| S05 | `#recall-picks-up-interference` | M和d分别怎样影响干扰？曲线及有符号权重条 | 独立、零均值、各向同性单位value；RMS为√((M−1)/d) |
| S06 | `#how-do-we-reduce-interference` | 可改维度、写入、读取哪一处？ | 分开控制变量；三路可组合 |
| S07 | `#the-optimal-linear-memory-store`；二维教学构造 | 相同2×2矩阵能否同时满足两个关联？ | 两key线性独立；权重改变，key未旋转成正交 |
| S08 | `#the-optimal-linear-memory-store` | 精确恢复区间与R=1区间为何不同？ | M≤d的线性独立；超载P_jj不是1；√(M/d−1)为近似 |
| S09 | `#mlp-as-a-nonlinear-memory-store` | ReLU与平方各改了什么？ | 回到原始相似度；本例无负分数；先变分数后汇总 |
| S10 | 同上；[Geva等](https://arxiv.org/abs/2012.14913) | 三个操作如何对应两层MLP？ | 显式构造H=M；真实参数不等于逐项事实字典 |
| S11 | `#reducing-interference-with-higher-powers` | 同条件换激活，容量曲线怎样移动？ | 显式保留K/V，不固定参数总数；随机球面RMS与作者近似分开 |
| S12 | `#self-attention-as-a-non-parametric-memory-store` | 指数如何提高相对选择性，截断为何不保证好？ | 二维β=4；曲线切为d=64、β=8；2/4项截断可能为负 |
| S13 | 同上；[Transformer](https://arxiv.org/abs/1706.03762) | 指数归一化如何成为softmax读取？ | 二维β=4；归一化不改比例；数值稳定需先减最大logit |
| S14 | `#self-attention-as-a-non-parametric-memory-store` | 参数与本次生成的K/V是什么关系？ | 固定W_K/W_V处理变化X；非参数式不等于无参数；token非独立事实 |
| S15 | 同上 | 大容量数值究竟测什么？ | d=64、β=8、ρ=1、随机独立单位value；有限球面RMS约127万 |
| S16 | `#handling-many-key-value-pairs-in-long-context`；Qwen/YaRN原论文 | 长度改变时，固定与变化β有何不同？ | M0=1024是教学参考值；有限范围；不推出无限容量或实际上下文上限 |
| S17 | `#closing-thoughts`；梯度外积见外积章节aside | 能表示、被学到、任务有效为何需分别检验？ | 误差梯度不是原始事实；理论承载不是完整规模收益证明 |
| S18 | 课程转场；现行视觉段 | 为什么下一节转到真实训练证据？ | 机制分析不直接预测视觉准确率；保留原N11 patch证据 |

## 统计口径

作者普通曲线：d_k=d_v=64；随机高斯向量逐行归一化；ρ=1；种子0—4；每seed取前min(200,M)个key作查询，先计算各查询的干扰范数/实际目标项范数，再取查询中位数，最后跨5个seed平均。图中舍入到6位小数。

作者长上下文曲线：M=16到2,097,152；float32；每seed查询数为 max(16,min(50,2^25//M))；统计层次仍为先中位数后seed均值。不能称为“百万查询均值”。

课堂独立曲线：R=√E||干扰||² / ||目标贡献||。key在64维单位球面均匀分布；value相互独立且独立于key，零均值、各向同性、单位长度。常数归一化会在该比值中约掉，因此R不是完整输出重建误差，也不表示目标输出幅度恒为1。

| 读取规则 | 独立球面RMS达到1的M | 课堂可读近似 |
|---|---:|---|
| 外积/linear | 65 | 约64 |
| ReLU | 129 | 约128 |
| 平方ReLU | 2817 | 约2.8千 |
| 立方ReLU | 38298.6 | 约3.8万 |
| 指数β=8 | 1272264.4453 | 约127万 |
| 指数高斯近似 | 1202604.2842 | 约120万 |
| 2项截断，β=8 | 41.5 | 约42 |
| 3项截断，β=8 | 452 | 约452 |
| 4项截断，β=8 | 3144.4602 | 约3.1千 |

原文2700/35000来自高维近似，不能贴到这组球面RMS交点上。最优线性精确区间M≤64与近似R=1交点M=128单列，后者不是128条精确恢复。

## S16规则与边界

本轮复算β0=8，参考长度M0=1024。固定β=8；LogN为8×max(1,ln M/ln1024)；Su为8×ln M/ln1024；YaRN式曲线为8×max(1,1+0.1ln(M/1024))²。这是沿原文设定的检索对照，不声称覆盖全部Qwen或YaRN实现。

[Qwen Technical Report](https://arxiv.org/abs/2309.16609) 第2.5节确认使用LogN与其他长上下文技术；原始Qwen训练长度2048，所以课堂M0=1024必须称教学参考长度，不能称Qwen真实训练长度。[YaRN](https://arxiv.org/abs/2309.00071) 第3.3节、式14—15给出温度与0.1ln(s)+1的关系；其缩放因子s表示上下文扩展比例。本图根据当前M/M0变化，属于该检索实验的设定。Su原网页本轮访问返回403；具体曲线规则同时已核对作者公开代码，不把403说成已阅读全文。

有限个互异单位key、精确查询、任意增大β时可让目标独占读取；这与固定维度、M不断增长时β仅按log M增长不是同一命题。由球面密度可推得大β下R²量级为M/β^((d−1)/2)，所以有限横轴上的下降不证明无界容量。此推导是本轮独立数学审查，宜放补充说明，不挤占课堂主图。

## 已完成的核验

`numeric-validation.json` 记录通过的检查：二维矩阵直接相乘；T图全部原始像素和R与上传稿脚本一致；截断级数矩与独立球面数值积分一致；四种长范围曲线末端与独立积分一致。上述核验只说明数值与设定，不能替代逐态页面实看或学生理解验证。

## 文件选用

- 前台：`section1-data.json` 或 `section1-data.js`，二者同源。
- 可复算：`build-section1-data.py`（NumPy）、`verify-section1-data.py`（NumPy/SciPy）。
- 上传稿附录复现：`s02-pattern-recall.py`（NumPy/Matplotlib）、`memory-rms-recompute.py`（NumPy）。
- 原始T图与有限网格数据：`s02-pattern-recall-results.json`、`memory-rms-recompute.json/.csv`。
- 独立资产可公开文件集合位于 `public/`，不包含作者原文、作者源码或论文PDF。
