自然梯度的坐标不变性到哪里为止:同一枚硬币的两种参数
读到“自然梯度不依赖参数化”,很容易期待:同一个模型换种写法,用相同学习率更新一次后,预测也必须完全相同。把Bernoulli概率p改写成logit,就能看到这个说法需要的局部条件。这个例子适合检查AI对Fisher信息与重参数化的解释是否省略了有限步长。
AI生成的概念示意图:两种坐标描述同一组概率状态,局部尺度随位置变化;曲线不是精确度量图。
先在概率坐标里求方向
设模型以概率p输出1,以概率1-p输出0。观察到一个标签y=1,负对数似然为L(p)=-lnp。取当前p=0.2,普通导数为-1/p=-5。若直接以学习率0.1更新p,得到0.7;学习率再大,还可能走出合法概率区间。
概率坐标的Fisher信息来自模型自身对两种标签的期望:标签1的对数概率导数为1/p,标签0为-1/(1-p),平方后按p与1-p加权,得到Fₚ=1/[p(1-p)]。本例是6.25。自然梯度用F的逆乘普通梯度,所以得到-0.8。
于是概率坐标中的一步更新为p新=0.2-0.1×(-0.8)=0.28。这里Fisher不是只把本次真实标签的梯度平方。若只平方-5得到25,算出的是另一份量,更新也会变成0.22,不能混称为本例的精确Fisher。
改用logit后,数值变了但局部方向对应
令θ=ln[p/(1-p)],p为θ的sigmoid。当前θ约为-1.386294,且dp/dθ=p(1-p)=0.16。通过链式法则,损失对θ的导数为p-1=-0.8;Fisher则为Fθ=p(1-p)=0.16,自然梯度等于-5。
按同一个学习率更新θ,增加0.5,得到约-0.886294。代入sigmoid,新概率约为0.291875,确实与刚才的0.28不同。若只做局部线性换算,概率增量为0.16×0.5=0.08,恰好对应概率坐标中的那一步方向。
为什么局部一致没有保证终点一致
两种坐标中的自然梯度作为切向量能够相互转换,但普通离散更新把这根切向量画成了坐标里的直线。sigmoid是弯曲的变换,把有限长度直线走完再转换,与先转换方向再走完,并非同一个操作。
把学习率缩到0.01,概率坐标给出0.208,logit坐标给出约0.208120。差距比前面小得多,反映两种路线在局部的一致性。对无限小的方向或相应连续流的几何性质,不能直接扩大成任意有限学习率下的逐步轨迹完全相同。
让AI报告模型、度量与离散更新三件事
一个有效提示是:“为同一Bernoulli模型分别用p和logit推导损失梯度及模型Fisher;先比较切向量换算,再分别执行有限步长更新。输出实际概率,不要只比较参数的变化量。”本次还用有限差分检查两套损失导数,并验证Fθ=(dp/dθ)²Fₚ。
还可以把标签换成零重新推导:概率坐标下自然梯度变为p,下降会把概率往零推;logit坐标中的方向也应经链式换算对应。这个检查能发现把观测标签与模型期望混用的问题。概率恰好为零或一时,本文的对数、坐标变换和逆度量不能直接照搬。
在大型模型里,Fisher矩阵可能奇异,完整求逆也可能昂贵,实际会采用近似、阻尼或线性方程求解。这些选择都应写进实验条件;在不同坐标中简单加同一个单位矩阵阻尼,一般不能自动保留理想的几何性质。
读者由此可以区分三种问题:导数推错、度量定义不同、离散步长造成的差别。自然梯度不是省去学习率与数值验收的理由,本文也没有证明它在某个网络上更快。它给出的是一个足够小、能把“参数变化”和“预测分布变化”拆开核验的测试用例。
资料核对日期:2026年10月3日。本文数值为原创教学设定,已用本地程序复算,未进行真实网络训练或生产效果测试。
参考资料
Martens:New Insights and Perspectives on the Natural Gradient Method
Amari:Natural Gradient Works Efficiently in Learning


