神经网络量子态笔记¶
这套笔记想回答一个贯穿机器学习、Transformer、强化学习、统计物理和 NNQS 的问题:
一个复杂系统有太多状态,无法直接穷举;我们能不能用一个可训练的函数 \(f_\theta\),把它压缩成可以计算、采样、推断和优化的形式?
先把这句话说得更直白一点。
如果用最傻瓜的办法描述一个概率分布,就是把每一种可能性和它的概率全都存下来:
问题是,很多系统的 \(M\) 大得离谱。一个 \(N\) 个自旋的 Ising 系统有:
个构型。一个长度为 \(T\)、词表大小为 \(|\mathcal V|\) 的文本空间有:
条可能序列。一个量子多体 Hilbert space 的维度也会随自由度指数增长。
如果真的给每个构型、每句话、每个状态都单独存一个概率,那不是“建模”,而是在硬盘里铺一张巨大到不可用的表。
神经网络让人惊讶的地方正在这里:它没有显式存下这张表,而是用一组相对有限的参数 \(\theta\) 表示一个函数:
当然,这并不意味着计算免费。每次查询一个概率、生成一个 token、评估一个构型,仍然要做矩阵乘法、attention、归一化和采样。但关键区别是:
这背后的信念是:虽然状态空间巨大,但真正重要的结构往往没有状态空间本身那么大。语言不是任意 token 的随机堆砌,物理系统不是任意构型都同等重要,图像不是任意像素噪声,策略也不是任意动作表。世界中存在可复用的结构、局部性、对称性、组合规律、因果关系和低复杂度描述。
所以这套笔记的第一层直觉是:
神经网络不是把所有答案背下来,而是在巨大可能性空间中学习一个可泛化的压缩表示。
更准确地说:
压缩不是智能的全部,但智能必然包含压缩。一个系统如果能预测,说明它抓住了某种结构;如果这种结构能迁移到新情景,说明它不只是记忆;如果它还能支持行动和反事实判断,就更接近 agent 或科学理论。
物理学本身就是这种思想的极致例子。Ising 模型没有列举 \(2^N\) 个构型的概率,而是用很短的 Hamiltonian 规定权重:
语言模型也类似。它不可能存下所有句子,而是学习自回归分解:
NNQS 则把量子构型 \(x\) 映射到波函数值 \(\psi_\theta(x)\),用可训练函数压缩指数大的 Hilbert space。
因此,贯穿本站的主线可以概括为:
这个问题在不同领域里会换不同外衣:
| 场景 | 输入 | 模型输出 | 优化信号 |
|---|---|---|---|
| 分类模型 | 图片、文本、表格 | \(p_\theta(y\mid x)\) | 标签误差 |
| 语言模型 | token 前缀 | \(p_\theta(t_i\mid t_{<i})\) | next-token loss |
| 强化学习 | 状态 \(s\) | 策略 \(\pi_\theta(a\mid s)\) | 长期 reward |
| 统计推断 | 观测数据 \(D\) | 后验或 belief | 概率一致性 |
| VMC / NNQS | 量子构型 \(x\) | \(\psi_\theta(x)\) | 能量最小 |
看起来题材很多,但底层结构很统一:
这就是本站的 global picture。
一张总图¶
数学和概率
-> 熵 / KL / 最大似然 / 推断 / 优化
-> PyTorch: tensor / autograd / Module / training loop
-> 经典结构: MLP / CNN / RNN / LSTM / PixelCNN / RBM
-> Transformer: token / attention / decoder / KV cache
-> 强化学习: MDP / reward / Monte Carlo / PPO
-> 神经网络与物理: 统计物理类比 / CNN 相变识别
-> NNQS: psi_theta(x) / |psi|^2 采样 / VMC 能量优化
-> 工程和招聘题: infra / 数值精度 / 显存 / 调试 / 高频考点
如果只记一个核心式子,可以记:
神经网络不是孤立的“层堆叠”。它更像一个通用的参数化语言:可以表示分类概率,可以表示 token 条件分布,可以表示策略,也可以表示量子波函数。
五个关键词¶
函数¶
最基本的机器学习图像是函数拟合:
监督学习把 \(x\) 映射到标签 \(y\),语言模型把前缀映射到下一个 token 分布,NNQS 把构型 \(x\) 映射到波函数值 \(\psi_\theta(x)\)。
所以第一层心智模型是:
训练神经网络,就是在一个巨大函数空间里找一个有用的函数。
对应章节:
概率¶
神经网络经常不是只输出一个数,而是输出一个分布:
一旦输出是概率,就会自然遇到熵、交叉熵、KL 散度、最大似然、后验推断、belief、配分函数这些概念。
第二层心智模型是:
学习常常是在调整一个概率分布,让它更符合数据、奖励、能量或物理约束。
对应章节:
结构¶
模型不是随便搭的。数据结构会强烈影响模型结构:
| 数据 | 结构 | 常见模型 |
|---|---|---|
| 表格 | 特征列 | 线性模型、树模型、MLP |
| 图像 / 格点 | 局部邻域和平移结构 | CNN、ViT |
| 序列 | 顺序和上下文 | RNN、Transformer |
| 图 | 节点和边 | GNN、图模型 |
| 量子构型 | 指数大 Hilbert space | Tensor network、NNQS |
Transformer 的关键,是把一个 token 放到上下文中重新理解:
NNQS 的关键,是用神经网络在指数大构型空间里表示波函数:
第三层心智模型是:
架构设计是在把问题的结构写进模型。
学习 Transformer 时可以配合两个可视化工具:
| 推荐 | 适合看什么 | 我的建议 |
|---|---|---|
| Transformer Explainer | GPT 式 Transformer 的整体流程、token、embedding、\(Q/K/V\)、attention、MLP、next-token prediction | 首推。它是交互式的,适合在浏览器里跟着模型预测下一个 token 的流程走一遍。 |
| LLM Visualization | 3D 方式看 LLM 的矩阵流动、层结构、attention head、残差流 | 适合建立“模型是一个巨大的矩阵流水线”的全局直觉,再回头读公式会更顺。 |
对应章节:
- 经典神经网络结构总览
- CNN:局部连接、权重共享与特征图
- RNN、GRU 与 LSTM
- Transformer 笔记总览
- Attention 机制
- Decoder 的基本结构
- 神经网络发展与统计物理视角
- CNN 识别量子相变
采样¶
很多时候,我们无法直接求全空间的和:
状态空间太大,只能采样。
在物理 Monte Carlo 中,样本是构型:
在强化学习 Monte Carlo 中,样本是 episode:
在 VMC / NNQS 中,样本来自当前波函数模方:
第四层心智模型是:
采样是把不可枚举的巨大空间,变成可以估计的有限经验。
对应章节:
优化¶
最后,模型要被某个目标牵引:
| 场景 | 目标 |
|---|---|
| 分类 | cross entropy 最小 |
| 语言模型 | next-token negative log likelihood 最小 |
| 强化学习 | expected return 最大 |
| 零温 VMC | energy 最小 |
| 有限温变分方法 | free energy 最小 |
这些目标的形式不同,但训练循环都很像:
第五层心智模型是:
训练就是让参数化对象沿着目标函数的方向移动。
对应章节:
训练和推理¶
神经网络通常有两种使用模式:训练和推理。
训练时,参数 \(\theta\) 会被更新。模型先根据输入样本做 forward,得到输出,再用某个目标信号判断输出好坏,并通过反向传播或其他估计方法调整权重。
| 场景 | 样本来源 | 优化信号 |
|---|---|---|
| 监督学习 | 外部训练集 | loss 最小 |
| 语言模型 | 文本 token 序列 | next-token cross entropy 最小 |
| 强化学习 | 环境交互轨迹 | reward 最大 |
| 零温 VMC / NQS | 当前波函数分布采样 | 能量最小 |
| 有限温变分方法 | 热分布或变分密度矩阵采样 | 自由能最小 |
从概率分布的角度看,训练是在调整一个参数化分布。输入通常作为条件,输出是条件概率下的结果:
推理时,参数通常固定,不再更新。模型只做 forward:
- 分类模型给出类别概率。
- 语言模型自回归地产生 token。
- 策略网络给出 action。
- NNQS 把输入构型 \(x\) 映射到波函数值。
NNQS 中:
采样时使用:
因此,在 NQS 里,训练好的权重本身就是一个压缩的波函数表示。
NNQS 主线¶
本站最核心的物理主线是:
薛定谔方程
-> Hamiltonian 本征值问题
-> occupation bitstring basis
-> 神经网络波函数 psi_theta(x)
-> 按 |psi_theta|^2 采样
-> local energy 估计能量
-> VMC 梯度更新参数
用一个式子压缩:
训练循环就是:
对应章节:
阅读路线¶
如果从零开始,建议按下面顺序读:
- 机器学习地图:建立监督学习、自监督、强化学习和变分学习的共同框架。
- 模型训练就是函数拟合:理解 \(f_\theta\)、loss、梯度更新和 VMC 闭环。
- 推断、统计推断与信念传播:区分工程 inference、贝叶斯推断、belief 和图模型消息传递。
- PyTorch 教程总览:掌握常用 torch 命令、tensor、autograd、
nn.Module、训练循环和torch.compile性能优化。 - 经典神经网络结构总览:补齐 MLP、CNN、RNN/LSTM、PixelCNN、RBM 这些 Transformer 之前的重要模型。
- Transformer 笔记总览:补足 decoder-only Transformer、自注意力、mask 和 KV cache。
- 强化学习中的 Monte Carlo:理解轨迹采样、价值函数、Bellman 方程和 TD 的关系。
- 从薛定谔方程到 NNQS:建立物理图像,理解为什么用神经网络表示波函数。
- 模型结构:看清 \(\log|\psi_\theta(x)|\)、相位和复波函数输出的关系。
- VMC 训练:理解 local energy、能量估计和梯度代理。
- 从模型代码到系统代码:从大模型工程背景理解模型、数据、训练、推理和服务代码如何分层。
四条专题路线¶
初学路线:
物理路线:
工程路线:
PyTorch 教程
-> 数值精度
-> torch.compile
-> 大模型 Infra 全景
-> Transformer KV cache
-> 从模型代码到系统代码
-> 工程公式速查
-> 工程正确性与性能验证
招聘备考路线:
对应入口见 招聘备考专题。这个专题不复刻原始真题,而是把公开面经和岗位要求里的高频考点改写成代表题,并把解题思路链接回本站知识页。
工程地图¶
工程导读这一组不再重复 NNQS 主线,而是把视角抬到大模型系统。可以按下面顺序建立全局图像:
模型代码
Transformer / MLP / Norm / LM head
数据代码
tokenizer / dataset / dataloader / packing
训练代码
forward / loss / backward / optimizer / checkpoint
分布式代码
DDP / FSDP / tensor parallel / pipeline parallel
执行优化
FlashAttention / fused kernel / torch.compile / CUDA graph
推理系统
prefill / decode / KV cache / batching / quantization
服务系统
API / scheduler / streaming / monitoring / rollback
对应页面:
最短心智模型¶
如果把整套笔记压缩成一句话:
神经网络提供可训练函数,概率提供不确定性语言,采样处理巨大状态空间,优化给出学习方向,而 NNQS 把这一整套工具用于表示和优化量子波函数。
再压缩成一条公式链: