summaryrefslogtreecommitdiff
path: root/RAIN_EP_DILLAVOU_MATRIX.md
diff options
context:
space:
mode:
authorYurenHao0426 <Blackhao0426@gmail.com>2026-08-07 12:51:59 -0500
committerYurenHao0426 <Blackhao0426@gmail.com>2026-08-07 12:51:59 -0500
commitaea79bc3251f5e8a1ae798be97d773cf2639f46f (patch)
tree3a1e6484a1a0ab5c934e15f34ef6d1467c94af08 /RAIN_EP_DILLAVOU_MATRIX.md
parentffaa5c82b643b4313d288cdb9a4453254207f075 (diff)
feat: add Dillavou EP update-bias protocol
Diffstat (limited to 'RAIN_EP_DILLAVOU_MATRIX.md')
-rw-r--r--RAIN_EP_DILLAVOU_MATRIX.md64
1 files changed, 64 insertions, 0 deletions
diff --git a/RAIN_EP_DILLAVOU_MATRIX.md b/RAIN_EP_DILLAVOU_MATRIX.md
new file mode 100644
index 0000000..3452ac2
--- /dev/null
+++ b/RAIN_EP_DILLAVOU_MATRIX.md
@@ -0,0 +1,64 @@
+# Rain EP Dillavou-Imperfection Matrix
+
+## Question
+
+Can a local neutral predictor remove a fixed hardware update offset without
+using a larger EP nudging voltage?
+
+The primary corruption is the model in Dillavou et al., Eq. (7). Every local
+parameter update receives a fixed, unknown, parameter-specific offset after
+the two-state EP estimate has been formed:
+
+\[
+g^{\rm measured}_i = g^{\rm EP}_i + B_i.
+\]
+
+`B_i` is fixed across examples, epochs, and beta signs. Its RMS is specified
+relative to the first clean local update only to set a reproducible simulation
+scale. This normalization is not visible to the learner. The optional
+state-drift ratio is zero in all exact-model experiments.
+
+The correction is local and uses no backpropagation. With the teaching input
+disabled, the update circuit exposes `B_i`. The predictor stores this neutral
+measurement and subtracts it from subsequent updates. Under the strictly
+constant model, constant calibration and SDIL innovation are expected to
+coincide. A difference between them is neither predicted nor claimed.
+
+## Frozen author protocol
+
+- author repository: `rain-neuromorphics/energy-based-learning`;
+- revision: `6b253fd8a5d267535f58ab79992256ef10031ceb`;
+- endpoint: `experiments/rain_ep_bias_train.py`;
+- network protocol: `comparative32`;
+- FashionMNIST with the author's 32x32 augmentation;
+- author ConvHopfieldEnergy32 architecture, gains and per-layer rates;
+- beta 0.25, 15 training relaxation iterations, 60 inference iterations;
+- batch size 100 and 100-epoch cosine schedule.
+
+## S0 development screen
+
+S0 uses only a fixed training/holdout split with 10,000 training and 2,000
+holdout examples. One epoch selects a non-catastrophic offset magnitude from
+the frozen grid `0.003, 0.01, 0.03, 0.1`. The same wave includes clean PEP,
+random-sign beta, centered EP, and one SDIL arm. S0 is development evidence
+and is never reported as a final result.
+
+## Confirmation matrix
+
+After S0 freezes one offset magnitude, the full author horizon compares:
+
+| EP estimator | no offset | raw offset | constant calibration | SDIL |
+|---|---:|---:|---:|---:|
+| positive beta | yes | yes | yes | yes |
+| random beta sign | yes | yes | no | no |
+| centered EP | yes | yes | no | no |
+
+An oracle subtraction arm checks implementation correctness. A large-beta
+EP sweep is reported as a strong-clamp proxy but is not called overclamping:
+Dillavou overclamping also changes the output force and update duration, so a
+beta sweep alone is not the published method.
+
+The exact constant model establishes the hardware failure and the limit of
+beta centering. It cannot establish an advantage over ordinary local offset
+calibration. Any claimed SDIL advantage requires a separately labeled
+state-dependent extension or real measured device drift.