一个元件不知道答案,怎么知道自己该改什么
设想两路传感器分别给出电压 $x_1$、$x_2$,我们希望电路输出满足 $y=0.1+0.6x_1+0.2x_2$。把若干电阻连起来,电流当然会流动,各节点电压也会稳定下来;但随机接出的电路没有理由恰好实现这组系数。
通常可以先在电脑上计算怎样调节各个电阻,再把结果写入硬件。物理局部学习追问的是另一种分工:能否让每条边只测自己两端的状态、在本地调整参数,而整个网络逐步接近任务要求? 关键困难不是电路能不能响应,而是如何把“当前输出错在哪里”转换成“这条边应当怎样调整”。1
这已经有硬件实验。2022年,Dillavou 等用两套对应的可变电阻网络实现了局部对比更新;2024年的后续装置换用晶体管,能够学习XOR和非线性回归。2 3 但“局部”并不意味着完全没有外部目标或控制,也不意味着每种局部变化都能帮助学习。我们先把最小过程走通,再看实物做到了哪一步。
电压在响应,导度在记住
一条线性电阻边的电流满足:
$g_e$ 是导度,即电阻的倒数;导度越大,同一电压差推动的电流越大。输入端的电压被外部电源固定,其余节点的电压由电流守恒决定:一个没有外部注入的节点,稳态下流入量必须等于流出量。邻居的电压变化会改变本地电流,本地电压又会影响更多邻居,直到整张网同时满足这些约束。
在正导度、输入电压固定的线性网络中,这等价于对自由节点电压最小化:
这里 $\Phi$ 是焦耳耗散功率的一半,采用这个常数因子只是为了导数简洁,实际功率为 $2\Phi$。固定输入边界且每个自由连通部分都接到边界时,稳态解唯一。这是本文线性示例的数学条件,不能直接推广成所有非线性电路都最小化同一个耗散函数。1
现在需要分清两类变量。
| 变量 | 在做什么 | 在学习中的角色 |
|---|---|---|
| 节点电压 $V$ | 随当前输入迅速调整 | 计算这次输入的输出 |
| 边导度 $g$,或晶体管栅极电压 $G$ | 根据训练规则改变,随后保持 | 保存学得的输入输出关系 |
拔掉输入后,原来的电压分布可以消失;只要可学习参数保持,再给同样输入仍能产生相应输出。反过来,一个电压已经稳定、参数却始终不变的电路,只是在重复自身原有的响应,并没有因训练学会新关系。
还有一个容易混淆的地方:物理稳态和任务正确,是对不同变量提出的不同要求。 电路对 $V$ 最小化 $\Phi$,训练则要调整 $g$,降低输出与标签之间的误差。即使每次电流都完全守恒,输出仍可能错得很大。1 6
一个简单反例能说明这点:将所有导度同时乘以3,固定输入下的电压分布不变,任务误差也不变,但电流和焦耳耗散都变成3倍。本篇实际计算验证了这一比例。减少耗电可以是另一个设计目标,但它不会自动等于学会任务。
把目标的影响送到每一条边
对比学习使用两个响应状态。第一个是自由状态:只给输入,让输出自然形成,记为 $y_F$。第二个是约束状态:保持相同输入,将输出端固定在一个更接近目标 $y^*$ 的电压:
例如自由输出是0.4、目标是0.6,取 $\eta=0.1$,训练装置就把另一个状态的输出端固定在0.42。输出端电压一变,相邻电流跟着变,变化沿网络传播,隐藏节点重新找到电流平衡。于是,远离输出的边也可能感受到它两端电压降的变化。1
同一条边在两个状态中的电压降记作 $d_e^F$、$d_e^C$。在线性导度模型中,更新可写成:
$\lambda$ 是学习步长。每条边只需要自己的两个局部电压降;不需要读完整训练集,也不需要知道其他边的参数。若约束状态中这条边的电压降平方更大,这个规则会减小它的导度;若更小,则增大。这里说的是导度,改写成电阻时符号和尺度必须随倒数关系转换。1 2
为什么这不是随便选的规则?目标造成的扰动已经通过整张网络的物理响应传播过来了。元件读到的虽然是局部量,但这个局部量同时受输入、目标约束和网络其他部分影响。局部测量不等于测量值只含局部信息。 这正是局部参数更新与全局任务之间的连接。
两个状态不能在同一时刻同时占据同一个电路。可以分时测量并保存前一个状态,也可以建两套参数对应的网络。2022年的实验选择后者:让自由网络和约束网络同时运行,对应边比较各自的电压降,以局部控制电路同步改变电阻。由于器件只有128个离散电阻档位,当时实现的是按符号增减档位的近似规则。2024年装置让一对晶体管共用一个栅极电压存储电容,局部模拟电路连续更新这个电压。2 3
因此,两套网络、测量电路和可保持的参数都是真实资源。训练协议解决了“怎样同时比较两个响应”的问题,而不是让这个问题凭空消失。
在一个小电路里,把纠错方向算清楚
本篇搭建了一个无量纲的九节点线性网络,共12条边。四个角固定为 $0,1,x_1,x_2$,中心节点读输出,其余节点按电流守恒求解。用32个随机输入训练上述关系 $y^*=0.1+0.6x_1+0.2x_2$,再在 $[0,1]^2$ 上的51×51网格测试。所有导度始终为正,允许范围为0.02至5;$\eta=0.001$,固定步长为1,执行4000次批量更新。
这些都是示意参数,没有拟合某台硬件。程序用线性方程求解器模拟电路松弛,用局部电压降差计算更新;误差仅用于评估,没有用误差梯度或全局优化器代替局部规则。批量平均是数值实验的选择,实际2024装置则依次呈现样本。本篇计算结果

| 同一初始电路上的操作 | 4000步后测试均方误差 |
|---|---|
| 不更新参数 | $1.14\times10^{-2}$ |
| 使用局部对比更新 | $4.16\times10^{-20}$ |
| 将更新符号反过来 | $2.77\times10^{-1}$ |
最终学得的截距和两个系数分别约为0.1000000005、0.5999999997、0.1999999994。如此小的误差来自无测量噪声、同一个线性函数生成训练和测试标签、双精度求解的理想化设定,不代表真实模拟电路能达到十几位有效精度。这里的测试说明网络学到了一个在所测范围内适用的线性关系,而不是只对32个输入逐点记答案;它没有检验分布改变或复杂任务的泛化。

还需要检查:这次成功是碰巧,还是更新方向确实接近纠错方向?对这个单输出、线性、完全松弛的模型,可以直接推导。
令单样本误差函数 $C=\tfrac12(y_F-y^*)^2$,$e=y_F-y^*$。设 $A$ 是固定输入后自由节点的导纳矩阵,$b_e$ 是第 $e$ 条边在这些节点上的关联向量,$u_o$ 只在输出节点位置取1。定义
$R_o$ 可理解为将输入电压源置零后,从输出看进去的等效电阻。给输出一个小电流,网络如何响应,由 $A^{-1}u_o$ 决定。改变边导度和给输出施加电压扰动,都经过这个相同的响应结构,具体有:
代回局部更新量,得到:
这在该线性单输出模型中是精确恒等式。因此,扰动趋小时,局部更新与真实误差梯度只差一个正比例因子;用负号更新、步子足够小,就沿着降低误差的方向移动。$R_o$ 是解释这个联系时使用的量,实际局部更新不需要计算它。同一固定线性网络的 $R_o$ 不随输入改变,所以这一比例关系也适用于这里的批量平均。
程序用中心有限差分独立检查了真实梯度,二者相对差约 $8.8\times10^{-11}$;随后比较不同 $\eta$ 下的 $R_oh$ 与梯度,差异随 $\eta$ 缩小而下降。电流守恒的最大残差约 $1.2\times10^{-15}$。这些检查支撑的是这个明确模型里的方向关系,不是任意多输出网络、有限步长或非线性元件都必然收敛的证明。多输出时等效响应一般是矩阵,不能继续当成同一个正标量。1 8
更新规则正确,也可能学不会任务
上述正导度电路的每个自由节点电压,都是邻居电压的加权平均。沿网络传播后,输出仍是边界输入的线性组合,且不能超出边界电压范围。固定的0与1允许引入截距,却不会让输入输出关系变成非线性。多加几层线性电阻,也不能消除这个限制。1
XOR提供了一个干净的反例:输入00、10、01、11,对应目标0、1、1、0。任何仿射函数都满足
目标却要求左边为0、右边为2。不是训练耐心不够,而是这类电路根本不能精确表达这四个值。对四种输入等权计算,所有仿射函数中最好的均方误差为0.25,由常数输出0.5取得。本篇带正导度下限的网络训练后误差约0.25009,输出挤在0.49至0.51附近,符合这条下界。

这里有两个不同问题:更新能否找到可用参数,以及网络是否存在能完成任务的参数。前一个问题的成功不能替代后一个条件。2021年的原始理论已经指出,即使任务是线性的,非负导度和网络结构也会限制可实现的映射。1
真实晶体管网络跨过了哪道门槛
2024年的装置有32组对应的“双边”,每组含自由、约束两套网络中的晶体管,共享一个可学习栅极电压。晶体管工作在被用作可变电阻的区域,其近似导度满足
$G$ 是栅极电压,$V_A,V_B$ 是端点电压。与普通电阻不同,即使 $G$ 暂时固定,导度也随端点平均电压改变,因而整个网络的输入输出可以是非线性的。较低的栅极电压同时意味着较低导度与更明显的非线性,这两种性质并不能独立任意调节。3
实验用两路输入、差分输出和两个偏置节点学习XOR。输入取0或0.45 V;不同输入的标签是 −0.087 V,相同输入的标签是0。也就是说,输出做了电压幅度和符号编码,逻辑关系仍是XOR。四种输入都用于训练,约几秒的有效训练时间后接近目标;这证明装置能完成一个线性网络做不到的任务,不是用四个训练样本证明大规模泛化能力。非线性回归实验还观察到平均值、斜率、曲率等误差分量依次被改善。3
负责本地更新的并非裸晶体管自己。运算放大器、模拟乘法器和电容组成控制环路,比较两个状态的电压降,向存储栅极电压的电容充放电。外部装置仍负责给输入、提供标签、设置扰动比例,以及在切换样本时冻结学习。公开预印本附录列出了 Arduino、DAC/ADC 和上位机的具体分工:它们组织实验和读写边界,并不逐边算梯度再写回全部参数。3 4
还有一个数学边界不能省略。实现了完整的对比更新公式,不等于严格实现了任意任务的梯度下降。 该晶体管的电流不只依赖电压差,也依赖端点平均电压;作者在公开预印本附录G中使用局部线性化,要求两种状态中的端点平均电压差相对栅极过驱动足够小。附录明确指出:远离解、扰动较大、栅极电压较低等条件同时出现时,近似可能失效,局部更新甚至可能朝不利方向走。实验仍能成功,是该装置在所测任务上的事实,不会反过来取消这些推导条件。4
真正的限制藏在信号、时间和存储里
扰动不能只追求更小。 数学上小 $\eta$ 更接近导数,硬件上却意味着两个状态的差更难测,失配与噪声更容易淹没训练信号。因此2024实验对XOR采用 $\eta=0.5$,对回归采用 $\eta=1$,并非本文无噪声示例的0.001。有限扰动不等于必然失败;它是在梯度近似、信号强度和器件响应之间作实际选择。3
响应需要时间,但未完全松弛也不等于无法学习。 本篇证明先让电压到稳态,再更新参数。2022年的专门实验与模拟则提高了学习速率,使参数变化与电路松弛相互耦合:超过某个比率后误差出现振荡,但所测网络仍能学会任务。这说明“准静态推导不再适用”和“系统一定学不会”是两种判断;实际动态要重新分析。5
低推理能耗不是低训练能耗,更不是整机能耗。 2024论文估算完成一次已学任务时,每条边耗散约10至20 pJ;它只按边上的电压、导度和响应时间计算,是原型的一个下界。用于学习的局部电路却约耗100 mW/边,主要支出在放大器和乘法器,训练结束后可以关闭。这两个数字一个是能量,一个是功率,工作阶段和统计边界都不同,不能直接相比,更不能把10 pJ写成“整机每次训练的耗电”。论文所报训练时间也只累计允许参数变化的时段;当时施加电压等控制操作还占了近似相等的实际时间。3 4
学到的关系还要存得住。 该原型用电容上的模拟栅极电压保存参数,作者承认长期保持精度不理想。关闭学习电路可以省电,但电容漏电、参数漂移和读出负载仍会影响保留的关系。把存储搬回元件附近,改变了计算与记忆的组织方式,没有免除存储的物理代价。3
从“能学”走向“为什么能学、什么时候失效”
近期进展让问题进一步具体化。
2025年的《Physical Networks Become What They Learn》把两个空间联系起来:一边是节点电压怎样响应物理扰动,另一边是边导度怎样影响任务误差。在已满足任务的线性响应网络中,误差对参数最敏感的方向,与物理响应中较软的模式通过网络结构相联系。这为“从物理扰动识别哪些参数对已学功能最重要”提供了依据;多模式混合等情形更复杂。一个柔软模式也可能来自对称性或结构,不能只凭它就倒推出一段唯一的训练历史。6
2026年发表的 BEASTAL 工作探索另一种分工:内部边遵循较简单的局部演化规则,外部通过特殊的输入、输出边界来组织更新。已读的公开预印本在输入输出直接相连的流体电阻模型上做回归与分类模拟;其控制器使用网络关联矩阵的伪逆及测得的输入输出,计算更新阶段的边界条件。因此,它提示“双网络不是唯一路线”,同时也表明,简化元件内部规则可能把更多计算放到边界控制器。这里的成功来自数值模拟,不能写成已制成的流体学习硬件;演化规则非线性,也不等于固定参数后的输入输出已经非线性。7
2026年6月的局部收敛预印本则直接研究“什么时候保证学得下去”。对正导度线性电路,作者在解存在、初态足够接近解、相关响应矩阵满足秩条件等前提下,证明局部误差衰减和参数收敛;还构造对称电路说明关键非退化条件会失效。对一般约束学习,参数相关的加权误差还带来额外项,不能仅凭“扰动很小”就把它与普通梯度下降完全等同。本文核对了条件、加权误差关系和主要定理陈述,没有独立重证全部定理。8
这些进展指向同一个实在的问题:电路是否能表达任务,输出纠错是否能传到有用的可调参数,局部更新是否在实际噪声与动态下保持有效。答案需要同时考察网络、训练协议和器件,不能只看某条漂亮的更新公式。
本篇较稳的认识是:目标通过边界扰动改变全局响应,元件从局部对比中取得任务相关信息,再把改变保存在参数中。 本篇计算解释了这条链在一个线性单输出网络中为什么成立;真实非线性实验说明它可以超出线性任务;尚未解决的则包括复杂任务上的可训练范围、非理想器件下的扩展、长期存储,以及包含控制和读写的整机代价。它展示的是一种可以被分析和实现的学习分工,而非物理系统不加条件就会自动学会任意目标。