summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ORAL_A_V3.md26
-rw-r--r--README.md4
-rw-r--r--RESULTS.md24
-rw-r--r--REVIEW_SCORECARD.md2
-rw-r--r--ROADMAP.md10
-rw-r--r--experiments/analyze_oral_a_failure.py33
-rw-r--r--results/oral_a_failure_diagnosis.json19
-rw-r--r--results/oral_a_v3_calibration/channel_subspace_etaA0.01.json393
-rw-r--r--results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json393
-rw-r--r--results/oral_a_v3_calibration/vectorizer_subspace_etaA0.1.json393
-rw-r--r--results/oral_a_v3_calibration/vectorizer_subspace_etaA1.0.json393
-rw-r--r--results/oral_a_v3_calibration_gate.json115
12 files changed, 1795 insertions, 10 deletions
diff --git a/ORAL_A_V3.md b/ORAL_A_V3.md
index b668ea0..2ffc19d 100644
--- a/ORAL_A_V3.md
+++ b/ORAL_A_V3.md
@@ -84,3 +84,29 @@ Pareto point.
V3-0/V3-1 cannot raise the strict ICLR score. A complete V3-2 pass moves the
forecast from 5 to 6; oral-level scale requires V3-3.
+## Audited outcome (2026-07-22)
+
+All four V3-1 records were finite and shared clean source commit `612196a`.
+The frozen selector chose `eta_A=0.01`. The matched alignment endpoints were:
+
+| estimator | early-third alignment | all-layer alignment |
+|:--|--:|--:|
+| V2 channel subspace | 0.007209 | 0.052740 |
+| V3 vectorizer subspace | 0.007139 | 0.062579 |
+
+V3 improves the all-layer mean by `0.009839`, mostly through middle and late
+blocks, but does not improve the binding early-layer endpoint. It fails the
+`0.01` absolute early threshold, the `+0.01` matched improvement, and the 60%
+family-oracle threshold; only the all-layer check passes. Rates `0.1` and `1.0`
+reduce early alignment further to `0.004804` and `0.002234`.
+
+The calibration MSE/power values are not compared across V2 and V3 because
+their metric spaces differ. The valid common endpoint is exact hidden-gradient
+alignment. V3-1 status is **failed**; V3-2 was not launched, no test endpoint
+or confirmation seed was touched, and the reviewer score remains 5/10.
+
+The negative result rules out coefficient-then-regress variance as the sole
+early-layer bottleneck. Direct matrix estimation works exactly and lowers
+matched synthetic variance, yet the real early signal remains unchanged. The
+next mechanism must add informative hierarchical/high-level context or remove
+the remaining cross-layer/parameter-space noise, not repeat this rate grid.
diff --git a/README.md b/README.md
index ad8e359..c06e9b1 100644
--- a/README.md
+++ b/README.md
@@ -50,6 +50,10 @@ and scaling behavior. See `NOVELTY.md` for the exact prior-art boundary.
`0.0011/0.0117` to `0.0072/0.0527` at matched query count. It nevertheless
missed the frozen `0.01` early-layer and improvement gates, so no v2 full
ResNet run was launched.
+- Direct vectorizer-space perturbation then passed its exact mechanics and
+ synthetic variance audit, but V3-1 again failed: early alignment was
+ `0.00714` versus matched V2's `0.00721`, although all-layer alignment rose to
+ `0.06258`. V3 full training therefore remained closed.
- Native author-code fidelity is complete. BurstCCN reaches `80.10%` at its
validation-selected epoch versus published `82.97 +/- 0.21%`; Dual Prop
reaches `92.46%` versus published `92.41 +/- 0.07%`. Their audited walls are
diff --git a/RESULTS.md b/RESULTS.md
index 50377ba..9a6fa81 100644
--- a/RESULTS.md
+++ b/RESULTS.md
@@ -683,6 +683,30 @@ post-failure oracle diagnostics, not trainable-method results. They rule out a
naive basis expansion and point toward both better causal sample efficiency
and a more informative hierarchical/high-level feedback context.
+V3 tests whether the remaining regression gap comes specifically from
+estimating per-example coefficients before fitting A/G. It perturbs random A/G
+matrices directly, so each induced hidden intervention already contains the
+output-error context and the antithetic scalar estimates the exact matrix
+statistic needed by the vectorizer delta rule. Mechanics are strong: at batch
+128 the frozen synthetic one-query MSE is `0.03381x` the coefficient estimator,
+and exact no-BN/BN JVP errors are below `2e-10`.
+
+That gain does not transfer to early ResNet credit. All four frozen-forward
+records are finite and the selected rate is again `eta_A=0.01`:
+
+| estimator | early-third alignment | all-layer alignment |
+|:--|--:|--:|
+| channel-subspace V2 reference | 0.007209 | 0.052740 |
+| vectorizer-subspace V3 | 0.007139 | 0.062579 |
+
+The common all-layer endpoint improves, but the early endpoint is unchanged
+and misses three frozen advancement checks. Higher rates are worse. Thus the
+coefficient-regression stage was not the dominant early-layer limitation under
+the real causal signal. V3-2 is not launched. The result redirects development
+toward informative hierarchical/high-level feedback context or a mechanism
+that addresses remaining cross-layer/parameter-space noise; it does not
+justify another rate or warmup sweep.
+
## How to run
`experiments/run.py --mode {bp,fa,dfa,sdil} --dataset {mnist,fmnist,cifar10} --depth D --residual {0,1} --act {tanh,gelu,silu,relu}`
Batteries: `experiments/run_v2.sh <ds> "<depths>" <res> <act> "<seeds>" <ep> <pfx>`.
diff --git a/REVIEW_SCORECARD.md b/REVIEW_SCORECARD.md
index 3bbb0c8..59fe99e 100644
--- a/REVIEW_SCORECARD.md
+++ b/REVIEW_SCORECARD.md
@@ -59,6 +59,7 @@ Every formal result report records:
| Oral-A A1/A2 | 5 | BP reached 91.62%; short channel-gated SDIL reached 41.98% versus tuned DFA at 37.16% | Development screening alone cannot raise the score |
| Oral-A A3 fails | 5 | Full ResNet-20 SDIL became nonfinite at epoch 89 and ended at 10%; DFA ended finite at 33.06% | Standard-scale and oral-A claims are closed; A4 remains untouched |
| Oral-A-v2 causal capture fails | 5 | Structured perturbation improves early/all-layer alignment 6.5x/4.5x but misses the frozen early gate | Mechanism diagnosis sharpens; no full standard-scale endpoint opens |
+| Oral-A-v3 causal capture fails | 5 | Direct A/G perturbation lowers synthetic estimator variance but leaves real early alignment at 0.0071 | Coefficient regression is not the dominant early bottleneck; full scale remains closed |
| Oral-A A4 | not opened | The prerequisite A3 gate failed | No oral-A confirmation claim is available |
These are conditional reviewer forecasts, not promised scores. A failed stage leaves its negative
@@ -75,6 +76,7 @@ retroactively reopened by success on standard vision benchmarks.
| 2026-07-22 / native C4 | BurstCCN and Dual Prop author-code records pass the strict audit; Dual Prop reproduces 92.46% test in 23119.8 s | 5 → 5 | Closes a baseline-fidelity objection and confirms a strong expensive comparator, but does not repair SDIL's failed A3 evidence |
| 2026-07-22 / Oral-A-v2 V2-1 | Six clean frozen-forward records: structured calibration raises early/all-layer alignment to 0.0072/0.0527 but fails two frozen advancement checks | 5 → 5 | Confirms representable-subspace variance was real, while showing that early-layer causal credit remains below the standard-depth gate; V2-2 and confirmation stay closed |
| 2026-07-22 / post-failure representation oracle | Current family has a 0.0240 cross-validated early-alignment ceiling on the fixed probe versus 0.0072 learned; unconstrained basis coefficients reach 0.0549 | 5 → 5 | Localizes both a causal-regression gap and an output-error-only capacity gap, but an oracle audit supplies no task-performance evidence |
+| 2026-07-22 / Oral-A-v3 V3-1 | Four clean frozen-forward records: vectorizer-space estimation raises all-layer alignment to 0.0626 but leaves early alignment at 0.0071 and fails three advancement checks | 5 → 5 | Exact lower-variance mechanics do not repair early credit; no full ResNet or confirmation evidence is opened |
Future rows are appended only after an audited frozen stage. A score staying flat is informative:
engineering, theory exposition, or visualization may make the paper more defensible without
diff --git a/ROADMAP.md b/ROADMAP.md
index 2ad919f..4f6c315 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -373,6 +373,16 @@ reaches `0.00721`. Naive local-average/channel-context fields fall slightly to
sample efficiency and feedback context; simply lowering `eta_A`, adding the
tested fields, or reopening V2-2 is not justified.
+**Vectorizer-space V3 status: causal-capture gate failed.** Directly estimating
+the A/G matrix target passed exact mechanics and reduced matched synthetic
+one-query MSE to `0.03381x`, but its selected real early alignment was
+`0.007139` versus the matched V2 reference's `0.007209`. All-layer alignment
+rose from `0.052740` to `0.062579`; three early/oracle checks failed and only
+the all-layer check passed. V3 full training was not launched, and test access
+remains sealed. This closes learning-rate tuning of the same output-error-only
+channel-gated family; a further branch must make a substantive feedback-context
+or cross-layer-noise change.
+
Prepare convolutional local-update primitives and ResNet-20/32/56 protocols early. Queue frozen
runs opportunistically on authorized idle GPUs. Because BurstCCN already reports CIFAR-10 and
ImageNet scaling, dataset scale alone is not novel. The oral-level target is a memorable joint
diff --git a/experiments/analyze_oral_a_failure.py b/experiments/analyze_oral_a_failure.py
index ce2e2b0..03549b8 100644
--- a/experiments/analyze_oral_a_failure.py
+++ b/experiments/analyze_oral_a_failure.py
@@ -29,6 +29,8 @@ def main():
"--representation",
default="results/oral_a_representation_diagnosis.json")
parser.add_argument(
+ "--v3_gate", default="results/oral_a_v3_calibration_gate.json")
+ parser.add_argument(
"--out", default="results/oral_a_failure_diagnosis.json")
args = parser.parse_args()
@@ -37,6 +39,7 @@ def main():
gate = load(args.gate)
v2_gate = load(args.v2_gate)
representation = load(args.representation)
+ v3_gate = load(args.v3_gate)
expected = {
"mode": "sdil", "depth": 20, "epochs": 200,
"vectorizer_mode": "channel_gated", "a_scale": 1.0,
@@ -54,6 +57,9 @@ def main():
raise ValueError("expected a failed v2 gate with untouched confirmation")
if representation["probe"]["test_examples_touched"] != 0:
raise ValueError("representation diagnosis touched test examples")
+ if (v3_gate["status"] != "failed"
+ or v3_gate["confirmation_test_seeds_touched"]):
+ raise ValueError("expected a failed v3 gate with untouched confirmation")
calibration_rows = []
first_nonfinite_epoch = None
@@ -97,10 +103,11 @@ def main():
unit = v2_gate["selected"]["unit_targets"]
structured = v2_gate["selected"]["channel_subspace"]
output = {
- "protocol": "oral_a_A3_failure_diagnosis_v2",
+ "protocol": "oral_a_A3_failure_diagnosis_v3",
"source_paths": {
"full": args.full, "short": args.short, "gate": args.gate,
"v2_gate": args.v2_gate, "representation": args.representation,
+ "v3_gate": args.v3_gate,
},
"source_commits": {
"full": full["provenance"]["git_commit"],
@@ -154,6 +161,19 @@ def main():
representation["cosine"]["local_context_cv"]
["early_third_mean"]),
},
+ "post_failure_v3_refinement": {
+ "vectorizer_subspace_early_third_alignment": (
+ v3_gate["selected_v3"]["metrics"]["early_third_alignment"]),
+ "vectorizer_subspace_all_layer_alignment": (
+ v3_gate["selected_v3"]["metrics"]["all_layer_alignment"]),
+ "matched_v2_early_third_alignment": (
+ v3_gate["matched_v2_reference"]["metrics"]
+ ["early_third_alignment"]),
+ "matched_v2_all_layer_alignment": (
+ v3_gate["matched_v2_reference"]["metrics"]
+ ["all_layer_alignment"]),
+ "vectorizer_subspace_gate_status": v3_gate["status"],
+ },
"diagnosis": {
"classification": (
"early_credit_limited_by_estimator_efficiency_and_feedback_capacity"),
@@ -164,18 +184,21 @@ def main():
"matched frozen-forward unit targets later yield only 0.0011 early-layer alignment",
"structured learning reaches 0.0072 versus a 0.0240 cross-validated family oracle",
"unconstrained coefficients raise the same spatial basis oracle only to 0.0549",
+ "direct A/G estimation leaves early alignment unchanged at 0.0071",
],
"interpretation_limit": (
"instantaneous target metrics alone do not prove zero conditional "
"learning; structured v2 has low instantaneous cosine yet positive "
"exact-gradient alignment"),
"next_test_outcome": (
- "representable-subspace perturbation improved exact alignment but "
- "failed the frozen early-layer causal-capture gate"),
+ "representable-subspace perturbation improved alignment but failed; "
+ "direct vectorizer-space estimation then improved only middle/late "
+ "layers and also failed the frozen early-layer gate"),
"next_design_constraint": (
"do not add the tested naive local-average/channel-mean bases; "
- "improve causal sample efficiency and use a more informative "
- "hierarchical or high-level contextual feedback signal"),
+ "do not repeat the closed A/G rate grid; use a more informative "
+ "hierarchical or high-level contextual feedback signal and "
+ "audit remaining cross-layer noise"),
},
}
os.makedirs(os.path.dirname(os.path.abspath(args.out)), exist_ok=True)
diff --git a/results/oral_a_failure_diagnosis.json b/results/oral_a_failure_diagnosis.json
index 1b142df..b26d81e 100644
--- a/results/oral_a_failure_diagnosis.json
+++ b/results/oral_a_failure_diagnosis.json
@@ -51,11 +51,12 @@
"target power grows by orders of magnitude before nonfiniteness",
"matched frozen-forward unit targets later yield only 0.0011 early-layer alignment",
"structured learning reaches 0.0072 versus a 0.0240 cross-validated family oracle",
- "unconstrained coefficients raise the same spatial basis oracle only to 0.0549"
+ "unconstrained coefficients raise the same spatial basis oracle only to 0.0549",
+ "direct A/G estimation leaves early alignment unchanged at 0.0071"
],
"interpretation_limit": "instantaneous target metrics alone do not prove zero conditional learning; structured v2 has low instantaneous cosine yet positive exact-gradient alignment",
- "next_design_constraint": "do not add the tested naive local-average/channel-mean bases; improve causal sample efficiency and use a more informative hierarchical or high-level contextual feedback signal",
- "next_test_outcome": "representable-subspace perturbation improved exact alignment but failed the frozen early-layer causal-capture gate"
+ "next_design_constraint": "do not add the tested naive local-average/channel-mean bases; do not repeat the closed A/G rate grid; use a more informative hierarchical or high-level contextual feedback signal and audit remaining cross-layer noise",
+ "next_test_outcome": "representable-subspace perturbation improved alignment but failed; direct vectorizer-space estimation then improved only middle/late layers and also failed the frozen early-layer gate"
},
"frozen_outcome": {
"confirmation_test_seeds_touched": false,
@@ -88,7 +89,14 @@
"unit_target_all_layer_alignment": 0.011664319529173602,
"unit_target_early_third_alignment": 0.0011051012067279469
},
- "protocol": "oral_a_A3_failure_diagnosis_v2",
+ "post_failure_v3_refinement": {
+ "matched_v2_all_layer_alignment": 0.052739956808325494,
+ "matched_v2_early_third_alignment": 0.007209058462952574,
+ "vectorizer_subspace_all_layer_alignment": 0.0625791079364717,
+ "vectorizer_subspace_early_third_alignment": 0.007139206010227402,
+ "vectorizer_subspace_gate_status": "failed"
+ },
+ "protocol": "oral_a_A3_failure_diagnosis_v3",
"short_screen_contrast": {
"accuracy": 0.4198,
"early_third_alignment": 0.08889565182228883,
@@ -104,6 +112,7 @@
"gate": "results/oral_a_full_gate.json",
"representation": "results/oral_a_representation_diagnosis.json",
"short": "results/oral_a_short/sdil_channel_gated_lr0.03.json",
- "v2_gate": "results/oral_a_v2_calibration_gate.json"
+ "v2_gate": "results/oral_a_v2_calibration_gate.json",
+ "v3_gate": "results/oral_a_v3_calibration_gate.json"
}
}
diff --git a/results/oral_a_v3_calibration/channel_subspace_etaA0.01.json b/results/oral_a_v3_calibration/channel_subspace_etaA0.01.json
new file mode 100644
index 0000000..04dc626
--- /dev/null
+++ b/results/oral_a_v3_calibration/channel_subspace_etaA0.01.json
@@ -0,0 +1,393 @@
+{
+ "apical_warmup": {
+ "first": {
+ "calibration_mse": 0.667037273962917,
+ "parameter_update_rms": 0.023085309606734133,
+ "prediction_target_cosine": 0.0,
+ "target_power": 0.667037273962917
+ },
+ "last": {
+ "calibration_mse": 0.014343140418299469,
+ "parameter_update_rms": 0.00343628282575056,
+ "prediction_target_cosine": -0.005531953824674762,
+ "target_power": 0.014335632392748118
+ },
+ "mean": {
+ "calibration_mse": 0.2708950854477958,
+ "parameter_update_rms": 0.011981565658686305,
+ "prediction_target_cosine": 0.00018159585958168355,
+ "target_power": 0.2708926473589623
+ },
+ "steps": 400
+ },
+ "architecture": {
+ "adaptive_apical_parameters": 390592,
+ "base_width": 16,
+ "blocks_per_stage": 3,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "depth": 20,
+ "family": "CIFAR 6n+2 ResNet, option-A shortcuts",
+ "fixed_traffic_coefficients": 188416,
+ "forward_parameters": 269722,
+ "hidden_shapes": [
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ]
+ ],
+ "normalization": "batchnorm",
+ "predictor_parameters": 376832,
+ "residual_scale": 1.0,
+ "vectorizer_mode": "channel_gated",
+ "vectorizer_parameters": 13760
+ },
+ "args": {
+ "a_scale": 0.0,
+ "a_warmup_steps": 400,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "channel_subspace",
+ "apical_seed": null,
+ "augment_train": 1,
+ "batch_size": 128,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "data_dir": "/home/yurenh2/sdrn/data",
+ "depth": 20,
+ "device": "cuda:0",
+ "epochs": 0,
+ "eta_A": 0.01,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.03,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mode": "sdil",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/oral_a_v3_calibration/channel_subspace_etaA0.01.json",
+ "output_lr": 0.1,
+ "pert_directions": 1,
+ "pert_every": 4,
+ "pert_sigma": 0.01,
+ "perturb_seed": 1000,
+ "predictor_warmup_steps": 0,
+ "residual_scale": null,
+ "seed": 0,
+ "split_seed": 2027,
+ "train_limit": 10000,
+ "use_residual": 1,
+ "val_examples": 5000,
+ "vectorizer_mode": "channel_gated",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "channel_basis_moments",
+ "counters": {
+ "apical_warmup_examples": 50640,
+ "calibration_event_examples": 50640,
+ "causal_scalar_observations": 800,
+ "logical_batch_loss_queries": 800,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 101280,
+ "perturbation_events": 400,
+ "perturbation_forward_examples": 101280,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.007209058462952574,
+ "innovation_negative_gradient_cosine": [
+ 0.002150021493434906,
+ 0.005721020977944136,
+ 0.008716395124793053,
+ 0.011148940771818161,
+ 0.0053421612828969955,
+ 0.010175811126828194,
+ 0.006470846477895975,
+ 0.013490992598235607,
+ 0.025294749066233635,
+ 0.028453530743718147,
+ 0.041042692959308624,
+ 0.018679656088352203,
+ 0.04189874976873398,
+ 0.04070262610912323,
+ 0.09365405142307281,
+ 0.07153154909610748,
+ 0.11656917631626129,
+ 0.19568055868148804,
+ 0.26533564925193787
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ 0.002150021493434906,
+ 0.005721020977944136,
+ 0.008716395124793053,
+ 0.011148940771818161,
+ 0.0053421612828969955,
+ 0.010175811126828194,
+ 0.006470846477895975,
+ 0.013490992598235607,
+ 0.025294749066233635,
+ 0.028453530743718147,
+ 0.041042692959308624,
+ 0.018679656088352203,
+ 0.04189874976873398,
+ 0.04070262610912323,
+ 0.09365405142307281,
+ 0.07153154909610748,
+ 0.11656917631626129,
+ 0.19568055868148804,
+ 0.26533564925193787
+ ],
+ "teaching_negative_gradient_cosine": [
+ 0.002150021493434906,
+ 0.005721020977944136,
+ 0.008716395124793053,
+ 0.011148940771818161,
+ 0.0053421612828969955,
+ 0.010175811126828194,
+ 0.006470846477895975,
+ 0.013490992598235607,
+ 0.025294749066233635,
+ 0.028453530743718147,
+ 0.041042692959308624,
+ 0.018679656088352203,
+ 0.04189874976873398,
+ 0.04070262610912323,
+ 0.09365405142307281,
+ 0.07153154909610748,
+ 0.11656917631626129,
+ 0.19568055868148804,
+ 0.26533564925193787
+ ],
+ "wall_s": 0.1165304183959961
+ },
+ "epochs": [],
+ "evaluation_protocol": {
+ "test_evaluations": 0,
+ "test_used_for_selection": false,
+ "validation_evaluations": 1
+ },
+ "final": {
+ "accuracy": 0.1004,
+ "epoch": 0,
+ "evaluation_split": "validation",
+ "finite": true,
+ "loss": 16.593759375,
+ "step": 0
+ },
+ "hardware": {
+ "cuda_device_name": "NVIDIA GeForce GTX 1080",
+ "cuda_visible_devices": "5",
+ "device": "cuda:0",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1734868480,
+ "peak_memory_reserved_bytes": 2575302656,
+ "torch_version": "2.3.1+cu118"
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1",
+ "git_tracked_dirty": false
+ },
+ "schema_version": 1,
+ "split": {
+ "cifar_source_files": [
+ {
+ "bytes": 31035704,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_1",
+ "sha256": "54636561a3ce25bd3e19253c6b0d8538147b0ae398331ac4a2d86c6d987368cd"
+ },
+ {
+ "bytes": 31035320,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_2",
+ "sha256": "766b2cef9fbc745cf056b3152224f7cf77163b330ea9a15f9392beb8b89bc5a8"
+ },
+ {
+ "bytes": 31035999,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_3",
+ "sha256": "0f00d98ebfb30b3ec0ad19f9756dc2630b89003e10525f5e148445e82aa6a1f9"
+ },
+ {
+ "bytes": 31035696,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_4",
+ "sha256": "3f7bb240661948b8f4d53e36ec720d8306f5668bd0071dcb4e6c947f78e9682b"
+ },
+ {
+ "bytes": 31035623,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_5",
+ "sha256": "d91802434d8376bbaeeadf58a737e3a1b12ac839077e931237e0dcd43adcb154"
+ },
+ {
+ "bytes": 31035526,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/test_batch",
+ "sha256": "f53d8d457504f7cff4ea9e021afcf0e0ad8e24a91f3fc42091b8adef61157831"
+ }
+ ],
+ "dataset": "cifar10",
+ "evaluation_split": "validation",
+ "input_layout": "NCHW",
+ "input_shape": [
+ 3,
+ 32,
+ 32
+ ],
+ "loader_seed": 0,
+ "normalization_mean": [
+ 0.49140000343322754,
+ 0.4821999967098236,
+ 0.4465000033378601
+ ],
+ "normalization_std": [
+ 0.24699999392032623,
+ 0.2434999942779541,
+ 0.26159998774528503
+ ],
+ "split_from_training_only": true,
+ "split_seed": 2027,
+ "test_examples": 10000,
+ "train_examples": 10000,
+ "training_augmentation": "random_crop_32_padding_4_zero_then_horizontal_flip_p0.5",
+ "validation_class_counts": {
+ "0": 500,
+ "1": 500,
+ "2": 500,
+ "3": 500,
+ "4": 500,
+ "5": 500,
+ "6": 500,
+ "7": 500,
+ "8": 500,
+ "9": 500
+ },
+ "validation_examples": 5000,
+ "validation_index_sha256": "8328b206a97c420e49e54e3eca4abe3274c4756b084355784ea3fb8059e4515b"
+ },
+ "timing": {
+ "apical_warmup_wall_s": 24.140583515167236,
+ "evaluation_wall_s": 0.3799288272857666,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 24.520760536193848,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 202176,
+ "causal_scalar_observations": 800,
+ "components": {
+ "apical_projection_macs": 10238192640,
+ "apical_regression_macs": 10238192640,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 4107009331200,
+ "warmup_clean_forward_macs": 2053504665600
+ },
+ "definition": "multiply-accumulates in conv/linear maps; one local weight correlation equals one forward-weight MAC count; BP reverse is estimated as one weight-gradient plus one activation-gradient convolution per forward convolution; elementwise nonlinearities and optimizer arithmetic excluded",
+ "forward_macs_per_example": 40551040,
+ "logical_batch_loss_queries": 800,
+ "per_example_cross_entropy_terms": 101280,
+ "total_clean_forward_examples": 50640,
+ "total_forward_equivalent_examples": 151920,
+ "total_macs_estimate": 6180990382080
+ }
+}
diff --git a/results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json b/results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json
new file mode 100644
index 0000000..d959de9
--- /dev/null
+++ b/results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json
@@ -0,0 +1,393 @@
+{
+ "apical_warmup": {
+ "first": {
+ "calibration_mse": 1.9545826862768833e-07,
+ "parameter_update_rms": 0.0004421066258581614,
+ "prediction_target_cosine": 0.0,
+ "target_power": 1.9545826862768833e-07
+ },
+ "last": {
+ "calibration_mse": 3.684547450998358e-05,
+ "parameter_update_rms": 0.006070047323537402,
+ "prediction_target_cosine": 0.01877143215663052,
+ "target_power": 3.6848756204287994e-05
+ },
+ "mean": {
+ "calibration_mse": 0.00019177845804523746,
+ "parameter_update_rms": 0.010982968905010668,
+ "prediction_target_cosine": 0.0018218688400943384,
+ "target_power": 0.00019176158875808158
+ },
+ "steps": 400
+ },
+ "architecture": {
+ "adaptive_apical_parameters": 390592,
+ "base_width": 16,
+ "blocks_per_stage": 3,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "depth": 20,
+ "family": "CIFAR 6n+2 ResNet, option-A shortcuts",
+ "fixed_traffic_coefficients": 188416,
+ "forward_parameters": 269722,
+ "hidden_shapes": [
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ]
+ ],
+ "normalization": "batchnorm",
+ "predictor_parameters": 376832,
+ "residual_scale": 1.0,
+ "vectorizer_mode": "channel_gated",
+ "vectorizer_parameters": 13760
+ },
+ "args": {
+ "a_scale": 0.0,
+ "a_warmup_steps": 400,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "vectorizer_subspace",
+ "apical_seed": null,
+ "augment_train": 1,
+ "batch_size": 128,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "data_dir": "/home/yurenh2/sdrn/data",
+ "depth": 20,
+ "device": "cuda:0",
+ "epochs": 0,
+ "eta_A": 0.01,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.03,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mode": "sdil",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json",
+ "output_lr": 0.1,
+ "pert_directions": 1,
+ "pert_every": 4,
+ "pert_sigma": 0.01,
+ "perturb_seed": 1000,
+ "predictor_warmup_steps": 0,
+ "residual_scale": null,
+ "seed": 0,
+ "split_seed": 2027,
+ "train_limit": 10000,
+ "use_residual": 1,
+ "val_examples": 5000,
+ "vectorizer_mode": "channel_gated",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "vectorizer_parameter_gradients",
+ "counters": {
+ "apical_warmup_examples": 50640,
+ "calibration_event_examples": 50640,
+ "causal_scalar_observations": 800,
+ "logical_batch_loss_queries": 800,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 101280,
+ "perturbation_events": 400,
+ "perturbation_forward_examples": 101280,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.007139206010227402,
+ "innovation_negative_gradient_cosine": [
+ 0.0026028589345514774,
+ 0.006397380493581295,
+ 0.008704797364771366,
+ 0.010101381689310074,
+ 0.007746903225779533,
+ 0.0072819143533706665,
+ 0.020229119807481766,
+ 0.021337036043405533,
+ 0.021039098501205444,
+ 0.03162077069282532,
+ 0.03877360373735428,
+ 0.04704105108976364,
+ 0.06299921870231628,
+ 0.08475810289382935,
+ 0.07144122570753098,
+ 0.14218710362911224,
+ 0.16116924583911896,
+ 0.20310530066490173,
+ 0.24046693742275238
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ 0.0026028589345514774,
+ 0.006397380493581295,
+ 0.008704797364771366,
+ 0.010101381689310074,
+ 0.007746903225779533,
+ 0.0072819143533706665,
+ 0.020229119807481766,
+ 0.021337036043405533,
+ 0.021039098501205444,
+ 0.03162077069282532,
+ 0.03877360373735428,
+ 0.04704105108976364,
+ 0.06299921870231628,
+ 0.08475810289382935,
+ 0.07144122570753098,
+ 0.14218710362911224,
+ 0.16116924583911896,
+ 0.20310530066490173,
+ 0.24046693742275238
+ ],
+ "teaching_negative_gradient_cosine": [
+ 0.0026028589345514774,
+ 0.006397380493581295,
+ 0.008704797364771366,
+ 0.010101381689310074,
+ 0.007746903225779533,
+ 0.0072819143533706665,
+ 0.020229119807481766,
+ 0.021337036043405533,
+ 0.021039098501205444,
+ 0.03162077069282532,
+ 0.03877360373735428,
+ 0.04704105108976364,
+ 0.06299921870231628,
+ 0.08475810289382935,
+ 0.07144122570753098,
+ 0.14218710362911224,
+ 0.16116924583911896,
+ 0.20310530066490173,
+ 0.24046693742275238
+ ],
+ "wall_s": 0.1202707290649414
+ },
+ "epochs": [],
+ "evaluation_protocol": {
+ "test_evaluations": 0,
+ "test_used_for_selection": false,
+ "validation_evaluations": 1
+ },
+ "final": {
+ "accuracy": 0.1004,
+ "epoch": 0,
+ "evaluation_split": "validation",
+ "finite": true,
+ "loss": 16.593759375,
+ "step": 0
+ },
+ "hardware": {
+ "cuda_device_name": "NVIDIA GeForce GTX 1080",
+ "cuda_visible_devices": "7",
+ "device": "cuda:0",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1734868480,
+ "peak_memory_reserved_bytes": 2575302656,
+ "torch_version": "2.3.1+cu118"
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1",
+ "git_tracked_dirty": false
+ },
+ "schema_version": 1,
+ "split": {
+ "cifar_source_files": [
+ {
+ "bytes": 31035704,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_1",
+ "sha256": "54636561a3ce25bd3e19253c6b0d8538147b0ae398331ac4a2d86c6d987368cd"
+ },
+ {
+ "bytes": 31035320,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_2",
+ "sha256": "766b2cef9fbc745cf056b3152224f7cf77163b330ea9a15f9392beb8b89bc5a8"
+ },
+ {
+ "bytes": 31035999,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_3",
+ "sha256": "0f00d98ebfb30b3ec0ad19f9756dc2630b89003e10525f5e148445e82aa6a1f9"
+ },
+ {
+ "bytes": 31035696,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_4",
+ "sha256": "3f7bb240661948b8f4d53e36ec720d8306f5668bd0071dcb4e6c947f78e9682b"
+ },
+ {
+ "bytes": 31035623,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_5",
+ "sha256": "d91802434d8376bbaeeadf58a737e3a1b12ac839077e931237e0dcd43adcb154"
+ },
+ {
+ "bytes": 31035526,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/test_batch",
+ "sha256": "f53d8d457504f7cff4ea9e021afcf0e0ad8e24a91f3fc42091b8adef61157831"
+ }
+ ],
+ "dataset": "cifar10",
+ "evaluation_split": "validation",
+ "input_layout": "NCHW",
+ "input_shape": [
+ 3,
+ 32,
+ 32
+ ],
+ "loader_seed": 0,
+ "normalization_mean": [
+ 0.49140000343322754,
+ 0.4821999967098236,
+ 0.4465000033378601
+ ],
+ "normalization_std": [
+ 0.24699999392032623,
+ 0.2434999942779541,
+ 0.26159998774528503
+ ],
+ "split_from_training_only": true,
+ "split_seed": 2027,
+ "test_examples": 10000,
+ "train_examples": 10000,
+ "training_augmentation": "random_crop_32_padding_4_zero_then_horizontal_flip_p0.5",
+ "validation_class_counts": {
+ "0": 500,
+ "1": 500,
+ "2": 500,
+ "3": 500,
+ "4": 500,
+ "5": 500,
+ "6": 500,
+ "7": 500,
+ "8": 500,
+ "9": 500
+ },
+ "validation_examples": 5000,
+ "validation_index_sha256": "8328b206a97c420e49e54e3eca4abe3274c4756b084355784ea3fb8059e4515b"
+ },
+ "timing": {
+ "apical_warmup_wall_s": 24.03937554359436,
+ "evaluation_wall_s": 0.376523494720459,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 24.41608953475952,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 202176,
+ "causal_scalar_observations": 800,
+ "components": {
+ "apical_projection_macs": 10238192640,
+ "apical_regression_macs": 10238192640,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 4107009331200,
+ "warmup_clean_forward_macs": 2053504665600
+ },
+ "definition": "multiply-accumulates in conv/linear maps; one local weight correlation equals one forward-weight MAC count; BP reverse is estimated as one weight-gradient plus one activation-gradient convolution per forward convolution; elementwise nonlinearities and optimizer arithmetic excluded",
+ "forward_macs_per_example": 40551040,
+ "logical_batch_loss_queries": 800,
+ "per_example_cross_entropy_terms": 101280,
+ "total_clean_forward_examples": 50640,
+ "total_forward_equivalent_examples": 151920,
+ "total_macs_estimate": 6180990382080
+ }
+}
diff --git a/results/oral_a_v3_calibration/vectorizer_subspace_etaA0.1.json b/results/oral_a_v3_calibration/vectorizer_subspace_etaA0.1.json
new file mode 100644
index 0000000..7c5b244
--- /dev/null
+++ b/results/oral_a_v3_calibration/vectorizer_subspace_etaA0.1.json
@@ -0,0 +1,393 @@
+{
+ "apical_warmup": {
+ "first": {
+ "calibration_mse": 1.9545826862768833e-07,
+ "parameter_update_rms": 0.0004421066258581614,
+ "prediction_target_cosine": 0.0,
+ "target_power": 1.9545826862768833e-07
+ },
+ "last": {
+ "calibration_mse": 3.7359160583142764e-05,
+ "parameter_update_rms": 0.006112214049192221,
+ "prediction_target_cosine": 0.011668008991139992,
+ "target_power": 3.6848756204287994e-05
+ },
+ "mean": {
+ "calibration_mse": 0.0001923398035258008,
+ "parameter_update_rms": 0.011050459120615532,
+ "prediction_target_cosine": 0.0014602501420039524,
+ "target_power": 0.00019176158875808158
+ },
+ "steps": 400
+ },
+ "architecture": {
+ "adaptive_apical_parameters": 390592,
+ "base_width": 16,
+ "blocks_per_stage": 3,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "depth": 20,
+ "family": "CIFAR 6n+2 ResNet, option-A shortcuts",
+ "fixed_traffic_coefficients": 188416,
+ "forward_parameters": 269722,
+ "hidden_shapes": [
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ]
+ ],
+ "normalization": "batchnorm",
+ "predictor_parameters": 376832,
+ "residual_scale": 1.0,
+ "vectorizer_mode": "channel_gated",
+ "vectorizer_parameters": 13760
+ },
+ "args": {
+ "a_scale": 0.0,
+ "a_warmup_steps": 400,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "vectorizer_subspace",
+ "apical_seed": null,
+ "augment_train": 1,
+ "batch_size": 128,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "data_dir": "/home/yurenh2/sdrn/data",
+ "depth": 20,
+ "device": "cuda:0",
+ "epochs": 0,
+ "eta_A": 0.1,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.03,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mode": "sdil",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/oral_a_v3_calibration/vectorizer_subspace_etaA0.1.json",
+ "output_lr": 0.1,
+ "pert_directions": 1,
+ "pert_every": 4,
+ "pert_sigma": 0.01,
+ "perturb_seed": 1000,
+ "predictor_warmup_steps": 0,
+ "residual_scale": null,
+ "seed": 0,
+ "split_seed": 2027,
+ "train_limit": 10000,
+ "use_residual": 1,
+ "val_examples": 5000,
+ "vectorizer_mode": "channel_gated",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "vectorizer_parameter_gradients",
+ "counters": {
+ "apical_warmup_examples": 50640,
+ "calibration_event_examples": 50640,
+ "causal_scalar_observations": 800,
+ "logical_batch_loss_queries": 800,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 101280,
+ "perturbation_events": 400,
+ "perturbation_forward_examples": 101280,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.004803654310914378,
+ "innovation_negative_gradient_cosine": [
+ 0.0022225109860301018,
+ 0.0028289039619266987,
+ 0.0034330247435718775,
+ 0.009060748852789402,
+ 0.005170748569071293,
+ 0.006105988752096891,
+ 0.006368447095155716,
+ 0.01181209459900856,
+ 0.006666069850325584,
+ 0.010817515663802624,
+ 0.02869417518377304,
+ 0.02690061554312706,
+ 0.04461611434817314,
+ 0.0371469110250473,
+ 0.024002932012081146,
+ 0.0602751150727272,
+ 0.06595541536808014,
+ 0.109754279255867,
+ 0.1261977106332779
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ 0.0022225109860301018,
+ 0.0028289039619266987,
+ 0.0034330247435718775,
+ 0.009060748852789402,
+ 0.005170748569071293,
+ 0.006105988752096891,
+ 0.006368447095155716,
+ 0.01181209459900856,
+ 0.006666069850325584,
+ 0.010817515663802624,
+ 0.02869417518377304,
+ 0.02690061554312706,
+ 0.04461611434817314,
+ 0.0371469110250473,
+ 0.024002932012081146,
+ 0.0602751150727272,
+ 0.06595541536808014,
+ 0.109754279255867,
+ 0.1261977106332779
+ ],
+ "teaching_negative_gradient_cosine": [
+ 0.0022225109860301018,
+ 0.0028289039619266987,
+ 0.0034330247435718775,
+ 0.009060748852789402,
+ 0.005170748569071293,
+ 0.006105988752096891,
+ 0.006368447095155716,
+ 0.01181209459900856,
+ 0.006666069850325584,
+ 0.010817515663802624,
+ 0.02869417518377304,
+ 0.02690061554312706,
+ 0.04461611434817314,
+ 0.0371469110250473,
+ 0.024002932012081146,
+ 0.0602751150727272,
+ 0.06595541536808014,
+ 0.109754279255867,
+ 0.1261977106332779
+ ],
+ "wall_s": 0.1158304214477539
+ },
+ "epochs": [],
+ "evaluation_protocol": {
+ "test_evaluations": 0,
+ "test_used_for_selection": false,
+ "validation_evaluations": 1
+ },
+ "final": {
+ "accuracy": 0.1004,
+ "epoch": 0,
+ "evaluation_split": "validation",
+ "finite": true,
+ "loss": 16.593759375,
+ "step": 0
+ },
+ "hardware": {
+ "cuda_device_name": "NVIDIA GeForce GTX 1080",
+ "cuda_visible_devices": "5",
+ "device": "cuda:0",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1734868480,
+ "peak_memory_reserved_bytes": 2575302656,
+ "torch_version": "2.3.1+cu118"
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1",
+ "git_tracked_dirty": false
+ },
+ "schema_version": 1,
+ "split": {
+ "cifar_source_files": [
+ {
+ "bytes": 31035704,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_1",
+ "sha256": "54636561a3ce25bd3e19253c6b0d8538147b0ae398331ac4a2d86c6d987368cd"
+ },
+ {
+ "bytes": 31035320,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_2",
+ "sha256": "766b2cef9fbc745cf056b3152224f7cf77163b330ea9a15f9392beb8b89bc5a8"
+ },
+ {
+ "bytes": 31035999,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_3",
+ "sha256": "0f00d98ebfb30b3ec0ad19f9756dc2630b89003e10525f5e148445e82aa6a1f9"
+ },
+ {
+ "bytes": 31035696,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_4",
+ "sha256": "3f7bb240661948b8f4d53e36ec720d8306f5668bd0071dcb4e6c947f78e9682b"
+ },
+ {
+ "bytes": 31035623,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_5",
+ "sha256": "d91802434d8376bbaeeadf58a737e3a1b12ac839077e931237e0dcd43adcb154"
+ },
+ {
+ "bytes": 31035526,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/test_batch",
+ "sha256": "f53d8d457504f7cff4ea9e021afcf0e0ad8e24a91f3fc42091b8adef61157831"
+ }
+ ],
+ "dataset": "cifar10",
+ "evaluation_split": "validation",
+ "input_layout": "NCHW",
+ "input_shape": [
+ 3,
+ 32,
+ 32
+ ],
+ "loader_seed": 0,
+ "normalization_mean": [
+ 0.49140000343322754,
+ 0.4821999967098236,
+ 0.4465000033378601
+ ],
+ "normalization_std": [
+ 0.24699999392032623,
+ 0.2434999942779541,
+ 0.26159998774528503
+ ],
+ "split_from_training_only": true,
+ "split_seed": 2027,
+ "test_examples": 10000,
+ "train_examples": 10000,
+ "training_augmentation": "random_crop_32_padding_4_zero_then_horizontal_flip_p0.5",
+ "validation_class_counts": {
+ "0": 500,
+ "1": 500,
+ "2": 500,
+ "3": 500,
+ "4": 500,
+ "5": 500,
+ "6": 500,
+ "7": 500,
+ "8": 500,
+ "9": 500
+ },
+ "validation_examples": 5000,
+ "validation_index_sha256": "8328b206a97c420e49e54e3eca4abe3274c4756b084355784ea3fb8059e4515b"
+ },
+ "timing": {
+ "apical_warmup_wall_s": 24.720736503601074,
+ "evaluation_wall_s": 0.3711373805999756,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 25.092053651809692,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 202176,
+ "causal_scalar_observations": 800,
+ "components": {
+ "apical_projection_macs": 10238192640,
+ "apical_regression_macs": 10238192640,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 4107009331200,
+ "warmup_clean_forward_macs": 2053504665600
+ },
+ "definition": "multiply-accumulates in conv/linear maps; one local weight correlation equals one forward-weight MAC count; BP reverse is estimated as one weight-gradient plus one activation-gradient convolution per forward convolution; elementwise nonlinearities and optimizer arithmetic excluded",
+ "forward_macs_per_example": 40551040,
+ "logical_batch_loss_queries": 800,
+ "per_example_cross_entropy_terms": 101280,
+ "total_clean_forward_examples": 50640,
+ "total_forward_equivalent_examples": 151920,
+ "total_macs_estimate": 6180990382080
+ }
+}
diff --git a/results/oral_a_v3_calibration/vectorizer_subspace_etaA1.0.json b/results/oral_a_v3_calibration/vectorizer_subspace_etaA1.0.json
new file mode 100644
index 0000000..61c1891
--- /dev/null
+++ b/results/oral_a_v3_calibration/vectorizer_subspace_etaA1.0.json
@@ -0,0 +1,393 @@
+{
+ "apical_warmup": {
+ "first": {
+ "calibration_mse": 1.9545826862768833e-07,
+ "parameter_update_rms": 0.0004421066258581614,
+ "prediction_target_cosine": 0.0,
+ "target_power": 1.9545826862768833e-07
+ },
+ "last": {
+ "calibration_mse": 4.264974206656662e-05,
+ "parameter_update_rms": 0.006530676999099452,
+ "prediction_target_cosine": 0.0010701752475656546,
+ "target_power": 3.6848756204287994e-05
+ },
+ "mean": {
+ "calibration_mse": 0.00019906028706469792,
+ "parameter_update_rms": 0.01158272062540019,
+ "prediction_target_cosine": -0.0001920852658946125,
+ "target_power": 0.00019176158875808158
+ },
+ "steps": 400
+ },
+ "architecture": {
+ "adaptive_apical_parameters": 390592,
+ "base_width": 16,
+ "blocks_per_stage": 3,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "depth": 20,
+ "family": "CIFAR 6n+2 ResNet, option-A shortcuts",
+ "fixed_traffic_coefficients": 188416,
+ "forward_parameters": 269722,
+ "hidden_shapes": [
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 16,
+ 32,
+ 32
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 32,
+ 16,
+ 16
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ],
+ [
+ 64,
+ 8,
+ 8
+ ]
+ ],
+ "normalization": "batchnorm",
+ "predictor_parameters": 376832,
+ "residual_scale": 1.0,
+ "vectorizer_mode": "channel_gated",
+ "vectorizer_parameters": 13760
+ },
+ "args": {
+ "a_scale": 0.0,
+ "a_warmup_steps": 400,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "vectorizer_subspace",
+ "apical_seed": null,
+ "augment_train": 1,
+ "batch_size": 128,
+ "bn_eps": 1e-05,
+ "bn_momentum": 0.1,
+ "data_dir": "/home/yurenh2/sdrn/data",
+ "depth": 20,
+ "device": "cuda:0",
+ "epochs": 0,
+ "eta_A": 1.0,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.03,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mode": "sdil",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/oral_a_v3_calibration/vectorizer_subspace_etaA1.0.json",
+ "output_lr": 0.1,
+ "pert_directions": 1,
+ "pert_every": 4,
+ "pert_sigma": 0.01,
+ "perturb_seed": 1000,
+ "predictor_warmup_steps": 0,
+ "residual_scale": null,
+ "seed": 0,
+ "split_seed": 2027,
+ "train_limit": 10000,
+ "use_residual": 1,
+ "val_examples": 5000,
+ "vectorizer_mode": "channel_gated",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "vectorizer_parameter_gradients",
+ "counters": {
+ "apical_warmup_examples": 50640,
+ "calibration_event_examples": 50640,
+ "causal_scalar_observations": 800,
+ "logical_batch_loss_queries": 800,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 101280,
+ "perturbation_events": 400,
+ "perturbation_forward_examples": 101280,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.002233794856389674,
+ "innovation_negative_gradient_cosine": [
+ -0.0005113005172461271,
+ 0.000137713534059003,
+ 0.00045850942842662334,
+ 0.0053695435635745525,
+ 0.0032934178598225117,
+ 0.004654885269701481,
+ -0.0017309020040556788,
+ 0.00377076817676425,
+ -0.007445689290761948,
+ -0.0006793281063437462,
+ 0.009065194055438042,
+ 0.0052467635832726955,
+ 0.03067660890519619,
+ 0.010736962780356407,
+ 0.010169688612222672,
+ 0.014299523085355759,
+ -0.00701782526448369,
+ 0.028061751276254654,
+ 0.020663894712924957
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ -0.0005113005172461271,
+ 0.000137713534059003,
+ 0.00045850942842662334,
+ 0.0053695435635745525,
+ 0.0032934178598225117,
+ 0.004654885269701481,
+ -0.0017309020040556788,
+ 0.00377076817676425,
+ -0.007445689290761948,
+ -0.0006793281063437462,
+ 0.009065194055438042,
+ 0.0052467635832726955,
+ 0.03067660890519619,
+ 0.010736962780356407,
+ 0.010169688612222672,
+ 0.014299523085355759,
+ -0.00701782526448369,
+ 0.028061751276254654,
+ 0.020663894712924957
+ ],
+ "teaching_negative_gradient_cosine": [
+ -0.0005113005172461271,
+ 0.000137713534059003,
+ 0.00045850942842662334,
+ 0.0053695435635745525,
+ 0.0032934178598225117,
+ 0.004654885269701481,
+ -0.0017309020040556788,
+ 0.00377076817676425,
+ -0.007445689290761948,
+ -0.0006793281063437462,
+ 0.009065194055438042,
+ 0.0052467635832726955,
+ 0.03067660890519619,
+ 0.010736962780356407,
+ 0.010169688612222672,
+ 0.014299523085355759,
+ -0.00701782526448369,
+ 0.028061751276254654,
+ 0.020663894712924957
+ ],
+ "wall_s": 0.12106084823608398
+ },
+ "epochs": [],
+ "evaluation_protocol": {
+ "test_evaluations": 0,
+ "test_used_for_selection": false,
+ "validation_evaluations": 1
+ },
+ "final": {
+ "accuracy": 0.1004,
+ "epoch": 0,
+ "evaluation_split": "validation",
+ "finite": true,
+ "loss": 16.593759375,
+ "step": 0
+ },
+ "hardware": {
+ "cuda_device_name": "NVIDIA GeForce GTX 1080",
+ "cuda_visible_devices": "7",
+ "device": "cuda:0",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1734868480,
+ "peak_memory_reserved_bytes": 2575302656,
+ "torch_version": "2.3.1+cu118"
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1",
+ "git_tracked_dirty": false
+ },
+ "schema_version": 1,
+ "split": {
+ "cifar_source_files": [
+ {
+ "bytes": 31035704,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_1",
+ "sha256": "54636561a3ce25bd3e19253c6b0d8538147b0ae398331ac4a2d86c6d987368cd"
+ },
+ {
+ "bytes": 31035320,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_2",
+ "sha256": "766b2cef9fbc745cf056b3152224f7cf77163b330ea9a15f9392beb8b89bc5a8"
+ },
+ {
+ "bytes": 31035999,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_3",
+ "sha256": "0f00d98ebfb30b3ec0ad19f9756dc2630b89003e10525f5e148445e82aa6a1f9"
+ },
+ {
+ "bytes": 31035696,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_4",
+ "sha256": "3f7bb240661948b8f4d53e36ec720d8306f5668bd0071dcb4e6c947f78e9682b"
+ },
+ {
+ "bytes": 31035623,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/data_batch_5",
+ "sha256": "d91802434d8376bbaeeadf58a737e3a1b12ac839077e931237e0dcd43adcb154"
+ },
+ {
+ "bytes": 31035526,
+ "path": "/home/yurenh2/sdrn/data/cifar-10-batches-py/test_batch",
+ "sha256": "f53d8d457504f7cff4ea9e021afcf0e0ad8e24a91f3fc42091b8adef61157831"
+ }
+ ],
+ "dataset": "cifar10",
+ "evaluation_split": "validation",
+ "input_layout": "NCHW",
+ "input_shape": [
+ 3,
+ 32,
+ 32
+ ],
+ "loader_seed": 0,
+ "normalization_mean": [
+ 0.49140000343322754,
+ 0.4821999967098236,
+ 0.4465000033378601
+ ],
+ "normalization_std": [
+ 0.24699999392032623,
+ 0.2434999942779541,
+ 0.26159998774528503
+ ],
+ "split_from_training_only": true,
+ "split_seed": 2027,
+ "test_examples": 10000,
+ "train_examples": 10000,
+ "training_augmentation": "random_crop_32_padding_4_zero_then_horizontal_flip_p0.5",
+ "validation_class_counts": {
+ "0": 500,
+ "1": 500,
+ "2": 500,
+ "3": 500,
+ "4": 500,
+ "5": 500,
+ "6": 500,
+ "7": 500,
+ "8": 500,
+ "9": 500
+ },
+ "validation_examples": 5000,
+ "validation_index_sha256": "8328b206a97c420e49e54e3eca4abe3274c4756b084355784ea3fb8059e4515b"
+ },
+ "timing": {
+ "apical_warmup_wall_s": 26.799011945724487,
+ "evaluation_wall_s": 0.38268423080444336,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 27.181934356689453,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 202176,
+ "causal_scalar_observations": 800,
+ "components": {
+ "apical_projection_macs": 10238192640,
+ "apical_regression_macs": 10238192640,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 4107009331200,
+ "warmup_clean_forward_macs": 2053504665600
+ },
+ "definition": "multiply-accumulates in conv/linear maps; one local weight correlation equals one forward-weight MAC count; BP reverse is estimated as one weight-gradient plus one activation-gradient convolution per forward convolution; elementwise nonlinearities and optimizer arithmetic excluded",
+ "forward_macs_per_example": 40551040,
+ "logical_batch_loss_queries": 800,
+ "per_example_cross_entropy_terms": 101280,
+ "total_clean_forward_examples": 50640,
+ "total_forward_equivalent_examples": 151920,
+ "total_macs_estimate": 6180990382080
+ }
+}
diff --git a/results/oral_a_v3_calibration_gate.json b/results/oral_a_v3_calibration_gate.json
new file mode 100644
index 0000000..c0364bc
--- /dev/null
+++ b/results/oral_a_v3_calibration_gate.json
@@ -0,0 +1,115 @@
+{
+ "checks": {
+ "all_four_records_finite": true,
+ "v3_all_layer_at_least_0.05": true,
+ "v3_candidate_selected": true,
+ "v3_early_gain_over_v2_at_least_0.01": false,
+ "v3_early_third_at_least_0.01": false,
+ "v3_reaches_60pct_of_family_oracle": false
+ },
+ "confirmation_test_seeds_touched": false,
+ "family_oracle_early_third": 0.02396580002561188,
+ "matched_v2_reference": {
+ "calibration_mode": "channel_subspace",
+ "eta_A": 0.01,
+ "finite": true,
+ "metric_space": "channel_basis_moments",
+ "metrics": {
+ "all_layer_alignment": 0.052739956808325494,
+ "early_third_alignment": 0.007209058462952574,
+ "mean_calibration_mse": 0.2708950854477958,
+ "mean_parameter_update_rms": 0.011981565658686305,
+ "mean_prediction_target_cosine": 0.00018159585958168355,
+ "mean_target_power": 0.2708926473589623
+ },
+ "path": "results/oral_a_v3_calibration/channel_subspace_etaA0.01.json",
+ "source_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1"
+ },
+ "protocol": "oral_a_v3_vectorizer_causal_capture_v1",
+ "review_score_after": 5,
+ "review_score_before": 5,
+ "rows": [
+ {
+ "calibration_mode": "channel_subspace",
+ "eta_A": 0.01,
+ "finite": true,
+ "metric_space": "channel_basis_moments",
+ "metrics": {
+ "all_layer_alignment": 0.052739956808325494,
+ "early_third_alignment": 0.007209058462952574,
+ "mean_calibration_mse": 0.2708950854477958,
+ "mean_parameter_update_rms": 0.011981565658686305,
+ "mean_prediction_target_cosine": 0.00018159585958168355,
+ "mean_target_power": 0.2708926473589623
+ },
+ "path": "results/oral_a_v3_calibration/channel_subspace_etaA0.01.json",
+ "source_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1"
+ },
+ {
+ "calibration_mode": "vectorizer_subspace",
+ "eta_A": 0.01,
+ "finite": true,
+ "metric_space": "vectorizer_parameter_gradients",
+ "metrics": {
+ "all_layer_alignment": 0.0625791079364717,
+ "early_third_alignment": 0.007139206010227402,
+ "mean_calibration_mse": 0.00019177845804523746,
+ "mean_parameter_update_rms": 0.010982968905010668,
+ "mean_prediction_target_cosine": 0.0018218688400943384,
+ "mean_target_power": 0.00019176158875808158
+ },
+ "path": "results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json",
+ "source_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1"
+ },
+ {
+ "calibration_mode": "vectorizer_subspace",
+ "eta_A": 0.1,
+ "finite": true,
+ "metric_space": "vectorizer_parameter_gradients",
+ "metrics": {
+ "all_layer_alignment": 0.0309489116587333,
+ "early_third_alignment": 0.004803654310914378,
+ "mean_calibration_mse": 0.0001923398035258008,
+ "mean_parameter_update_rms": 0.011050459120615532,
+ "mean_prediction_target_cosine": 0.0014602501420039524,
+ "mean_target_power": 0.00019176158875808158
+ },
+ "path": "results/oral_a_v3_calibration/vectorizer_subspace_etaA0.1.json",
+ "source_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1"
+ },
+ {
+ "calibration_mode": "vectorizer_subspace",
+ "eta_A": 1.0,
+ "finite": true,
+ "metric_space": "vectorizer_parameter_gradients",
+ "metrics": {
+ "all_layer_alignment": 0.006801062087393611,
+ "early_third_alignment": 0.002233794856389674,
+ "mean_calibration_mse": 0.00019906028706469792,
+ "mean_parameter_update_rms": 0.01158272062540019,
+ "mean_prediction_target_cosine": -0.0001920852658946125,
+ "mean_target_power": 0.00019176158875808158
+ },
+ "path": "results/oral_a_v3_calibration/vectorizer_subspace_etaA1.0.json",
+ "source_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1"
+ }
+ ],
+ "score_change_rule": "mechanics/calibration alone cannot raise score",
+ "selected_v3": {
+ "calibration_mode": "vectorizer_subspace",
+ "eta_A": 0.01,
+ "finite": true,
+ "metric_space": "vectorizer_parameter_gradients",
+ "metrics": {
+ "all_layer_alignment": 0.0625791079364717,
+ "early_third_alignment": 0.007139206010227402,
+ "mean_calibration_mse": 0.00019177845804523746,
+ "mean_parameter_update_rms": 0.010982968905010668,
+ "mean_prediction_target_cosine": 0.0018218688400943384,
+ "mean_target_power": 0.00019176158875808158
+ },
+ "path": "results/oral_a_v3_calibration/vectorizer_subspace_etaA0.01.json",
+ "source_commit": "612196a53285b6efc44c0dd84699c7b57a6dc8e1"
+ },
+ "status": "failed"
+}