跳到主要内容
Sandbox Physics

D-X2 · 从残缺图案找回记忆

Hopfield 联想记忆

一个网络怎样从残缺线索恢复整幅图案? 存入的图案规定单元之间怎样相互影响。线索有缺损时,每个单元听从其他单元的合力,网络能量便逐步降低。它可能找回原图,也可能停在相互竞争的另一个局部极小值上。

把存下来的图案涂乱,让网络一格一格修复。增加相互竞争的记忆,或扰乱大半格子,看它什么时候会停在另一个图案上。

交互模型Hopfield 联想记忆
与所选图案的差别00
网络能量00
本次扫描改变格数00
回忆状态00
这次回忆中的能量下降
权重里存下的图案

重放一次已计算的异步回忆。青色是能量记录,琥珀色标出当前帧。

科学来源

物理教程

把记忆放在网络的稳定图案里

背景一个熟悉的字缺了几笔,人往往还能认出来。Hopfield 模型问的是:很多只听邻居意见的简单单元,能不能把残缺图案补回来?

为什么值得理解记忆存在单元之间的连接中。没有另一个程序逐格告诉它们,心形或闪电应该画在哪里。

先抓重点

核心问题
一个网络怎样从残缺线索恢复整幅图案?
一句话直觉
对称连接让逐个更新的单元沿着能量下降,走向稳定图案。

核心数学模型

图案怎样规定连接

wij=1N∑μ=1Pξiμξjμ,wii=0w_{ij}=\frac{1}{N}\sum_{\mu=1}^{P}\xi_i^{\mu}\xi_j^{\mu},\qquad w_{ii}=0

每幅存入图案给每个格子一个二值。经常同向的一对单元得到正连接,经常反向的一对得到负连接。最后除以单元总数,固定权重尺度。

一个格子听谁的

si←sgn⁡ ⁣(∑jwijsj)s_i\leftarrow\operatorname{sgn}\!\left(\sum_j w_{ij}s_j\right)

每次只更新一个单元,顺序先打乱。其他单元按连接权重给它合力,它就顺着合力选择方向。合力为零时,保持原样。

每次改变都让能量降低

E=−12∑i,jwijsisj,ΔE=−(sinew−siold)∑jwijsj≤0E=-\frac12\sum_{i,j}w_{ij}s_i s_j,\qquad\Delta E=-(s_i^{\mathrm{new}}-s_i^{\mathrm{old}})\sum_j w_{ij}s_j\leq0

权重对称,并且没有自耦合时,允许的单元改变都会降低能量。最后没有哪个单元能靠单独翻转让能量更低,图案便稳定下来。

常见难点

稳定下来,仍可能认错

容易误解能量不再下降,就说明已经找回想要的图案。

正确理解能量可以有很多局部极小值。相似记忆会挤占彼此的位置,零阈值模型里的每幅图案还都有一个反色伙伴。

动手实验

  1. 01

    先看一次修复

    选“修复划坏的心形”,跟着能量曲线上的琥珀色标记看。

    你会看到: 能量下降时,残缺格子逐渐改变。已计算的回忆会反复重放,方便看清同一次修复。
  2. 02

    换一条线索

    选“找回闪电”,再用手在图案上涂几笔。

    你会看到: 松手后,从你画的图案开始新一次回忆。回忆期间,单元之间的连接保持不变。
  3. 03

    让记忆相互竞争

    选“相似记忆相互竞争”,看看最后还有多少格不一样。

    你会看到: 彼此相关的图案可能把网络拉到另一个稳定状态,和指定的原图仍有差别。
  4. 04

    试试反色图案

    选“停在反色记忆”。

    你会看到: 颜色相反的图案也可以能量很低、十分稳定。只看能量,分不出你本来想找哪幅图。
反馈这个页面有错误、看不明白,或者缺了什么?告诉我们
反馈类型

提交时会附带本页地址、Lab ID、网站语言和设备类型。请不要填写个人信息。反馈最多保存 12 个月。隐私政策