summaryrefslogtreecommitdiff
path: root/results
diff options
context:
space:
mode:
Diffstat (limited to 'results')
-rw-r--r--results/mirror_causal_capture/fixed_hfa.json430
-rw-r--r--results/mirror_causal_capture/wm_etaM0.03.json451
-rw-r--r--results/mirror_causal_capture/wm_etaM0.1.json451
-rw-r--r--results/mirror_causal_capture/wm_etaM0.3.json451
-rw-r--r--results/mirror_causal_capture_gate.json129
5 files changed, 1912 insertions, 0 deletions
diff --git a/results/mirror_causal_capture/fixed_hfa.json b/results/mirror_causal_capture/fixed_hfa.json
new file mode 100644
index 0000000..358ab84
--- /dev/null
+++ b/results/mirror_causal_capture/fixed_hfa.json
@@ -0,0 +1,430 @@
+{
+ "architecture": {
+ "adaptive_apical_parameters": 0,
+ "adaptive_feedback_parameters": 0,
+ "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_feedback_parameters": 267904,
+ "fixed_traffic_coefficients": 0,
+ "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": 0,
+ "residual_scale": 1.0,
+ "vectorizer_mode": null,
+ "vectorizer_parameters": 0
+ },
+ "args": {
+ "a_scale": 1.0,
+ "a_warmup_steps": 0,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "unit_targets",
+ "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",
+ "epochs": 0,
+ "eta_A": 0.01,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.1,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mirror_batch_size": 1,
+ "mirror_eta": 0.1,
+ "mirror_every": 16,
+ "mirror_noise_std": 1.0,
+ "mirror_seed": 3000,
+ "mirror_warmup_steps": 0,
+ "mode": "hfa",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/mirror_causal_capture/fixed_hfa.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": "spatial_template",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": null,
+ "counters": {
+ "apical_warmup_examples": 0,
+ "calibration_event_examples": 0,
+ "causal_scalar_observations": 0,
+ "logical_batch_loss_queries": 0,
+ "mirror_conv_examples": 0,
+ "mirror_events": 0,
+ "mirror_readout_examples": 0,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 0,
+ "perturbation_events": 0,
+ "perturbation_forward_examples": 0,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": -0.0002631632038780178,
+ "feedback_forward_cosine": [
+ 0.0008809715509414673,
+ -0.002320552244782448,
+ 0.03730485588312149,
+ 0.02497659996151924,
+ -0.03438456356525421,
+ -0.001257734838873148,
+ 0.023045765236020088,
+ 0.010684739798307419,
+ -0.013966654427349567,
+ -0.03158111870288849,
+ 0.009583890438079834,
+ -9.433389641344547e-05,
+ 0.004490766208618879,
+ -0.004784357734024525,
+ 0.004104882013052702,
+ 0.004543168004602194,
+ -0.005818712059408426,
+ 0.0014950999757274985,
+ 0.003767170011997223
+ ],
+ "feedback_forward_norm_ratio": [
+ 0.9996462464332581,
+ 1.0550107955932617,
+ 0.9593725800514221,
+ 1.0017613172531128,
+ 0.999921441078186,
+ 0.9631232619285583,
+ 0.9992203712463379,
+ 0.9976226687431335,
+ 1.0018895864486694,
+ 1.0030434131622314,
+ 1.0180330276489258,
+ 1.0107296705245972,
+ 0.9962885975837708,
+ 0.9891077876091003,
+ 1.0009011030197144,
+ 1.0021207332611084,
+ 1.0043002367019653,
+ 1.0021206140518188,
+ 0.9992877244949341
+ ],
+ "innovation_negative_gradient_cosine": [
+ -0.0005718562752008438,
+ -0.00062651711050421,
+ 0.001202113926410675,
+ 3.7641526432707906e-05,
+ 0.00048482773127034307,
+ -0.002105189021676779,
+ 0.0032924585975706577,
+ 0.0002729742554947734,
+ 0.007543369196355343,
+ -0.005317364819347858,
+ 0.009830433875322342,
+ -0.001097709173336625,
+ 0.02368866838514805,
+ 0.007433340419083834,
+ 0.04359162598848343,
+ 0.0057456037029623985,
+ 0.039965368807315826,
+ 0.0030560996383428574,
+ 0.07787258923053741
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ -0.0005718562752008438,
+ -0.00062651711050421,
+ 0.001202113926410675,
+ 3.7641526432707906e-05,
+ 0.00048482773127034307,
+ -0.002105189021676779,
+ 0.0032924585975706577,
+ 0.0002729742554947734,
+ 0.007543369196355343,
+ -0.005317364819347858,
+ 0.009830433875322342,
+ -0.001097709173336625,
+ 0.02368866838514805,
+ 0.007433340419083834,
+ 0.04359162598848343,
+ 0.0057456037029623985,
+ 0.039965368807315826,
+ 0.0030560996383428574,
+ 0.07787258923053741
+ ],
+ "teaching_negative_gradient_cosine": [
+ -0.0005718562752008438,
+ -0.00062651711050421,
+ 0.001202113926410675,
+ 3.7641526432707906e-05,
+ 0.00048482773127034307,
+ -0.002105189021676779,
+ 0.0032924585975706577,
+ 0.0002729742554947734,
+ 0.007543369196355343,
+ -0.005317364819347858,
+ 0.009830433875322342,
+ -0.001097709173336625,
+ 0.02368866838514805,
+ 0.007433340419083834,
+ 0.04359162598848343,
+ 0.0057456037029623985,
+ 0.039965368807315826,
+ 0.0030560996383428574,
+ 0.07787258923053741
+ ],
+ "wall_s": 0.23655247688293457
+ },
+ "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",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1730765824,
+ "peak_memory_reserved_bytes": 2168455168,
+ "torch_version": "2.3.1+cu118"
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "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": 0.0,
+ "evaluation_wall_s": 0.6214184761047363,
+ "mirror_warmup_wall_s": 0.0,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 0.6216380596160889,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 40108672,
+ "causal_scalar_observations": 0,
+ "components": {
+ "apical_projection_macs": 0,
+ "apical_regression_macs": 0,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "mirror_local_correlation_macs": 0,
+ "mirror_response_macs": 0,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 0,
+ "warmup_clean_forward_macs": 0
+ },
+ "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": 0,
+ "mirror_probe_examples": 0,
+ "mirror_readout_probe_examples": 0,
+ "per_example_cross_entropy_terms": 0,
+ "total_clean_forward_examples": 0,
+ "total_forward_equivalent_examples": 0,
+ "total_macs_estimate": 0
+ }
+}
diff --git a/results/mirror_causal_capture/wm_etaM0.03.json b/results/mirror_causal_capture/wm_etaM0.03.json
new file mode 100644
index 0000000..730fc44
--- /dev/null
+++ b/results/mirror_causal_capture/wm_etaM0.03.json
@@ -0,0 +1,451 @@
+{
+ "architecture": {
+ "adaptive_apical_parameters": 0,
+ "adaptive_feedback_parameters": 267904,
+ "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_feedback_parameters": 0,
+ "fixed_traffic_coefficients": 0,
+ "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": 0,
+ "residual_scale": 1.0,
+ "vectorizer_mode": null,
+ "vectorizer_parameters": 0
+ },
+ "args": {
+ "a_scale": 1.0,
+ "a_warmup_steps": 0,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "unit_targets",
+ "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",
+ "epochs": 0,
+ "eta_A": 0.01,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.1,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mirror_batch_size": 1,
+ "mirror_eta": 0.03,
+ "mirror_every": 16,
+ "mirror_noise_std": 1.0,
+ "mirror_seed": 3000,
+ "mirror_warmup_steps": 20,
+ "mode": "wm",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/mirror_causal_capture/wm_etaM0.03.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": "spatial_template",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "local_parent_child_response",
+ "counters": {
+ "apical_warmup_examples": 0,
+ "calibration_event_examples": 0,
+ "causal_scalar_observations": 0,
+ "logical_batch_loss_queries": 0,
+ "mirror_conv_examples": 20,
+ "mirror_events": 20,
+ "mirror_readout_examples": 20480,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 0,
+ "perturbation_events": 0,
+ "perturbation_forward_examples": 0,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.07526319908599059,
+ "feedback_forward_cosine": [
+ 0.6423558592796326,
+ 0.6203256845474243,
+ 0.6713337302207947,
+ 0.6542323231697083,
+ 0.627842366695404,
+ 0.6573559045791626,
+ 0.6544321775436401,
+ 0.6422699689865112,
+ 0.6268530488014221,
+ 0.6174283027648926,
+ 0.6333785057067871,
+ 0.6304293870925903,
+ 0.6135519742965698,
+ 0.5899033546447754,
+ 0.5910322070121765,
+ 0.5885388851165771,
+ 0.5822848677635193,
+ 0.5901939272880554,
+ 0.6447985172271729
+ ],
+ "feedback_forward_norm_ratio": [
+ 0.7114052176475525,
+ 0.7314509749412537,
+ 0.7061368823051453,
+ 0.7213137149810791,
+ 0.7001281976699829,
+ 0.6969802379608154,
+ 0.7267898917198181,
+ 0.7221032977104187,
+ 0.7144089937210083,
+ 0.7062307596206665,
+ 0.7290550470352173,
+ 0.7246045470237732,
+ 0.7437252998352051,
+ 0.7757689356803894,
+ 0.7866175770759583,
+ 0.7793990969657898,
+ 0.7799720168113708,
+ 0.78629070520401,
+ 0.713131844997406
+ ],
+ "innovation_negative_gradient_cosine": [
+ 0.042569708079099655,
+ 0.04908004403114319,
+ 0.07656459510326385,
+ 0.0719727873802185,
+ 0.10851815342903137,
+ 0.10287390649318695,
+ 0.14432156085968018,
+ 0.12590278685092926,
+ 0.1938195526599884,
+ 0.16362953186035156,
+ 0.2534205913543701,
+ 0.21206563711166382,
+ 0.3097170889377594,
+ 0.2400786280632019,
+ 0.4135889410972595,
+ 0.3309183716773987,
+ 0.5393624305725098,
+ 0.4047758877277374,
+ 0.685565710067749
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ 0.042569708079099655,
+ 0.04908004403114319,
+ 0.07656459510326385,
+ 0.0719727873802185,
+ 0.10851815342903137,
+ 0.10287390649318695,
+ 0.14432156085968018,
+ 0.12590278685092926,
+ 0.1938195526599884,
+ 0.16362953186035156,
+ 0.2534205913543701,
+ 0.21206563711166382,
+ 0.3097170889377594,
+ 0.2400786280632019,
+ 0.4135889410972595,
+ 0.3309183716773987,
+ 0.5393624305725098,
+ 0.4047758877277374,
+ 0.685565710067749
+ ],
+ "teaching_negative_gradient_cosine": [
+ 0.042569708079099655,
+ 0.04908004403114319,
+ 0.07656459510326385,
+ 0.0719727873802185,
+ 0.10851815342903137,
+ 0.10287390649318695,
+ 0.14432156085968018,
+ 0.12590278685092926,
+ 0.1938195526599884,
+ 0.16362953186035156,
+ 0.2534205913543701,
+ 0.21206563711166382,
+ 0.3097170889377594,
+ 0.2400786280632019,
+ 0.4135889410972595,
+ 0.3309183716773987,
+ 0.5393624305725098,
+ 0.4047758877277374,
+ 0.685565710067749
+ ],
+ "wall_s": 0.1595914363861084
+ },
+ "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",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1730634752,
+ "peak_memory_reserved_bytes": 2181038080,
+ "torch_version": "2.3.1+cu118"
+ },
+ "mirror_warmup": {
+ "first": {
+ "conv_batch_size": 1,
+ "mirror_estimate_rms": 0.1821084153449638,
+ "mirror_update_rms": 0.19537643727527548,
+ "readout_batch_size": 1024
+ },
+ "last": {
+ "conv_batch_size": 1,
+ "mirror_estimate_rms": 0.18073508053859827,
+ "mirror_update_rms": 0.17616583955544515,
+ "readout_batch_size": 1024
+ },
+ "mean": {
+ "conv_batch_size": 1.0,
+ "mirror_estimate_rms": 0.1793198434405597,
+ "mirror_update_rms": 0.18231021973395675,
+ "readout_batch_size": 1024.0
+ },
+ "steps": 20
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "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": 0.0,
+ "evaluation_wall_s": 0.4319612979888916,
+ "mirror_warmup_wall_s": 0.6505701541900635,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 1.0828416347503662,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 40108672,
+ "causal_scalar_observations": 0,
+ "components": {
+ "apical_projection_macs": 0,
+ "apical_regression_macs": 0,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "mirror_local_correlation_macs": 815267840,
+ "mirror_response_macs": 815267840,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 0,
+ "warmup_clean_forward_macs": 0
+ },
+ "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": 0,
+ "mirror_probe_examples": 20,
+ "mirror_readout_probe_examples": 20480,
+ "per_example_cross_entropy_terms": 0,
+ "total_clean_forward_examples": 0,
+ "total_forward_equivalent_examples": 0,
+ "total_macs_estimate": 1630535680
+ }
+}
diff --git a/results/mirror_causal_capture/wm_etaM0.1.json b/results/mirror_causal_capture/wm_etaM0.1.json
new file mode 100644
index 0000000..fe2506a
--- /dev/null
+++ b/results/mirror_causal_capture/wm_etaM0.1.json
@@ -0,0 +1,451 @@
+{
+ "architecture": {
+ "adaptive_apical_parameters": 0,
+ "adaptive_feedback_parameters": 267904,
+ "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_feedback_parameters": 0,
+ "fixed_traffic_coefficients": 0,
+ "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": 0,
+ "residual_scale": 1.0,
+ "vectorizer_mode": null,
+ "vectorizer_parameters": 0
+ },
+ "args": {
+ "a_scale": 1.0,
+ "a_warmup_steps": 0,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "unit_targets",
+ "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",
+ "epochs": 0,
+ "eta_A": 0.01,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.1,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mirror_batch_size": 1,
+ "mirror_eta": 0.1,
+ "mirror_every": 16,
+ "mirror_noise_std": 1.0,
+ "mirror_seed": 3000,
+ "mirror_warmup_steps": 20,
+ "mode": "wm",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/mirror_causal_capture/wm_etaM0.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": "spatial_template",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "local_parent_child_response",
+ "counters": {
+ "apical_warmup_examples": 0,
+ "calibration_event_examples": 0,
+ "causal_scalar_observations": 0,
+ "logical_batch_loss_queries": 0,
+ "mirror_conv_examples": 20,
+ "mirror_events": 20,
+ "mirror_readout_examples": 20480,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 0,
+ "perturbation_events": 0,
+ "perturbation_forward_examples": 0,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.44614077111085254,
+ "feedback_forward_cosine": [
+ 0.9858509302139282,
+ 0.9850707054138184,
+ 0.9865717887878418,
+ 0.9863734841346741,
+ 0.9856951236724854,
+ 0.9871067404747009,
+ 0.9731586575508118,
+ 0.9550088047981262,
+ 0.9547361135482788,
+ 0.9553405046463013,
+ 0.954055905342102,
+ 0.9542233943939209,
+ 0.8649038672447205,
+ 0.7760670185089111,
+ 0.7740859985351562,
+ 0.7775933742523193,
+ 0.7737482190132141,
+ 0.7765145301818848,
+ 0.9880185127258301
+ ],
+ "feedback_forward_norm_ratio": [
+ 0.8923099637031555,
+ 0.8901821374893188,
+ 0.8893439173698425,
+ 0.8961004018783569,
+ 0.8912216424942017,
+ 0.8968877196311951,
+ 0.9173983335494995,
+ 0.9227779507637024,
+ 0.914923369884491,
+ 0.9082641005516052,
+ 0.9238913059234619,
+ 0.9232812523841858,
+ 1.0126720666885376,
+ 1.1361547708511353,
+ 1.1570484638214111,
+ 1.1266412734985352,
+ 1.137105941772461,
+ 1.1543664932250977,
+ 0.8931937217712402
+ ],
+ "innovation_negative_gradient_cosine": [
+ 0.43270143866539,
+ 0.43993276357650757,
+ 0.44664573669433594,
+ 0.44853127002716064,
+ 0.4532058835029602,
+ 0.455827534198761,
+ 0.4590722918510437,
+ 0.4557003974914551,
+ 0.47527873516082764,
+ 0.4777085483074188,
+ 0.5002998113632202,
+ 0.49793124198913574,
+ 0.5148465633392334,
+ 0.4711496829986572,
+ 0.6135821342468262,
+ 0.6229155659675598,
+ 0.7880423665046692,
+ 0.758634626865387,
+ 0.9890177249908447
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ 0.43270143866539,
+ 0.43993276357650757,
+ 0.44664573669433594,
+ 0.44853127002716064,
+ 0.4532058835029602,
+ 0.455827534198761,
+ 0.4590722918510437,
+ 0.4557003974914551,
+ 0.47527873516082764,
+ 0.4777085483074188,
+ 0.5002998113632202,
+ 0.49793124198913574,
+ 0.5148465633392334,
+ 0.4711496829986572,
+ 0.6135821342468262,
+ 0.6229155659675598,
+ 0.7880423665046692,
+ 0.758634626865387,
+ 0.9890177249908447
+ ],
+ "teaching_negative_gradient_cosine": [
+ 0.43270143866539,
+ 0.43993276357650757,
+ 0.44664573669433594,
+ 0.44853127002716064,
+ 0.4532058835029602,
+ 0.455827534198761,
+ 0.4590722918510437,
+ 0.4557003974914551,
+ 0.47527873516082764,
+ 0.4777085483074188,
+ 0.5002998113632202,
+ 0.49793124198913574,
+ 0.5148465633392334,
+ 0.4711496829986572,
+ 0.6135821342468262,
+ 0.6229155659675598,
+ 0.7880423665046692,
+ 0.758634626865387,
+ 0.9890177249908447
+ ],
+ "wall_s": 0.15237092971801758
+ },
+ "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",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1730634752,
+ "peak_memory_reserved_bytes": 2181038080,
+ "torch_version": "2.3.1+cu118"
+ },
+ "mirror_warmup": {
+ "first": {
+ "conv_batch_size": 1,
+ "mirror_estimate_rms": 0.1821084153449638,
+ "mirror_update_rms": 0.19537643727527548,
+ "readout_batch_size": 1024
+ },
+ "last": {
+ "conv_batch_size": 1,
+ "mirror_estimate_rms": 0.18073508053859827,
+ "mirror_update_rms": 0.17050672066264347,
+ "readout_batch_size": 1024
+ },
+ "mean": {
+ "conv_batch_size": 1.0,
+ "mirror_estimate_rms": 0.1793198434405597,
+ "mirror_update_rms": 0.17517745811581048,
+ "readout_batch_size": 1024.0
+ },
+ "steps": 20
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "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": 0.0,
+ "evaluation_wall_s": 0.4133622646331787,
+ "mirror_warmup_wall_s": 0.5381975173950195,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 0.9518508911132812,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 40108672,
+ "causal_scalar_observations": 0,
+ "components": {
+ "apical_projection_macs": 0,
+ "apical_regression_macs": 0,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "mirror_local_correlation_macs": 815267840,
+ "mirror_response_macs": 815267840,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 0,
+ "warmup_clean_forward_macs": 0
+ },
+ "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": 0,
+ "mirror_probe_examples": 20,
+ "mirror_readout_probe_examples": 20480,
+ "per_example_cross_entropy_terms": 0,
+ "total_clean_forward_examples": 0,
+ "total_forward_equivalent_examples": 0,
+ "total_macs_estimate": 1630535680
+ }
+}
diff --git a/results/mirror_causal_capture/wm_etaM0.3.json b/results/mirror_causal_capture/wm_etaM0.3.json
new file mode 100644
index 0000000..5bdc1cb
--- /dev/null
+++ b/results/mirror_causal_capture/wm_etaM0.3.json
@@ -0,0 +1,451 @@
+{
+ "architecture": {
+ "adaptive_apical_parameters": 0,
+ "adaptive_feedback_parameters": 267904,
+ "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_feedback_parameters": 0,
+ "fixed_traffic_coefficients": 0,
+ "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": 0,
+ "residual_scale": 1.0,
+ "vectorizer_mode": null,
+ "vectorizer_parameters": 0
+ },
+ "args": {
+ "a_scale": 1.0,
+ "a_warmup_steps": 0,
+ "alignment_probe": 64,
+ "apical_calibration_mode": "unit_targets",
+ "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",
+ "epochs": 0,
+ "eta_A": 0.01,
+ "eta_P": 0.01,
+ "eval_every": 0,
+ "eval_split": "validation",
+ "learn_P": 0,
+ "loader_seed": 0,
+ "lr": 0.1,
+ "lr_gamma": 0.1,
+ "lr_milestones": "100,150",
+ "lr_schedule": "constant",
+ "max_steps": 0,
+ "mirror_batch_size": 1,
+ "mirror_eta": 0.3,
+ "mirror_every": 16,
+ "mirror_noise_std": 1.0,
+ "mirror_seed": 3000,
+ "mirror_warmup_steps": 20,
+ "mode": "wm",
+ "momentum": 0.9,
+ "normalization": "batchnorm",
+ "nuisance_scale": 0.0,
+ "out": "results/mirror_causal_capture/wm_etaM0.3.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": "spatial_template",
+ "warmup_epochs": 0,
+ "weight_decay": 0.0001,
+ "weight_scale": 1.0,
+ "width": 16
+ },
+ "calibration_metric_space": "local_parent_child_response",
+ "counters": {
+ "apical_warmup_examples": 0,
+ "calibration_event_examples": 0,
+ "causal_scalar_observations": 0,
+ "logical_batch_loss_queries": 0,
+ "mirror_conv_examples": 20,
+ "mirror_events": 20,
+ "mirror_readout_examples": 20480,
+ "ordinary_examples": 0,
+ "per_example_loss_terms": 0,
+ "perturbation_events": 0,
+ "perturbation_forward_examples": 0,
+ "predictor_warmup_examples": 0
+ },
+ "diagnostics": {
+ "early_third_mean": 0.11217667038242023,
+ "feedback_forward_cosine": [
+ 0.9873843193054199,
+ 0.9871039390563965,
+ 0.9865926504135132,
+ 0.9879629611968994,
+ 0.9872314929962158,
+ 0.9884469509124756,
+ 0.9534262418746948,
+ 0.9105166792869568,
+ 0.9125481247901917,
+ 0.913772463798523,
+ 0.9096975326538086,
+ 0.9096673727035522,
+ 0.7419459819793701,
+ 0.6068660616874695,
+ 0.6080100536346436,
+ 0.6111626625061035,
+ 0.6065012216567993,
+ 0.6100532412528992,
+ 0.9946354031562805
+ ],
+ "feedback_forward_norm_ratio": [
+ 1.0173327922821045,
+ 1.0102897882461548,
+ 0.9990898966789246,
+ 1.0101393461227417,
+ 1.016475796699524,
+ 1.0270946025848389,
+ 1.0546412467956543,
+ 1.1024858951568604,
+ 1.0919255018234253,
+ 1.0828874111175537,
+ 1.1040380001068115,
+ 1.1013133525848389,
+ 1.355318546295166,
+ 1.649383306503296,
+ 1.6965118646621704,
+ 1.6202107667922974,
+ 1.6564159393310547,
+ 1.6852145195007324,
+ 1.0073041915893555
+ ],
+ "innovation_negative_gradient_cosine": [
+ 0.10878093540668488,
+ 0.11161622405052185,
+ 0.11394535005092621,
+ 0.11137086153030396,
+ 0.1137349009513855,
+ 0.11361175030469894,
+ 0.112947016954422,
+ 0.11172385513782501,
+ 0.11992612481117249,
+ 0.1252836287021637,
+ 0.13624073565006256,
+ 0.13715432584285736,
+ 0.145131915807724,
+ 0.1452513039112091,
+ 0.241938978433609,
+ 0.30763790011405945,
+ 0.48825663328170776,
+ 0.5947017669677734,
+ 0.9949096441268921
+ ],
+ "normalization_state": "training_batch_stats_without_running_update",
+ "raw_negative_gradient_cosine": [
+ 0.10878093540668488,
+ 0.11161622405052185,
+ 0.11394535005092621,
+ 0.11137086153030396,
+ 0.1137349009513855,
+ 0.11361175030469894,
+ 0.112947016954422,
+ 0.11172385513782501,
+ 0.11992612481117249,
+ 0.1252836287021637,
+ 0.13624073565006256,
+ 0.13715432584285736,
+ 0.145131915807724,
+ 0.1452513039112091,
+ 0.241938978433609,
+ 0.30763790011405945,
+ 0.48825663328170776,
+ 0.5947017669677734,
+ 0.9949096441268921
+ ],
+ "teaching_negative_gradient_cosine": [
+ 0.10878093540668488,
+ 0.11161622405052185,
+ 0.11394535005092621,
+ 0.11137086153030396,
+ 0.1137349009513855,
+ 0.11361175030469894,
+ 0.112947016954422,
+ 0.11172385513782501,
+ 0.11992612481117249,
+ 0.1252836287021637,
+ 0.13624073565006256,
+ 0.13715432584285736,
+ 0.145131915807724,
+ 0.1452513039112091,
+ 0.241938978433609,
+ 0.30763790011405945,
+ 0.48825663328170776,
+ 0.5947017669677734,
+ 0.9949096441268921
+ ],
+ "wall_s": 0.14173507690429688
+ },
+ "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",
+ "device_total_memory_bytes": 8507949056,
+ "peak_memory_allocated_bytes": 1730634752,
+ "peak_memory_reserved_bytes": 2181038080,
+ "torch_version": "2.3.1+cu118"
+ },
+ "mirror_warmup": {
+ "first": {
+ "conv_batch_size": 1,
+ "mirror_estimate_rms": 0.1821084153449638,
+ "mirror_update_rms": 0.19537643727527548,
+ "readout_batch_size": 1024
+ },
+ "last": {
+ "conv_batch_size": 1,
+ "mirror_estimate_rms": 0.18073508053859827,
+ "mirror_update_rms": 0.1794914991970627,
+ "readout_batch_size": 1024
+ },
+ "mean": {
+ "conv_batch_size": 1.0,
+ "mirror_estimate_rms": 0.1793198434405597,
+ "mirror_update_rms": 0.179802025533114,
+ "readout_batch_size": 1024.0
+ },
+ "steps": 20
+ },
+ "protocol_family": "oral_a_cifar_local_resnet_development",
+ "provenance": {
+ "git_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "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": 0.0,
+ "evaluation_wall_s": 0.41222262382507324,
+ "mirror_warmup_wall_s": 0.47155046463012695,
+ "predictor_warmup_wall_s": 0.0,
+ "timing_excludes_data_loading_hashing_and_model_construction": true,
+ "total_timed_wall_s": 0.8840188980102539,
+ "train_wall_s": 0.0
+ },
+ "work": {
+ "apical_macs_per_example": 40108672,
+ "causal_scalar_observations": 0,
+ "components": {
+ "apical_projection_macs": 0,
+ "apical_regression_macs": 0,
+ "bp_reverse_macs_estimate": 0,
+ "local_weight_correlation_macs": 0,
+ "mirror_local_correlation_macs": 815267840,
+ "mirror_response_macs": 815267840,
+ "ordinary_forward_macs": 0,
+ "perturbation_forward_macs": 0,
+ "warmup_clean_forward_macs": 0
+ },
+ "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": 0,
+ "mirror_probe_examples": 20,
+ "mirror_readout_probe_examples": 20480,
+ "per_example_cross_entropy_terms": 0,
+ "total_clean_forward_examples": 0,
+ "total_forward_equivalent_examples": 0,
+ "total_macs_estimate": 1630535680
+ }
+}
diff --git a/results/mirror_causal_capture_gate.json b/results/mirror_causal_capture_gate.json
new file mode 100644
index 0000000..8023860
--- /dev/null
+++ b/results/mirror_causal_capture_gate.json
@@ -0,0 +1,129 @@
+{
+ "checks": {
+ "all_four_records_finite": true,
+ "all_layer_at_least_0.50": true,
+ "candidate_selected": true,
+ "early_third_at_least_0.40": true,
+ "feedback_norm_ratios_in_0.5_to_1.5": true,
+ "mean_feedback_forward_cosine_at_least_0.85": true,
+ "zero_task_loss_queries": true
+ },
+ "confirmation_test_seeds_touched": false,
+ "matched_fixed_hfa": {
+ "finite": true,
+ "logical_batch_loss_queries": 0,
+ "metrics": {
+ "all_layer_alignment": 0.01127886730950865,
+ "early_third_alignment": -0.0002631632038780178,
+ "max_feedback_forward_norm_ratio": 1.0550107955932617,
+ "mean_feedback_forward_cosine": 0.0016142042954207252,
+ "min_feedback_forward_norm_ratio": 0.9593725800514221
+ },
+ "mirror_eta": null,
+ "mirror_events": 0,
+ "mode": "hfa",
+ "path": "results/mirror_causal_capture/fixed_hfa.json",
+ "source_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "total_macs": 0
+ },
+ "protocol": "normalized_response_mirror_capture_v1",
+ "review_score_after": 5,
+ "review_score_before": 5,
+ "rows": [
+ {
+ "finite": true,
+ "logical_batch_loss_queries": 0,
+ "metrics": {
+ "all_layer_alignment": 0.01127886730950865,
+ "early_third_alignment": -0.0002631632038780178,
+ "max_feedback_forward_norm_ratio": 1.0550107955932617,
+ "mean_feedback_forward_cosine": 0.0016142042954207252,
+ "min_feedback_forward_norm_ratio": 0.9593725800514221
+ },
+ "mirror_eta": null,
+ "mirror_events": 0,
+ "mode": "hfa",
+ "path": "results/mirror_causal_capture/fixed_hfa.json",
+ "source_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "total_macs": 0
+ },
+ {
+ "finite": true,
+ "logical_batch_loss_queries": 0,
+ "metrics": {
+ "all_layer_alignment": 0.23519715333455488,
+ "early_third_alignment": 0.07526319908599059,
+ "max_feedback_forward_norm_ratio": 0.7866175770759583,
+ "mean_feedback_forward_cosine": 0.6251863680387798,
+ "mean_mirror_estimate_rms": 0.1793198434405597,
+ "mean_mirror_update_rms": 0.18231021973395675,
+ "min_feedback_forward_norm_ratio": 0.6969802379608154
+ },
+ "mirror_eta": 0.03,
+ "mirror_events": 20,
+ "mode": "wm",
+ "path": "results/mirror_causal_capture/wm_etaM0.03.json",
+ "source_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "total_macs": 1630535680
+ },
+ {
+ "finite": true,
+ "logical_batch_loss_queries": 0,
+ "metrics": {
+ "all_layer_alignment": 0.5421591746179681,
+ "early_third_alignment": 0.44614077111085254,
+ "max_feedback_forward_norm_ratio": 1.1570484638214111,
+ "mean_feedback_forward_cosine": 0.9154801933388961,
+ "mean_mirror_estimate_rms": 0.1793198434405597,
+ "mean_mirror_update_rms": 0.17517745811581048,
+ "min_feedback_forward_norm_ratio": 0.8893439173698425
+ },
+ "mirror_eta": 0.1,
+ "mirror_events": 20,
+ "mode": "wm",
+ "path": "results/mirror_causal_capture/wm_etaM0.1.json",
+ "source_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "total_macs": 1630535680
+ },
+ {
+ "finite": true,
+ "logical_batch_loss_queries": 0,
+ "metrics": {
+ "all_layer_alignment": 0.22811388694926313,
+ "early_third_alignment": 0.11217667038242023,
+ "max_feedback_forward_norm_ratio": 1.6965118646621704,
+ "mean_feedback_forward_cosine": 0.8533434397295901,
+ "mean_mirror_estimate_rms": 0.1793198434405597,
+ "mean_mirror_update_rms": 0.179802025533114,
+ "min_feedback_forward_norm_ratio": 0.9990898966789246
+ },
+ "mirror_eta": 0.3,
+ "mirror_events": 20,
+ "mode": "wm",
+ "path": "results/mirror_causal_capture/wm_etaM0.3.json",
+ "source_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "total_macs": 1630535680
+ }
+ ],
+ "score_change_rule": "inherited baseline capture cannot raise score",
+ "selected_wm": {
+ "finite": true,
+ "logical_batch_loss_queries": 0,
+ "metrics": {
+ "all_layer_alignment": 0.5421591746179681,
+ "early_third_alignment": 0.44614077111085254,
+ "max_feedback_forward_norm_ratio": 1.1570484638214111,
+ "mean_feedback_forward_cosine": 0.9154801933388961,
+ "mean_mirror_estimate_rms": 0.1793198434405597,
+ "mean_mirror_update_rms": 0.17517745811581048,
+ "min_feedback_forward_norm_ratio": 0.8893439173698425
+ },
+ "mirror_eta": 0.1,
+ "mirror_events": 20,
+ "mode": "wm",
+ "path": "results/mirror_causal_capture/wm_etaM0.1.json",
+ "source_commit": "37cf78b7f696c9eedc0745ebdaa656bff0ab2f81",
+ "total_macs": 1630535680
+ },
+ "status": "passed"
+}