棋盘外的网络 — 记忆、归组与对抗
这一章讲三件事: LSTM 靠三个「阀门」让信息能跨越长时段存活; SOM 靠「竞争-合作-适应」三步把高维数据摊成一张二维地图; GAN 靠两个网络互相博弈造出以假乱真的样本。 读完你应能回答:这三个「非 RL 出身」的网络,凭什么出现在一本 深度强化学习的教材里——以及书里那张 GAN 对比演员-评论员的表, 差别在哪一格最要紧。
1. 这一章讲什么
原书第 4 章名为「单智能体算法」,却收了三个不算 RL 算法的成员:LSTM、SOM、GAN—— 书里给它们套了同一张「算法/模型/动作/策略」的登记表,结果表格里填的全是 xx 或错位的格子(GAN 那行的模型、策略干脆是 xx)1。这是原书章法最明显的一处松动。
我们不硬套表格,换成三个短板来看它们为什么在场:
| DRL 智能体的短板 | 补位的网络 | 一句话 |
|---|---|---|
| 不记历史:状态里没有的,等于没发生 | LSTM | 给网络一条能长期保存信息的记忆通道 |
| 高维状态没有组织:百万像素无「远近」可言 | SOM | 无监督地把高维数据摊成保留「邻居关系」的低维地图 |
| 真实训练信号贵:真数据、真奖励都要花钱 | GAN | 两个网络互搏,自己造以假乱真的样本 |
2. 顶层全景:三个网络,三张小图
LSTM(记忆) xₜ ──► [ 遗忘门 | 输入门 | 输出门 ] ──► hₜ(短期) ──► 下一步
│
cₜ(细胞状态:长期记忆,横穿时间)
「该忘多少、写进多少、读出多少」——三个门各管一件
SOM(聚类) 高维输入 ──► 竞争(谁离输入最近?)──► winner
│
合作(邻居沾光)+ 适应(winner 与邻居向输入挪一点)
──► 反复几万次,数据摊成一张二维地图
GAN(对抗) 噪声 z ──► 生成器 G ──► 假样本 ──┐
├─► 判别器 D:真 or 假?
真实数据 ─────────────────────────┘
D 的判分反过来喂 G:「造得更像一点」
图说:三个网络分别在「时间、空间、真假」三个维度上补 DRL 的短板。
主走查:LSTM 的一个时间步,三个门各给一个数——第 3 节第 1 小节。
3. 核心原理
3.1 LSTM:三个阀门,一条长期通道
普通循环网络(把上一步的输出接回下一步输入的网络)有个精确的病:信息存不长—— 误差沿时间回传时反复乘同一块矩阵(把数排成长方阵再相乘的那种运算对象),不是衰减到零就是爆炸,书里原话 「消失或爆炸」2。LSTM 的回答是给网络单元加一套阀门机构3:
- 遗忘门: 决定上一时刻的记忆保留多少、忘掉多少;
- 输入门: 决定新信息写进多少;
- 输出门: 决定记忆读出多少给 下一步。
两条状态各司其职:隐藏状态 hₜ 是短期记忆,细胞状态 cₜ 是长期记忆3。 书里的核心更新式只有一行,却是全部机关所在:
cₜ = fₜ ⊗ cₜ₋₁ + iₜ ⊗ c̃ₜ hₜ = oₜ ⊗ tanh(cₜ)
⊗ 是逐元素相乘;f/i/o 三个门都是 0 到 1 之间的数( sigmoid 输出 ),
「门开几成」就是这个数本身。
主走查:记忆向量两维,走一个时间步(各门数值为演示编的; 上一时刻记忆 cₜ₋₁=[1, 0],本轮输入经计算给出:遗忘门 f=[0.9, 0.1], 输入门 i=[0.8, 0.2],候选新内容 c̃=[0.7, −0.6],输出门 o=[0.5, 0.5]):
c₁ = f ⊗ c₀ + i ⊗ c̃
= [0.9×1 + 0.8×0.7 , 0.1×0 + 0.2×(−0.6)]
= [1.46 , −0.12]
h₁ = o ⊗ tanh(c₁) = [0.5×0.90 , 0.5×(−0.12)] ≈ [0.45 , −0.06]
读法:第一维「旧记忆九成保留 + 新内容八成写入」→ 越存越多;
第二维「旧记忆只留一成 + 新内容是负的」→ 被主动擦掉了。
加法是 LSTM 的命门:细胞状态的更新是「旧的 ×(保留比例)+ 新的」—— 旧信息沿着 c 通道逐字传递、不被反复压缩,这正是它治「存不长」的机关 (病根与治法的完整推导,依据我们书架的拆解4)。书里报告的战绩:游戏对局 与机器人控制5。
3.2 SOM:把高维数据摊成一张地图
SOM(Kohonen 图)是无监督学习里的老前辈(1980 年代):不用反向传播, 把高维数据压成通常二维的表示,而且保留拓扑结构——原来挨得近的, 摊开后还挨得近6。结构极简:两层,输入层与「特征地图」输出层, 没有激活函数,权重原样传下去6。
更新靠三步循环,书里的术语是竞争、合作、适应7。拿三个神经元、 二维权重走一遍(权重与输入为演示编的;输入 x=[0.7, 0.9]):
① 竞争:算每个神经元与输入的距离,最近者当选
d²(w₁)=0.25 d²(w₂)=0.05 d²(w₃)=1.00 → w₂ 获胜
② 合作:获胜者按「距离 + 时间」的核函数挑出一圈邻居
③ 适应:w ← w + η·h·(x − w);取 η=0.3、winner 的邻域系数 h=1:
w₂ ← [0.8 + 0.3×(0.7−0.8) , 0.7 + 0.3×(0.9−0.7)] = [0.77 , 0.76]
书里给了两个会衰减的日程表:学习率 ηₜ 与邻域半径 σₜ 都按指数衰减 (前期大刀阔斧,后期精修)8。对 DRL 的意义:当状态是百万像素时, SOM 这类方法给状态空间一个「远近有序」的组织——原来在地图上做邻居的状态, 行为上也该相似;书里把它列进无监督家族,与此呼应9。
3.3 GAN:两个网络互搏
GAN 的设定书里写得很干净:生成器 G 从一个潜在分布(比如多元正态)抽噪声, 造出以假乱真的新样本;判别器 D 拿真数据和 G 的假货训练,学着分辨真假; 两个网络对着练——G 想骗过 D,D 想不被骗10。整个博弈在「判别器预测与 真伪标签的交叉熵」上构成零和博弈(一方赢的就是另一方输的)10; 书里伪代码的节奏:每轮先训 k 步 D,再训 1 步 G11。
为什么一本 RL 教材要收它? 书里自己给了一张 GAN 与演员-评论员的对照表12, 五格里最要紧的是监督那一格:
| GAN | 演员-评论员 | |
|---|---|---|
| 目标 | 学数据的分布、造新样本 | 从数据解随机最优控制 |
| 凸性 | 天生非凸 | 原本凸,近似后非凸 |
| 组件 | G 造样本,D 评真假 | actor 造动作,critic 评好坏 |
| 学习设定 | 无监督,数据独立同分布 | 序贯决策,当前动作改变未来数据 |
| 监督 | D 撤掉,G 完全无法训练 | actor 没 critic 也能训(自己估回报),只是更糙 |
最下一格是结构性的:GAN 的训练信号完全寄生在对手身上——把 D 拿走, G 连「往哪改」的梯度都没有;而 RL 的演员没了评论员还能靠真实回报硬学。 同构不同命,这一格值得原文照录地记住12。 书里给 GAN 的应用清单(图像修补、超分辨率、隐写、合成训练数据)13 指向 DRL 的真实用途:拿合成数据(机器自己造的假数据)喂智能体——真实试错太贵时,「造环境、造数据」 就是 GAN 在这本书里的位置。
4. 作者的判断与证据
- 书里给证据的: LSTM 三门两态与更新式、SOM 三步与两个衰减日程、 GAN 的零和设定与 k 步节奏、五格对照表,均为书中明列内容3781012。
- 作者的定位判断(我们的观察): 把三者收进「单智能体算法」章而套用 RL 登记表,是章法上的松动(表格里 xx 为证1);拆解改用「补短板」组织, 机制与出处不变。此为章内孤立判断;若它错了会错在哪,见总纲 §5 判断二的自曝。
- 书里的战绩陈述: LSTM「在游戏与机器人控制上取得显著成功」、 GAN 的应用清单,均为定性陈述,无数字支撑——照 实标注,不当战绩引用513。
- 书里给来源的: SOM 冠名 Kohonen(1980 年代);GAN 未标年代 (补充,不在书里,来自通用知识:Goodfellow 等 2014;书内第 2 章提过 Ian Goodfellow 之名)。
5. 边界与局限
-
LSTM 在 2025 年的地位要交代: 书成书时 Transformer(一次看全整串输入的那个新架构,第 12 章细讲)已是这一领域的主流(书里第 6 章自己也说 LSTM 记忆不足14); 但书里把 LSTM 列为「首选机器翻译方法」的说法已过时。RL 里 LSTM 仍有实职: 部分可观测任务上给策略「带记忆」,这一点 Transformer 反而才刚追上(通用补充)。
-
SOM 在深度学习时代已边缘化。 书里没说这句实话;它保拓扑的降维(把维度压小、还不拆散邻居关系) 已大多被深度非线性降维替代(补充,来自通用知识)。留下的遗产是 「竞争-合作-适应」这套无监督组织状态的思想。
-
GAN 的训练脆弱书里只字未提。 两个网络要势均力敌才练得动:D 太强, G 的梯度消失;G 太滑,模式坍塌(只出几种假货)——病根与机理在我们书架的 拆解里有完整讲解15;书里一句没提,是本章最大的缺口。
-
书里 GAN 一节还给了与 AC 的「凸性」对照(「GAN 天生非凸,AC 原本凸」)12—— 「AC 原本凸」的说法在非凸的现实算法面前意义有限,读时当作框架性提醒而非定理。
6. 可带走的
- 三个网络 = 三块短板的补丁:记不住(LSTM)、没法组织(SOM)、信号太贵(GAN);
- LSTM 一行式:cₜ = f⊗cₜ₋₁ + i⊗c̃ₜ——遗忘门定保留、输入门定写入; 细胞状态是「加法通道」,旧信息不被反复压缩,这是治「存不长」的机关;
- 门控(用 0 到 1 的开合比例决定放多少信息过)的数值直觉:主走查里第二维被「0.1×旧 + 0.2×负新」主动擦除;
- SOM 三步:竞争(比距离)、合作(带邻居)、适应(向输入挪); 学习率与邻域半径都按指数衰减——先粗后细;
- SOM 的核心承诺是拓扑保持:高维的邻居摊开后还是邻居——组织状态的「远近」;
- GAN = G 造假、D 鉴假、对着练;每轮 k 步 D 配 1 步 G,节奏本身就是超参数;
- 对照表最要紧一格:GAN 的 G 离开 D 无法训练;RL 的 actor 离开 critic 还能硬学 ——同构不同命;
- 三者都是「手段库」:DRL 的论文里出现它们,先问它补的是时间、组织还是数据。
7. 原文地图
| 主题 | 原书章 | 原文位置 |
|---|---|---|
| RNN 存不长、消失/爆炸 | 4.12 Long Short-Term Memory (LSTM) | text/18-ch04-12-4-12-long-short-term-memory-lstm.txt:39(搜「vanishing」) |
| 三门两态 | 4.12 Long Short-Term Memory (LSTM) | text/18-ch04-12-4-12-long-short-term-memory-lstm.txt:45(搜「Forget gate」) · text/18-ch04-12-4-12-long-short-term-memory-lstm.txt:70(搜「Cell state」) |
| 细胞状态更新式 | 4.12 Long Short-Term Memory (LSTM) | text/18-ch04-12-4-12-long-short-term-memory-lstm.txt:142(搜「Cell state vector」) |
| 登记表填 xx(编排松动) | 4.13 Generative Adversarial Network (GAN) | text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:28(搜「xx」) |
| LSTM 战绩(游戏、机器人) | 4.12 Long Short-Term Memory (LSTM) | text/18-ch04-12-4-12-long-short-term-memory-lstm.txt:215(搜「games」) |
| SOM 定位(Kohonen、无反传、保拓扑) | 4.15 Self-Organizing Maps (SOM) | text/21-ch04-15-4-15-self-organizing-maps-som.txt:38(搜「topological」) |
| 竞争/合作/适应、更新式 | 4.15 Self-Organizing Maps (SOM) | text/21-ch04-15-4-15-self-organizing-maps-som.txt:48(搜「winner」) · text/21-ch04-15-4-15-self-organizing-maps-som.txt:58(搜「Adaptation」) |
| η、σ 指数衰减 | 4.15 Self-Organizing Maps (SOM) | text/21-ch04-15-4-15-self-organizing-maps-som.txt:81(搜「decay」) |
| SOM 列入无监督家族 | 2.1 Learning from Problems | text/06-ch02-01-2-1-learning-from-problems.txt:398(搜「Kohonen」) |
| G/GAN 设定、零和 | 4.13 Generative Adversarial Network (GAN) | text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:45(搜「latent data distribution」) · text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:54(搜「zero-sum」) |
| k 步 D 配 1 步 G | 4.13 Generative Adversarial Network (GAN) | text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:78(搜「for k steps」) |
| GAN vs AC 五格表 | 4.13 Generative Adversarial Network (GAN) | text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:145(搜「Aims」) · text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:195(搜「cannot be trained」) |
| GAN 应用清单 | 4.13 Generative Adversarial Network (GAN) | text/19-ch04-13-4-13-generative-adversarial-network-gan.txt:209(搜「inpainting」) |
| LSTM 记忆不足、注意力整序列 | Recent Developments in DRL(§6.2) | text/24-ch06-01-6-1-physics-based-nns-and-drl.txt:585(搜「lack sufficient memory」) |