summaryrefslogtreecommitdiff
path: root/sdil
diff options
context:
space:
mode:
authorYurenHao0426 <Blackhao0426@gmail.com>2026-07-22 17:07:08 -0500
committerYurenHao0426 <Blackhao0426@gmail.com>2026-07-22 17:07:08 -0500
commitb56c6118d57e810cc1b2b16eb36c9c474df30174 (patch)
tree25d40fc06c04ce988d72aad5aef6f3d1a5e93648 /sdil
parent6b85249c718cb366b13355a09e0765cb40c4399d (diff)
experiment: support audited dynamic projection endpoints
Diffstat (limited to 'sdil')
-rw-r--r--sdil/conv.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/sdil/conv.py b/sdil/conv.py
index 61fee3a..ebb29ab 100644
--- a/sdil/conv.py
+++ b/sdil/conv.py
@@ -1524,7 +1524,8 @@ def conv_hierarchical_alignment_report(net, x, y):
return report
-def conv_kp_mixed_traffic_alignment_report(net, x, y, rule):
+def conv_kp_mixed_traffic_alignment_report(
+ net, x, y, rule, neutral_projection=False):
"""Same-state audit of instruction/raw/innovation/matched directions."""
if not isinstance(net, CIFARKPMixedTrafficResNet):
raise TypeError("mixed-traffic audit requires CIFARKPMixedTrafficResNet")
@@ -1541,7 +1542,8 @@ def conv_kp_mixed_traffic_alignment_report(net, x, y, rule):
- F.one_hot(y, net.n_classes).to(forward["logits"].dtype))
instruction = net.hierarchical_teaching(output_error, forward)
components = net.mixed_apical_components(
- instruction, forward["hiddens"], rule, compute_matched=True)
+ instruction, forward["hiddens"], rule, compute_matched=True,
+ neutral_projection=neutral_projection)
def align(values):
return [float(F.cosine_similarity(
@@ -1584,6 +1586,7 @@ def conv_kp_mixed_traffic_alignment_report(net, x, y, rule):
traffic_power / instruction_power),
"predictor_traffic_residual_rms_ratio": (
net.predictor_traffic_residual_rms_ratio(forward["hiddens"])),
+ "neutral_projection": components["neutral_projection"],
}
report.update(hierarchical_feedback_tracking_report(net))
for parameter in parameters: