| Age | Commit message (Collapse) | Author |
|
artifacts
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
|
Per codex consultation, refactored §1-§7 from "section + paragraph
headers" into proper \subsection{} hierarchy. 14 subsections total.
Key decisions (from codex):
- §3 (Mode 1) and §4 (Mode 2) kept SEPARATE, not merged. Avoids
overcommitting to the Mode 2 → Mode 1 hypothesis too early in the
narrative.
- §5 (Intervention + Cross-arch) kept as one section with two subsections.
Splitting would create thin sections.
- Moved old §4 ¶4 "Method-dependent severity..." into new §5.1 "Penalty
rescue and sweep" — it's intervention-stage evidence about method
severity after Mode 1 is alleviated, fits with rescue/sweep/cost
evidence rather than core Mode 2 identification.
New structure:
§1 Introduction
1.1 Standard FA reporting
1.2 Two failure modes and contributions
§2 Audit: Standard Reporting Walks Back Nothing
2.1 Audit setup and probes
2.2 The status-quo reading fails
§3 Failure Mode 1: Measurement Degeneracy
3.1 Mode 1 signatures
3.2 Terminal-LN control
§4 Failure Mode 2: Low Intrinsic Credit-Direction Quality
4.1 Mode 2 under valid measurement
4.2 Functional triangulation [paper's strongest new claim]
4.3 From Mode 2 to Mode 1? [the causal hypothesis]
§5 Intervention and Cross-Architecture Evidence
5.1 Penalty rescue and sweep [absorbed old §4 ¶4]
5.2 Cost and transfer
§6 Recommended FA Evaluation Protocol
6.1 Validity-first screening
6.2 Diagnostic roles and calibration
§7 Discussion, Limits, Conclusion
7.1 Scope and reporting recommendation
7.2 Open questions
All \paragraph{} inline bold headers from §1-§7 were stripped since the
\subsection{} hierarchy now carries the structure. Appendix A and B
(Pitfalls Catalog) retain their \paragraph{} headers since they're
structured by pitfall/concept rather than subsection.
Page count: 20 (unchanged). 0 errors, 0 overfull boxes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User picked option B: convert all 3-seed std values across the paper
from ddof=0 (population) to ddof=1 (Bessel-corrected sample std).
Bessel correction for n=3: ddof=1 std is √(3/2) ≈ 1.22× larger than
ddof=0. About 22% inflation per value.
49 ± value replacements across §1, §2, §4, §5, Tables 1+2+9, Appendix
H, Appendix L, and intermediate prose. Major updates:
Table 1 (5-method audit accuracies):
BP 0.615 ± 0.003 → 0.615 ± 0.004
EP 0.316 ± 0.030 → 0.316 ± 0.037
DFA 0.306 ± 0.006 → 0.306 ± 0.008
SB 0.205 ± 0.032 → 0.205 ± 0.039
CB 0.289 ± 0.026 → 0.289 ± 0.031
Frozen baseline:
0.349 ± 0.002 → 0.349 ± 0.003 (4 occurrences)
§5 matched 30-ep controls:
BP no-pen 0.585 ± 0.001 (already 0.001, ddof=1 = 0.0009 stays)
BP+pen 0.532 ± 0.006 → 0.532 ± 0.007
DFA no-pen 0.301 ± 0.005 → 0.301 ± 0.006
DFA+pen 0.360 ± 0.001 → 0.360 ± 0.002
SB+pen 0.453 ± 0.003 stays (0.0030 → 0.003)
CB+pen 0.360 ± 0.003 → 0.360 ± 0.004
§4 ¶4 cosines:
SB+pen cos +0.322 ± 0.007 → +0.322 ± 0.008
CB+pen cos +0.679 ± 0.008 → +0.679 ± 0.010
DFA+pen cos +0.151 ± 0.025 stays (pooled n=12 ddof=1=0.0247)
§4 ¶4 perturbation rho:
SB+pen rho +0.402 ± 0.015 → +0.402 ± 0.019
CB+pen rho +0.464 ± 0.025 → +0.464 ± 0.030
DFA+pen rho +0.080 ± 0.011 → +0.080 ± 0.012
§4 ¶4 nudging test:
SB -1.93 ± 0.11×10^-3 → -1.93 ± 0.14×10^-3
CB -4.26 ± 0.24×10^-4 → -4.26 ± 0.29×10^-4
DFA -4.98 ± 0.44×10^-5 → -4.98 ± 0.53×10^-5
§4 ¶4 training loss decrease:
SB -0.447 ± 0.008 → -0.447 ± 0.010
CB -0.121 ± 0.003 stays
DFA -0.095 ± 0.007 → -0.095 ± 0.008
§4 ¶1 vanilla DFA early-epoch deep cos / rho:
-0.008 ± 0.013 → -0.008 ± 0.016
-0.018 ± 0.018 → -0.018 ± 0.017
-0.003 ± 0.005 → -0.003 ± 0.004
Appendix H L=4 d=512 3-seed:
DFA layer-0 +0.412 ± 0.011 → +0.412 ± 0.013
DFA deep -0.0004 ± 0.0008 → -0.0004 ± 0.0009
CB deep +0.039 ± 0.010 → +0.039 ± 0.012
Appendix J Table 9 std rows updated to ddof=1 means.
Appendix L drift values:
DFA+pen w2 18.6 ± 0.5 → 18.6 ± 0.6
DFA+pen embed 94.6 ± 1.4 → 94.6 ± 1.8
(others unchanged within rounding)
The §3 ¶3 no-outln value 0.327 ± 0.012 was already ddof=1 (was the
single inconsistent place that motivated this sweep). Now the entire
paper uses ddof=1 consistently.
All means and per-seed values are unchanged (only the std reported
changes). Headline science conclusions all unchanged. Page count
20 (unchanged).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Appendix A (Reference Implementation) was the only main section
without \paragraph{} headers. Added two:
- Release scope (existing ¶1: what the release contains)
- Repository organization (existing ¶2: how the code is structured)
Now every multi-paragraph section in the paper has explicit paragraph
headers for skim-readability. Other appendices either are single-paragraph
already (so don't need headers) or have explicit \paragraph{Pitfall N:}
structure (Appendix B).
Page count: 20 (unchanged).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The v2.37 §7 ¶2 said "the protocol code in Appendix A is structured
to make these extensions a configuration change rather than a new
experimental design." On re-reading Appendix A, this overclaims —
Appendix A describes the reference implementation as organized around
4 claim types but doesn't explicitly say "extensions are configuration
changes". The "configuration change rather than new experimental
design" framing is aspirational, not verified.
Softened to: "The reference implementation in Appendix A is intended
to support such extensions at the level of training-recipe and
architecture-class configuration so the audit pipeline itself does
not need to be re-derived."
Now the §7 forward-looking claim only commits to what Appendix A
actually describes (claim-organized, four artifact types) plus a
modest "intended to support" caveat.
Page count: 20 (unchanged).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Earlier (during the page-budget-constrained polish loop) I tried to add
the nudging-test mention to the abstract but had to revert because it
pushed §7 onto p10. With page budget relaxed, re-attempting the update.
Old abstract sentence about Mode 2 dissociation:
"...while Credit Bridge attains much higher deep BP cosine than DFA
at the same final accuracy, a dissociation that motivates reporting
layerwise credit quality jointly with a depth-utilization baseline."
New abstract sentence:
"...while Credit Bridge attains roughly 4× DFA's deep BP cosine yet
matches DFA's accuracy—a dissociation that single-step nudging and
integrated training-loss decrease both confirm against the reverse
cosine ordering, and that motivates reporting layerwise credit quality
jointly with a depth-utilization baseline."
This now references the v2.33 functional triangulation in the abstract,
matching the §4 main-text framing. A reader of just the abstract now
sees the strongest form of the cos-vs-acc dissociation: it's not just
"CB has higher cos but same acc" (which could be a noisy single
measurement) but "three independent functional metrics rank the
methods opposite to deep cosine".
Page count: 20 (unchanged).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
§7 currently has only the Scope/limits/recommendation paragraph.
Adding a second paragraph that explicitly flags the Mode 2 → Mode 1
hypothesis status as an open question and proposes two concrete
falsification tests, plus a wider-scope replication path.
The new paragraph:
1. Acknowledges the Mode 2 → Mode 1 causal reading is a hypothesis,
not a theorem, and that the parallel-failure reading is also
formally consistent with the data.
2. Proposes a *direct* test: measure per-block forward-state-change
content along the training trajectory and check whether per-block
loss decrease tracks per-block credit usefulness more tightly than
per-block cosine.
3. Proposes a *falsification* test for the downstream-of-Mode-2 reading:
substitute the random B_l with a high-quality credit signal (sparse,
learned, or weight-transport-restored à la Akrout 2019) at fixed
‖f_l‖ and check whether Mode 1 activation growth still appears. If
yes, Mode 1 is NOT downstream of Mode 2.
4. Notes the wider-scope replication path: CIFAR-100, Tiny-ImageNet,
architectures outside ResMLP/ViT-Mini, with a pointer to Appendix A
as the structured configuration entry point.
This explicitly answers the reviewer question "what would falsify
your hypothesis?" without overclaiming. It positions the paper as
honest about open questions and points at concrete next steps.
Page count: 20 (unchanged) — the paragraph fit within the existing
slack.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
v2.36 added paragraph headers to §3-§6. Extending the same treatment
to §1, §2, and §7 for consistent skim-readability across the whole
main content.
§1 (Introduction):
- Feedback alignment and the standard reporting pair
- The standard pair fails to validate
- Two failure modes and their separability
- Contribution: a methodology paper, not a new FA variant
§2 (Audit):
- Setup: 5-method audit on a 4-block pre-LayerNorm ResMLP
- State Bridge and Credit Bridge: diagnostic probes constructed for this paper
- Status-quo reading: every method looks acceptable
- EP as the internal control: low accuracy without invalid measurement
- Frozen-blocks baseline overturns the status-quo reading
§7 (Discussion):
- Scope, limits, and reporting recommendation
All §1-§7 main content paragraphs now have inline bold headers
naming what each paragraph argues for.
Page count: 20 (unchanged from v2.36) — paragraph headers don't take
much extra space, and the layout already had ~1 line of slack.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User feedback: "你能不能分点subsection甚至subsubsection?或者至少paragraph。
现在读起来很不顺畅,因为看起来太大块了"
The recent v2.34-v2.35 expansions made several §4 paragraphs very long
and dense. The user asked for visible structure (subsection /
subsubsection / at least paragraph headers).
Added \paragraph{} bold inline headers throughout §3-§6:
§3 (Mode 1):
- The two parts of Mode 1
- Falsification chain: four alternative attributions
- Causal control: removing terminal LayerNorm on the same backbone
§4 (Mode 2):
- Mode 2 is present even when measurement is meaningful
- A second metric with different failure modes agrees
- Per-layer reporting is mandatory: layer-0 dominance
- Method-dependent severity once Mode 1 is alleviated
- Three functional metrics rank the methods consistently; cosine disagrees
- A three-part proposition: observation, inference, mechanism hypothesis
- Mode 1 may be a downstream symptom of Mode 2
- Hypothesis status and reporting rule
§5 (Intervention):
- The penalty rescues the measurement regime
- Penalty alleviates Mode 2 only partially; the λ sweep separates the modes
- Capacity-cost control: BP under the same penalty
- Cross-architecture and depth-sweep evidence
§6 (Protocol):
- Start from measurement validity
- Decision value: which diagnostics actually walk back which methods
- Diagnostic roles and calibration
Each paragraph now has a bold inline header that names what it argues
for, so a reader skimming the §3-§6 mainline can navigate by header
rather than parsing dense prose blocks.
Used \paragraph{} (not \subsection{}) because:
1. \subsection{} would renumber the TOC and add another level of
heading depth
2. \paragraph{} is the standard LaTeX inline-bold header that's
visually distinct without breaking the section structure
3. Doesn't affect the figure/table numbering
Page impact: total pages 19 → 20 (paragraph headers add ~1 line per
header). Per the user's relaxed page budget, this is acceptable. §7
still starts on p10, references on p10-12.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User said "you don't need to worry about page count for now", which
freed up the page budget for substantive additions. Highest-yield
substantive addition: a visual figure for the §4 ¶4 cross-method
dissociation that the user previously flagged as the paper's
strongest new observation but is currently text-only.
New figure: paper/figures/fig_cos_acc_dissociation.pdf
- Parallel-coordinates / slope-chart style
- 4 columns: deep cos | accuracy | |nudging| | training-loss decrease
- 3 lines: SB+pen (blue), CB+pen (red), DFA+pen (gray)
- Each metric normalized to [0, 1] with raw values annotated
- Shaded "cos: CB top" region on the left vs labeled
"accuracy / nudging / training-loss: SB top" on the right
- The X-pattern between cos and accuracy makes the dissociation
visually immediate: SB rises from middle (cos) to top (functional),
CB falls from top (cos) to tied with DFA (functional)
Inserted between §4 ¶4 (Mode 2 mechanism) and §5 (intervention).
Referenced from the §4 ¶4 functional measurements paragraph as
"Figure 2".
Why this figure replaces the prose-only argument's burden of proof:
the X-pattern visualization is a single glance vs paragraph parsing.
Reviewers will see "deep cosine ranks differently from 3 functional
metrics" without needing to track the numbers.
Important design choice: did NOT include deep ρ in the figure, even
though it's in §4 ¶2, because ρ ranks CB > SB > DFA (same as cos),
not the SB > CB > DFA pattern of the functional metrics. ρ groups
with cos as a "directional alignment" metric, while the functional
triad (accuracy, nudging, training-loss) groups around forward-state
usefulness. The figure caption notes this distinction implicitly
by listing only the three functional metrics.
Page impact: total 18 → 19 pages, main content §1-§7 now spans
p1-p10 (was p1-p9). Per user's relaxed constraint, page count is no
longer the binding constraint. Figure auto-shifts the figure
numbering: cos_acc_dissoc is now Figure 2, temporal_cross_arch
becomes Figure 3, penalty_rescue → Figure 4, cross_arch_summary
→ Figure 5. All figure references use \\ref{} so they auto-update.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User flagged Figure 4 issues. Found three problems:
1. **Row 4 (no-terminal-LN ResMLP) (d) frozen** was encoded as 0 (passes)
but the actual data is no-outln DFA acc 0.327 ± 0.012 (3-seed) vs
frozen baseline 0.349 ± 0.002 → margin -2.2 pp, beyond the 2 pp
threshold → (d) FIRES. Updated to 1 (WB).
2. **Row 5 (CNN BN) cells (c) and (d)** were encoded as 0 (passes) but
the CNN audit (results/protocol_audit/audit_cnn_3seed.json) only
measured (a) and (b); there is no CNN frozen baseline and no CNN
stability run. Showing them as ✓ was misleading. Added a third color
(gray, "—") for "not measured" and marked CNN (c)+(d) accordingly.
3. **Layout** had massive empty vertical space below the panels with
the key-finding text floating far below. Compressed:
- figsize (11, 4.2) → (11, 3.2) [tighter aspect ratio]
- Key-finding text moved from axes-coordinates y=-1.55 (way below
plot) to figure-coordinates y=-0.05 (directly under panels)
- BP panel title clarified: "BP-trained: protocol passes" →
"BP-trained: protocol passes everywhere"
Also marked ViT-Mini (c) and no-LN ResMLP (c) as "not measured" since
neither has a saved cross_batch_stability value (the audit_cnn,
audit_d512, snapshot_vit_v1, and snapshot_no_outln_v1 files don't
include this diagnostic).
New verdict matrix:
(a) (b) (c) (d)
ResMLP-d256 LN WB WB ✓ WB
ResMLP-d512 LN WB WB ✓ WB
ViT-Mini WB WB — WB
ResMLP-d256 no-LN WB ✓ — WB ← row 4 (d) was wrong
CNN BN WB ✓ — — ← row 5 (c)+(d) were misleading
Key finding "(b) only fires on terminal-LN architectures" is unchanged
and now visually clearer (rows 1-3 have WB in (b), rows 4-5 have ✓).
Page impact: total page count 19 → 18 (the more compact figure
reclaimed an entire page). §1-§7 main content still fits on 9 pages.
Updated docstring with full data sources for each row.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
v2.31.1 corrected the §4 ¶4 / §6 deep cos for penalized DFA from
+0.155 to +0.151 (actual 3-seed mean from re-measurement on
results/dfa_pen_short/dfa_pen_lam0.01_s{42,123,456}.pt). The §1 ¶3
intro mention of "about +0.16" was a stale rounding from the old
+0.155 value. Updated to "about +0.15" to match the corrected
value (0.151 rounds to 0.15, not 0.16).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Tried to add nudging-test mention to abstract but the added words
caused §7 to spill onto p10. Reverted the abstract change. PDF binary
metadata changed during the recompile cycles but content is identical
to v2.34.1.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Same bug pattern as v2.33's nudging test: the §4 ¶4 training loss
decrease values for SB+pen (-0.458) and CB+pen (-0.122) were s42
single-seed numbers labeled as part of the "three seeds" framing.
DFA+pen (-0.095 ± 0.007) was actually 3-seed.
Re-aggregated from existing JSONs (no new compute):
SB+pen: per-seed {0.457, 0.444, 0.439} → 0.447 ± 0.008 (was 0.458)
CB+pen: per-seed {0.123, 0.118, 0.124} → 0.121 ± 0.003 (was 0.122)
DFA+pen: per-seed {0.104, 0.088, 0.093} → 0.095 ± 0.007 ✓ (unchanged)
Changes:
- §4 ¶4 training-loss trajectory line now uses 3-seed mean ± std for
all three methods
- Appendix L paragraph now lists per-seed decreases for all three
- New auditable file: results/training_loss_decrease_3seed.json
Ratios SB ≫ CB ≈ DFA unchanged. The "all three functional metrics
agree on the SB ≫ CB ≈ DFA ordering" claim is unchanged.
Page layout: §1-§7 still 9 pages, refs p10, total 19 pages. 0 overfull.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User flagged that Mode 1 may itself be a downstream consequence of Mode 2
(rather than a parallel failure mode), and asked for this to be added to
the §4 mechanism hypothesis.
The causal chain:
1. Local credit signal a_l has poor functional usefulness (Mode 2)
2. Optimizer cannot drive useful per-block forward-state change
3. The only easy way to increase <f_l, a_l> is to inflate ‖f_l‖ along
the cheap random direction set by a_l (Mode 1(a) growth)
4. Inflated residual stream → terminal LN gradient cancellation
(Mode 1(b) collapse)
5. Per-block penalty caps ‖f_l‖, breaking the chain at step 3 without
fixing the underlying credit quality
→ Explains why penalty alleviates Mode 1 fully but Mode 2 only partially
This is more parsimonious than "two parallel failure modes" and is
consistent with the observed asymmetry that the penalty rescues Mode 1
without fully fixing Mode 2 (deep cos +0.151 vs BP's ≈1.0).
§4 ¶4 mechanism hypothesis section now contains:
- Original CB/SB descriptions (gradient-direction surrogate vs state-level
teaching signal)
- NEW: Mode 2 → Mode 1 downstream-symptom hypothesis with the explicit
causal chain
- Hypothesis caveat (we have measured angle-to-accuracy + functional
proxies but not full forward-state-change content)
Page-budget compensation:
- §4 ¶4 setup recital compressed (combined SB/CB/DFA into one sentence)
- §4 ¶4 functional measurements paragraph compressed (used \emph{Nudging:}
/ \emph{Training-loss trajectory:} structure)
- §7 ¶1 closing compressed (merged the redundant no-terminal-LN ablation
+ BatchNorm CNN sentences)
Page layout: §1-§7 still 9 pages exactly (§7 ends p9 line 358, refs p10
line 359). Total 19 pages (was 18) — one extra appendix page from the
v2.33 per-seed nudging values, unchanged here. 9-page main content
budget preserved.
This responds to user message: "主要逻辑风险是 Mode 1 可能是 Mode 2 的
下游后果(而非并列失败模式)... 建议优先处理:把 nudging test 提到主文、
把 Mode 2→Mode 1 因果链作为 mechanism hypothesis"
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User flagged that the cos-vs-accuracy cross-method dissociation is the
paper's strongest new observation and the nudging-test functional
triangulation should be in §4 main text, not buried in Appendix L.
Also flagged that Appendix L's "three seeds each" claim was correct in
*labeling* but the cited values (-1.78e-3, -0.45e-3, -5e-5) were s42
single-seed.
Re-aggregating from existing per-seed JSONs (no new compute needed):
results/round38_sbcb_penalty_30ep/results_cifar10.json (s42)
results/round38_{sb,cb}_penalty_30ep_s{123,456}/results_cifar10.json
results/round41_dfa_penalty_30ep{,_s{123,456}}/results_cifar10.json
3-seed deep-block nudging means (eta=0.01):
SB+pen: -1.93 ± 0.11 × 10^-3 (was -1.78 single)
CB+pen: -4.26 ± 0.24 × 10^-4 (was -0.45 single)
DFA+pen: -4.98 ± 0.44 × 10^-5 (was -5 single)
Ratios (essentially unchanged):
SB / CB: 4.5× (was ~4×)
SB / DFA: 39× (was ~35×)
Changes:
- §4 ¶4 NEW prose block: promotes the nudging test + training-loss
decrease as two independent functional measurements that confirm the
ordering SB ≫ CB ≈ DFA. Three functional metrics (accuracy, nudging,
loss-trajectory) all agree; deep cosine is the only one that doesn't.
- §4 ¶4 setup compressed (drops some redundant per-method recital,
references Appendix J for full numerics) to make room.
- Appendix L paragraph: nudging values updated to true 3-seed (with
per-seed values listed), points at saved JSON.
- New auditable file: results/nudging_test_3seed_summary.json.
Page layout: main content still 9 pages exactly (§7 ends p9, refs p10).
Total now 19 pages (was 18) — one extra appendix page from per-seed
nudging values. 9-page main content budget preserved.
This responds to user message: "cos-vs-accuracy 跨方法 dissociation 是
本文最有分量的新观测... nudging 数字应该进 Section 4 而不是埋在附录"
and "nudging test 只有 single seed 42... 三 seed 跑一下几乎零成本"
(turned out to be zero compute — data was already in saved JSONs).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
After v2.30.2 updated §3 ¶1's endpoint ‖g_L‖ to the 3-seed mean
4×10^-10, the math 1e-8/4e-10 = 25, not 20. Updated the "20× below"
approximation to "25× below" for precision.
Verified F.cosine_similarity default eps = 1e-8 by:
>>> torch.nn.functional.cosine_similarity(a, b, dim=-1)
on a vector with norm 1e-15: returned 1e-7 (clamped)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
→ 0.532)
The §5 ¶3 explicit math "0.530 - 0.453 = 7.7 points" was a leftover from
the BP+pen single-seed era. With v2.32's BP+pen 3-seed value 0.532, the
math becomes 0.532 - 0.453 = 0.079 = 7.9 points.
Updated to "0.532 - 0.453 = 7.9 points". This is the last cascade fix
from the BP+pen multi-seed promotion.
The qualitative point ("BP-to-SB gap is substantially smaller than the
BP-to-DFA gap of 17.2 pp, so cross-method differences are not just a
random-feedback ceiling") is unchanged: 7.9 pp << 17.2 pp.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The §5 ¶3 BP+penalty value (0.530, +18.1 pp margin) was single-seed s42.
Ran s123 and s456 to multi-seed it, matching the BP-no-pen 3-seed control.
3-seed BP+pen 30ep results (lam=0.01, AdamW lr=1e-3 wd=0.01, cosine, batch 128):
s42: 0.5303, +18.13 pp vs frozen
s123: 0.5262, +17.72 pp
s456: 0.5397, +19.07 pp
3-seed mean: 0.5321 ± 0.0057, +18.31 pp
Updates:
- §5 ¶3: BP+pen "0.530 (single seed)" → "0.532 ± 0.006" (3-seed)
- §5 ¶3: BP penalty cost -5.5 pp → -5.3 pp
- §5 ¶3: BP+pen margin +18.1 → +18.3 pp
- §5 ¶3: BP-to-DFA gap 17.0 → 17.2 pp
- §4 ¶4: BP+pen +18.1 → +18.3 pp comparison
- Figure 3 panel C bar values: BP with_pen 0.530 → 0.532
- Figure 3 panel C title: BP-pen-cost -5.5pp → -5.3pp
The +18.3 pp 3-seed mean is essentially the same as the s42 single-seed
+18.13 pp, so the headline conclusion (BP+pen far above frozen baseline,
huge gap vs DFA+pen) is unchanged. This commit removes the last
single-seed value labeled as a key control.
New auditable file: results/bp_with_penalty_3seed_summary.json
Page layout preserved: 9 pages main, refs p10, 0 overfull boxes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Original §3 ¶1: "reducing a local loss of the form -<f_l, a_l>"
= minimizing -<f, a>
= maximizing <f, a>
= "alignment with credit target is rewarded" (matches prose)
But "reducing a local loss of the form -X" reads awkwardly because the
"-" sign in front of an inner product looks like a typo or extra
negative. Replaced with the equivalent positive form:
"maximizing a local objective of the form <f_l(h_l), a_l>"
This is mathematically equivalent (both give optimizer direction
∇W in the direction that increases <f, a>) but reads more cleanly.
The §3 ¶1 prose "any direction in which a larger block output
improves inner-product alignment with the method's fixed or learned
credit target is rewarded" now matches the formula directly:
maximizing <f, a> = rewarding alignment.
This relies on the convention e_T = one_hot - softmax (paper a_l is the
negative of the script's a_dfa). The script's positive-sign minimization
of local_loss = (f * a_dfa).sum() is the same operation under that
convention. If the convention is unfamiliar to a reader, the actual
direction (toward larger inner product with a fixed random direction)
is unambiguously stated by the prose.
Page layout preserved: 9 pages main, refs p10, 0 overfull boxes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The §3 ¶1 sign-convention rewrite was reverted because it caused §7
to spill onto p10. The PDF binary metadata changed during the
recompile cycles but content is identical to v2.31.13.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The (c) calibration ranges "0.05-0.18 healthy, 0.5-0.99 drift-dominated"
overstated the separation. Re-aggregated from
results/protocol_audit/audit_table_s42_s123_s456.json:
Healthy (BP+EP) 6 values: [-0.036, -0.024, 0.087, 0.099, 0.114, 0.120]
range = [-0.036, 0.120], median 0.093
(NOT "0.05 to 0.18" — has negative values, max < 0.18)
Degen (DFA+SB+CB) 9 values: [-0.005, 0.035, 0.047, 0.250, 0.352,
0.436, 0.518, 0.561, 0.992]
range = [-0.005, 0.992], median 0.352
(only 5/9 above 0.30, only 3/9 above 0.50)
The (c) discriminator has substantial overlap between healthy and degen
distributions on this metric — the paper already calls (c) a "sub-mode
discriminator" not a binary detector, so the loose calibration is
acknowledged in framing but the numerical ranges should match the data.
Updated to: "healthy methods cluster near zero with all six BP/EP
values in [-0.04, +0.12], while drift-dominated cases reach high tails
up to +0.99, and 5/9 degenerate values exceed the 0.30 default cutoff".
This is more honest and points at the audit JSON.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Two abstract/intro values were inconsistent with the §3 ¶1 3-seed mean
that v2.30.2 corrected:
§1 ¶2 said "deepest BP reference norm is only about 5×10^-10 for DFA,
SB, CB" — the 5×10^-10 was DFA s42 single-seed, and the SB/CB values
are actually a few ×10^-9 (from audit_table). Updated to clarify
"~4×10^-10 for DFA (three-seed mean) and a few ×10^-9 for SB and CB".
§1 ¶3 said "‖g_L‖ ~ 5×10^-10" for DFA. Updated to "~4×10^-10 for DFA
(three-seed mean)" matching §3 ¶1.
§5 ¶1's "‖g_L‖ ~ 5×10^-10" stays as-is because that paragraph
explicitly references the s42 trajectory shown in Figure 3 (with
"‖h_L‖ ~ 4.4×10^8" also being s42-specific).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
After v2.31.11 the paper/main.pdf binary metadata changed but content
is identical (500867 bytes either way). Re-staging to keep the working
tree clean.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
§3 ¶3 said d=512 has "even larger max-per-block growth (about 1.5×10^4)"
without a clear source for 1.5e4. The actual DFA-d=512 max-per-block
growth from results/protocol_audit/audit_d512_3seed.json:
s42: 7788, s123: 6397, s456: 7689 → 3-seed mean ~7292 (≈7e3)
Updated to "DFA three-seed mean about 7×10^3 vs ~1.9×10^3 at d=256".
The "even larger" claim still holds (4× larger), and now the comparison
to d=256 is explicit and sourced.
Both d=256 and d=512 values now point to the same protocol_audit JSONs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Appendix L claimed "per-block w2 relative displacement after 30 epochs
averages 14.3× for SB+penalty, 18.6×±0.5 for DFA+penalty, and 19.3×
for CB+penalty (three seeds each)" but the SB and CB values were
actually s42 single-seed values (14.32 and 19.27) labeled as if they
were 3-seed averages. DFA was correctly 3-seed.
Re-aggregating from results/round38_{sb,cb}_penalty_30ep_s{42,123,456}/
results_cifar10.json drift fields:
SB+pen w2: 14.32, 15.30, 14.68 → 14.77 ± 0.50 (was 14.3)
CB+pen w2: 19.27, 19.63, 18.53 → 19.14 ± 0.56 (was 19.3)
SB+pen embed: 7.10, 6.87, 6.88 → 6.95 ± 0.13 (was 7.1)
CB+pen embed: 44.57, 47.27, 47.18 → 46.34 ± 1.53 (was 44.6)
DFA+pen w2: 18.6 ± 0.5 ✓ (correct)
DFA+pen embed: 94.6 ± 1.4 ✓ (correct)
The mechanism conclusion is unchanged: CB's per-block drift is still
~30% larger than SB's, embed drift is still ~7× larger; DFA still has
the largest embed updates of any method. CB and DFA still ≈9.3 pp
below State Bridge in final accuracy.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The §3 ¶3 / §5 ¶3 / Figure 5 / §7 mentions of "StudentNet" as a
cross-architecture validation case were a misleading rebrand of the
no-terminal-LN ResMLP-d256 ablation. Verified by tracing the data:
results/protocol_audit/temporal_evolution_s{42,123,456}.json
final_acc 0.332/0.313/0.336 (matches no-outln 3-seed 0.327±0.012)
first_fire_a {18, 14, 25}
first_fire_b None / None / None
The actual synth StudentNet (results/snapshot_synth_v1, d=128 alpha=1.0)
has max-per-block growth ~6.88 over 80 epochs and never reaches the
50× threshold, so diagnostic (a) does NOT fire on the real synth
StudentNet at all. Calling the no-outln data "StudentNet" doubled-
counted the same architecture under two names (the same-backbone
causal control AND the cross-arch generalization test).
Relabeled to "no-terminal-LN ResMLP" everywhere it appeared:
- §3 ¶3 paragraph 1 cross-arch list
- §3 ¶3 paragraph 2 (now with explicit per-seed first-fire epochs {18,14,25})
- §5 paragraph (the conclusion)
- §7 conclusion (cross-arch list)
- Figure 5 caption
- Figure 5 row label (with re-rendered PDF)
The remaining cross-arch generalization claim is now: ViT-Mini fires
both diagnostics, ResMLP at d=256/d=512 fires both, no-terminal-LN
ResMLP and BatchNorm CNN fire only (a) — three real architecture
classes, with the no-LN ablation being the same-backbone control rather
than a separate architecture. The cross-arch story is slightly weaker
("3 architecture classes" not "4") but truthful and self-consistent.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Appendix I claimed EP random-target ‖h_L‖ "≈586 at 5 ep" and "≈2,085
at 100 ep" without a saved-JSON source. Re-measured on the saved
checkpoints with consistent methodology (model.eval(), n=2048 test
median), giving 557 (5 ep) and 2151 (100 ep). The ~5% discrepancy
is likely model.train() vs model.eval() LN-batch-stats; the new
values are reproducible.
Saved results/ep_random_h_L_summary.json as the source of truth.
The "26× smaller than DFA's 14,510 at 3 ep" comparison still holds
(was "25×"; updated to "26×" with the new EP values).
The fixed-feedback vs energy-based separation conclusion is unchanged.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Make Appendix H consistent with §3 ¶1 (which v2.30.2 already updated
to 3-seed means): vanilla residual DFA's endpoint ‖h_L‖ ≈ 5×10^8 and
‖g_L‖ ≈ 4×10^-10 (three-seed mean), not the s42 single-seed values.
The s42 numbers are 4.39e8 and 4.86e-10, which were rounded as
"≈4e8" and "≈5e-10" in the appendix. The 3-seed means are
5.18e8 and 3.76e-10, which round to "≈5e8" and "≈4e-10".
Now §3 ¶1 (3-seed) and Appendix H (3-seed) report consistently.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
§3 ¶2 said "DFA still converges to ‖h_L‖≈1.06×10^8 and ‖g_L‖≈1.09×10^-10
at 100 epochs (Appendix H)". These were the s42 single-seed values
silently used as if they were generic, even though Appendix H gives
the full per-seed list {1.06e8, 3.15e7, 1.09e8}.
3-seed means from results/h2_no_residual_full_s{42,123,456}/snapshot_evolution_s*.json:
‖h_L‖ per seed: 1.06e8, 3.15e7, 1.09e8 → mean 8.21e7 (was 1.06e8)
‖g_L‖ per seed: 1.08e-10, 2.94e-10, 1.76e-10 → mean 1.93e-10 (was 1.09e-10)
Updated to 8.2e7 and 1.9e-10 with explicit "across three seeds" framing.
Both still well past the diagnostic-(b) floor; falsification conclusion
unchanged.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Paper claimed "‖g_L‖ drops from 9.8×10^-4 at ep 0 to 6.7×10^-8 by ep 4
in the temporal replay across three seeds". The 9.8×10^-4 is the
3-seed mean of g_L at ep 0 (correct). But the 6.7×10^-8 was the
s42 single-seed g_2 value (6.73×10^-8) at ep 4, not g_L and not 3-seed.
The actual 3-seed g_L means from results/snapshot_evolution_v2/:
ep 0: 9.83, 9.74, 9.87 × 10^-4 → mean 9.81 ≈ 9.8e-4 ✓
ep 4: 6.82, 6.37, 4.12 × 10^-8 → mean 5.77 ≈ 5.8e-8 (was 6.7e-8)
Updated to 5.8×10^-8 with the per-seed values shown for transparency.
The "fires within 11 epochs" actionable-early-stop conclusion is
unchanged — all three seeds are well below the 1e-7 floor by ep 4.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Re-aggregating from results/protocol_audit/audit_table_s42_s123_s456.json:
EP per-block max growth ratios per seed are 2.87, 10.96, 6.10 → 3-seed
mean 6.64. Single-seed max is 10.96 ≈ 11.0, not 11.6. The 11.6× value
in the prose was untraceable to any seed or aggregation; replaced with
"three-seed mean max-per-block growth is only 6.6× (highest single-seed
value 11.0×)" so both the average and the worst-seed are sourced.
This keeps EP cleanly under the §6 ¶1 "below about 11×" threshold for
healthy methods (max single-seed is 11.0, comfortably below the 50×
diagnostic-(a) threshold), preserving the EP-as-internal-control story.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The paper claimed DFA/SB/CB had max-per-block growth of "237×, 12000×,
96×" on the 4-block d=256 ResMLP. Re-aggregating from the protocol audit
JSON (results/protocol_audit/audit_table_s42_s123_s456.json) gives:
DFA d=256: max growth 2043, 979, 2545 → 3-seed mean ~1856 (≈1.9e3)
SB d=256: max growth 12781, 24126, 10467 → mean ~15791 (≈1.6e4)
CB d=256: max growth 1820, 695, 1034 → mean ~1183 (≈1.2e3)
The paper's "237" and "96" actually match the BatchNorm CNN audit
(audit_cnn_3seed.json gives DFA 214/235/263 → mean 237 and CB 108/90/91
→ mean 96), not the d=256 ResMLP. SB "12000" was close to ResMLP s42
single-seed (12781) but the other two values were apparently picked
from the wrong architecture. This was an architecture mix-up that
under-reported the d=256 ResMLP per-block growth by ~8x for DFA and
~12x for CB.
Updated to the actual 3-seed mean values from the matched d=256 audit.
The numbers are now an order of magnitude larger and more clearly
"extreme" than the original mistaken values.
The CNN per-block growth claim of "up to 237×" in §5 ¶3 (which says
"the BatchNorm CNN ... shows strong growth under DFA, with max-per-
block growth up to 237×") is correct — that 237 is the right value
for the CNN context.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Per Table 5, DFA layer-0 cos at d=512 across L ∈ {2,4,6,8,12} is
[+0.396, +0.400, +0.387, +0.377, +0.388]. The L=8 value of +0.377
falls below the +0.39 lower bound the prose was claiming. Updated
both occurrences (§5 ¶3 main text and Appendix H paragraph) to the
true range [+0.38, +0.40].
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The paper had 3-seed penalized DFA deep cos at +0.155 ± 0.025, but
re-measuring on the saved checkpoints gives 0.1506 (mean of per-seed
deep means is 0.1507; pooled mean over 12 deep-layer values is 0.1506).
The std of 0.025 matches pooled ddof=1 ✓.
Same paragraph also had inconsistent values: "+0.155 ± 0.025" 3-seed
above, then "+0.165" single-seed s42 in the lambda sweep. Unified to
3-seed throughout.
§5 ¶2 lambda sweep updates:
lam=1e-4 ||h_L|| 2.4e4 (s42 only) → 2.2e4 (3-seed mean)
lam=1e-4 ||g_L|| 6.3e-7 (s42) → 7.0e-7 (3-seed)
lam=1e-4 deep cos -0.022 (s42) → -0.020 (3-seed)
lam=1e-2 deep cos +0.165 (s42) → +0.151 (3-seed, same as the
three-seed value used elsewhere)
Other places updated: §4 ¶4 prose, Table 2, Appendix J Table 9
DFA+pen mean row (deep cos +0.155 → +0.151 and ||h_L||/||g_L||
columns updated to 30-ep dfa_pen_short means rather than the round-19
single-seed numbers), Appendix L paragraph.
Page layout preserved: 9 main pages, refs p10, 18 total, 0 overfull.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
The §5 ¶3 BP-no-penalty value of 0.609 ± 0.004 and DFA-no-penalty value
of 0.308 ± 0.014 turned out to be unsourced — they were carried over
from a hardcoded comment in experiments/bp_with_penalty_control.py
("BP-trainable (3-seed mean): 0.609") that nobody had actually measured
with a matched 30-epoch run.
Ran the missing matched controls under the same recipe as BP+pen
(lam=0, 30 epochs, AdamW 1e-3, wd 0.01, cosine schedule, batch 128,
3 seeds 42/123/456):
BP no-pen 30ep: per-seed 0.5851, 0.5845, 0.5863 → 0.585 ± 0.001
(paper said 0.609 ± 0.004, off by 0.024)
DFA no-pen 30ep: per-seed 0.3070, 0.2985, 0.2966 → 0.301 ± 0.005
(paper said 0.308 ± 0.014)
Also re-grounded DFA+penalty 30ep using the dfa_pen_short 3-seed run
(0.3593, 0.3610, 0.3604 → 0.360 ± 0.001), which is what the deep-cosine
+0.155 figure was computed on. The paper had 0.363 ± 0.001 — that came
from the 100-epoch run, not the 30-epoch run, so it was an apples-to-
oranges comparison with BP+pen 30-ep.
Paper changes (§5 ¶3):
BP penalty cost: -8 pp → -5.5 pp
DFA pen rescue: +5.5 → +5.9 pp
DFA+pen margin vs frozen: +1.4 → +1.1 pp
BP-to-DFA gap: 17 → 17.0 pp (unchanged)
BP-to-SB gap: 7.7 → 7.7 pp (unchanged)
BP-to-DFA gap is still the lower-bound credit-quality cost claim;
17 pp gap is unchanged in magnitude.
Also updated:
- §5 ¶1 prose: 0.363 → 0.360, 0.308 → 0.301
- §4 ¶4 prose: DFA+pen 0.363 → 0.360
- Appendix J Table 9 caption: 0.363 → 0.360, +9.0 → +9.3 pp gap to SB
- Appendix L paragraph: +5.5 → +5.9 pp DFA penalty rescue
- Figure 3 panel C bar values + title pen-cost annotation
- New results/matched_30ep_control_summary.json as auditable record
Page layout preserved: 9 main pages + refs p10, 18 total, 0 overfull.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Paragraph framing says "3 seeds" but the endpoint values were
actually s42-specific. Re-aggregated from
results/snapshot_evolution_v2/snapshot_evolution_s{42,123,456}.json:
||h_L|| final per seed: 4.39e8, 3.86e8, 7.30e8 → mean 5.18e8 (paper now: 5e8, was 4e8)
||g_L|| final per seed: 4.86e-10, 3.76e-10, 2.67e-10 → mean 3.76e-10 (paper now: 4e-10, was 5e-10)
The §5 ¶1 intervention paragraph still says "‖h_L‖ ~4.4e8" — that
one is explicitly the s42 vanilla DFA endpoint that Figure 3 panel (a)
plots, so it stays single-seed. §3 is the 3-seed version.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Fresh re-measurement on the saved early checkpoints
(per_layer_cos_3seed.json) gives ||g_2|| at ep 1:
s42: 6.79e-7 → paper rounds 6.8e-7
s123: 6.57e-7 → paper rounds 6.6e-7
s456: 3.85e-7 → paper rounds 3.8e-7
The previous prose values (6.7, 6.5, 3.9) were carried over from
ad-hoc measurements with inconsistent rounding (3.9 was an error;
3.85 rounds to 3.8). All three values are still well above the
1e-7 diagnostic-(b) threshold, so the §4 ¶1 mode-2-without-mode-1
claim is unchanged.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Found a numerical error in §4 ¶3: the layer-0 vanilla DFA cosines were
listed as +0.42, +0.45, +0.39 across seeds 42/123/456 but the actual
re-measurement on the saved early-epoch checkpoints gives +0.421, +0.436,
+0.418 (the s456 value was off by 0.03). The deep-mean numbers in
Table 2 (-0.008 ± 0.013) were already correct.
Changes:
- §4 ¶3: layer-0 trio updated to +0.42, +0.44, +0.42 across seeds and
cite now points to a new per-seed appendix.
- New Appendix M (Layer-0 Dominance): 6-row table of per-seed per-layer
cosines on vanilla DFA early checkpoints (3 seeds × ep 1, 2), with
per-layer ||g||. Documents the layer-0 dominance pattern that drives
the headline aggregate Γ on these checkpoints.
- results/vanilla_dfa_early_ckpts/per_layer_cos_3seed.json: machine-
readable dump of all 6 measurements for future audit.
- §7 compressed (~30 words trimmed across the closing paragraph) and
Figure 3 width 0.92 → 0.82 to keep main content at exactly 9 pages
after the appendix addition.
Verified: 9 pages main + refs on p10, 18 total, 0 overfull boxes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
§1 ¶1 referenced "equilibrium propagation" without a bibitem despite EP
being the trustworthy non-BP control throughout the paper. Added the
canonical Scellier & Bengio 2017 Frontiers in Computational Neuroscience
reference and cited it where EP is first named in the FA-first intro.
Main content stays at 9 pages (§7 closes mid-p9, refs start p10);
0 overfull boxes; 18 pages total.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
After moving Figure 5 from §6 to Appendix D in v2.23, §6 ¶2 still said
'Figure~\ref{fig:decision_utility} makes the decision value explicit'
which would render as 'Figure 5 makes...' but Figure 5 is now in the
appendix. Reader on p8 looking for Figure 5 nearby would not find it.
Added explicit '(Appendix~\ref{app:all_validations})' parenthetical
right after the figure ref so the reader knows where to look.
Audit of all other figure refs (Figures 1-4 in main text):
- fig:audit_hero (Figure 1, §2) → refs in §1/§2 main text ✓
- fig:temporal_cross_arch (Figure 2, §5) → refs in §3/§5 ✓
- fig:penalty_rescue (Figure 3, §5) → refs in §4/§5/§7 ✓
- fig:cross_arch_summary (Figure 4, §5) → refs in §5/§6 ✓
All clean. Main content still 9 pages.
|
|
formula + threshold pointer + hyperparameter fairness clause
Addressed 4 secondary reviewer concerns from the user's earlier list, all
small inline additions:
1. §3 ¶1 LN Jacobian: extended the 1-line claim into a 2-line derivation.
For y = LN(h) = (h-μ)/σ with σ ∝ ||h||/√d, ||∂y/∂h|| = Θ(1/σ),
so ||g_L|| = Θ(1/||h_L||). Connects the (a) growth and (b) collapse
formally.
2. §4 ¶2 ρ formal definition: added the inline formula
ρ_l = Pearson(<a_l, εv>, ℓ(h_l + εv) - ℓ(h_l)) over M=32 random
unit-norm directions v with ε=1e-3, evaluated per sample on a fixed
eval batch and averaged. Previously this was narrative-only.
3. §6 ¶3 diagnostic (c) cross-batch stability: added inline definition as
the mean pairwise cosine of per-batch-averaged BP-grad direction at
the chosen layer across K≥8 disjoint 128-sample minibatches, with
the empirical separation (drift 0.5-0.99 vs healthy 0.05-0.18).
4. §6 ¶3 threshold sensitivity pointer: added (Appendix~\ref{app:threshold_sweep})
pointer next to the (a)/(b) calibration claim.
5. §2 ¶1 hyperparameter fairness: changed 'against the same architecture,
optimizer, and training budget' to 'against the identical architecture,
optimizer, schedule, and training budget without method-specific tuning'
and added 'batch size 128'. Closes the 'fairness asserted but not
evidenced' reviewer concern.
Page budget: each addition ate ~1-2 lines. Net push was ~9 lines, which
spilled §7 onto p10. Recovered by:
- Shrinking Figure 3 (penalty rescue) from \linewidth to 0.92\linewidth
- Shrinking Figure 4 (cross_arch_summary) from 0.78\linewidth to 0.7\linewidth
- Compressing diagnostic (c) clause (kept the formula intent without all
the LaTeX math symbols inline)
- Trimming §7 closing sentence: dropped 'main lesson is to decompose'
preamble; merged 'a reporting rule' phrase into the same sentence as
the methodology-line citations
Result: §1-§7 + all figures fit strictly in 9 pages (verified via pdftotext;
p9 ends with §7 closing sentence + page number '9'; p10 starts with
References). Total 18 pages, 0 overfull hbox.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User flagged that intro entered the critique too fast without first
explaining what feedback alignment is. Based on Bartunov et al. 2018's
intro structure (their Section 1 opens with the weight-transport problem,
introduces FA as the response, and only then motivates the evaluation
question), rewrote §1 paragraph 1.
New §1 ¶1:
- BP is standard but biologically implausible (weight-transport problem)
- FA (Lillicrap 2016) side-steps via random feedback
- DFA (Nokland 2016) simplifies by direct projection per layer
- Parallel lines: target propagation (Lee 2015), equilibrium propagation
- Modern scaling: Launay 2020 (transformers), Akrout 2019
- Evaluation converged on accuracy + Gamma cosine summary
§1 ¶2 (old ¶1) then starts the audit critique against this backdrop, so
a reader who arrived without any FA context now has one paragraph of
set-up before the critique begins.
Page-budget side effect: the ~110-word addition pushed main content to
10 pages briefly. Recovered by shrinking Figure 4 (cross_arch_summary)
from width=\linewidth to width=0.78\linewidth, which freed enough
p9 vertical space for §7 to fit entirely on p9.
Result: main content strictly 9 pages (§1-§7 on p1-p9, references and
appendices on p10+). Total 18 pages. 0 overfull hbox.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Semantic Scholar check)
|
|
While user runs Semantic Scholar verification, I WebSearch-verified the 4
citations I flagged as 'never independently checked' and found one real bug
plus opportunity to expand others:
- Xiong 2020: second author was 'Yunchang Yu' in my bibitem, but the actual
author is 'Yunchang YANG'. Fixed. Also expanded to the full 10-author list.
- Paleka 2026: expanded 'Daniel Paleka et al.' -> 'Daniel Paleka, Shashwat
Goel, Jonas Geiping, and Florian Tramèr'. Title/venue confirmed correct.
- O'Bray 2022: expanded 'Leslie O'Bray et al.' -> 'Leslie O'Bray, Max Horn,
Bastian Rieck, and Karsten M. Borgwardt'. Title/venue confirmed correct.
- Jordan 2020: expanded 'Scott M. Jordan et al.' -> 'Scott Jordan, Yash
Chandak, Daniel Cohen, Mengxue Zhang, and Philip Thomas'. Also dropped
incorrect middle initial 'M.' Title/venue confirmed correct.
All 4 citations now have full verified author lists. The Yang/Yu typo was
a real factual error that Semantic Scholar would have caught.
Main content still 9 pages. Task list unchanged.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
User pushed back on SB/CB being treated as 'audited FA methods' because
they're our own constructions. Reframe them as diagnostic probes built on
two prior-literature assumptions (state=credit and credit=performance).
§1 intro: add 1 sentence clarifying BP/EP/DFA are established baselines and
SB/CB are probes constructed in this paper.
§2 ¶2 new opening paragraph (before 'By the field's usual criteria'):
- SB/CB are probes, not prior FA variants
- Each directly learns a target from a prior-literature view
- SB: target-propagation view (Bengio 2014, Lee 2015) — auxiliary G_ψ(h_l,t_l,s)
predicts h_L via MSE; a_l^SB = ∇_{h_l} CE(W_out LN(G_ψ(h_l,t_l,s)), y)
- CB: synthetic-gradient view (Jaderberg 2017) — auxiliary V_φ(h_l,t_l,s)
trained via bridge residual; a_l^CB = ∇_{h_l} V_φ(h_l,t_l,s)
- Both auxiliaries trained on detached hidden states
- Role: populate different points in the (angular alignment, functional
usefulness) plane, making the §4 cos-vs-acc dissociation visible
Bibliography: added Bengio 2014 (arXiv 1407.7906), Lee et al. 2015 (ECML
PKDD), Jaderberg et al. 2017 (ICML) — all verified via WebSearch.
Page budget: the ~180-word §2 addition pushed §7 onto p10. Recovered
space by:
(a) compressing §2 ¶1 opening
(b) compressing §3 ¶2 falsification chain (tighter number formatting)
(c) compressing §6 ¶3 asymmetry paragraph
(d) merging §7 into a single paragraph (was 3)
(e) moving Figure 5 (decision_utility) from §6 main text to a floated
appendix figure in Appendix D (the 'all seven validations' appendix,
which is conceptually related). The decision-utility ablation's
headline ('accuracy+Γ walks back 0/5, full protocol walks back 3/5')
is already in §6 prose so the figure functions as supporting backup.
Result: main content is strictly 9 pages (§1-§7 on p1-p9). References and
appendices on p10+. Total 18 pages, 0 overfull hbox.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Ran DFA+pen via cifar_resmlp.py on s123, s456. 3-seed:
- acc 0.3601 ± 0.0014 (matches existing 0.363 from round 11)
- deep cos +0.1518 ± 0.0110 (matches existing +0.155 ± 0.025)
- deep nudge -5e-5 (was single-seed -6e-5)
- train Δloss 0.095 ± 0.007 (was single-seed 0.104)
- w2 drift 18.6 ± 0.5 (matches single-seed 18.8)
- embed drift 94.6 ± 1.4 (matches single-seed 92.7)
Single-seed s42 was within noise of the 3-seed mean across all 4 functional
metrics, so the cos-vs-acc dissociation story is unchanged — Appendix L
now just reports 3-seed for all 3 methods consistently.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
label overlap (fig4)
Per user feedback:
- fig4_penalty_rescue.pdf (Figure 3 in paper): was figsize=(13, 3.5), aspect 3.7:1,
which rendered as a thin strip with squeezed subplot content. Increased height
to figsize=(13, 6.0), aspect 2.2:1. Much taller panels that actually show axis
labels and legends readably.
- fig5_cross_arch_summary.pdf (Figure 4 in paper): the 'Key finding' italic text
annotation at y=-1.0 in axes transform was overlapping with the multiline
architecture y-tick labels at the bottom of the second subplot. Moved to
y=-1.55 and increased figsize height from 3.5 to 4.2 so the lower annotation
still fits in bbox_inches='tight' crop.
- Also bumped includegraphics width from 0.92\linewidth to \linewidth for both
figures so they use the full text width.
Main content still exactly 9 pages within E&D budget.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
Previous tabularx conversion caused visual problems:
- Table 1: 'lcccc' inside tabularx{\linewidth} did not stretch, leaving a
blank column on the right side of the page
- Table 2: 'p{0.18}LLL' forced originally-single-line cells to wrap into
multiple lines (e.g., 'Vanilla DFA, early epoch' and 'cos_deep=... rho_deep=...'
split across 2 lines each)
- Table 3: 'p{0.06}L p{0.16} p{0.22}' similarly compressed single-line rows
Fix: revert all 3 tables to original plain 'tabular' (Table 1 lcccc,
Table 2 lccc, Table 3 llll) and wrap each in \resizebox{\linewidth}{!}{...}.
This:
- Stretches Table 1 to full text width (no blank right column)
- Shrinks Table 2's originally-wide content uniformly so all rows stay
single-line
- Shrinks Table 3 similarly so (a)/(b)/(c)/(d) rows are single-line
Tables 4-9 (appendix) keep their tabularx treatment since they fit cleanly.
Result: 0 overfull hbox, main content still exactly 9 pages, first 4
references now fit on p9 as well.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
|
lines to p10)
The two final sentences both started with 'Once...' and were redundant.
Cut the last sentence entirely and tightened the preceding phrase from
'Once the field enforces that separation...' to just stating the claim.
Before: 'That is the sense in which this paper fits the evaluation-methodology line...: the contribution is not a new benchmark artifact, but a reporting rule for preventing a repeatable interpretive error. Once the field enforces that separation between measurement validity and substantive credit quality, positive results will become more trustworthy, negative results more precise, and the apparent evidence for successful deep credit assignment much harder to overstate.'
After: 'That is the sense in which this paper fits the evaluation-methodology line...: the contribution is a reporting rule for preventing a repeatable interpretive error, not a new benchmark artifact.'
§7 now fully fits on p9. Main content exactly 9 pages within E&D budget.
|