summaryrefslogtreecommitdiff
path: root/sdil
diff options
context:
space:
mode:
authorYurenHao0426 <Blackhao0426@gmail.com>2026-07-22 13:25:15 -0500
committerYurenHao0426 <Blackhao0426@gmail.com>2026-07-22 13:25:15 -0500
commitd4a521072a25d8afdd62021f43538d7dad7586fd (patch)
treec6d2dc1b6bdb9c857970067473e5df45906dbdec /sdil
parentc24a6a575bce15e7d7da541ecb752c65b5e68e47 (diff)
protocol: freeze hierarchical causal-capture funnel
Diffstat (limited to 'sdil')
-rw-r--r--sdil/conv.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/sdil/conv.py b/sdil/conv.py
index 55cdc62..ba4e980 100644
--- a/sdil/conv.py
+++ b/sdil/conv.py
@@ -748,11 +748,21 @@ def conv_hierarchical_alignment_report(net, x, y):
for left, right in zip(teaching, negative_gradients)]
for parameter in parameters:
parameter.requires_grad_(False)
+ feedback_pairs = list(zip(net.Q[1:], net.W[1:])) + [
+ (net.R_out, -net.W_out.t())]
+ feedback_forward_cosine = [float(F.cosine_similarity(
+ feedback.flatten(), target.flatten(), dim=0))
+ for feedback, target in feedback_pairs]
+ feedback_forward_norm_ratio = [
+ float(feedback.norm() / target.norm().clamp_min(1e-30))
+ for feedback, target in feedback_pairs]
return {
"normalization_state": "training_batch_stats_without_running_update",
"teaching_negative_gradient_cosine": values,
"raw_negative_gradient_cosine": values,
"innovation_negative_gradient_cosine": values,
+ "feedback_forward_cosine": feedback_forward_cosine,
+ "feedback_forward_norm_ratio": feedback_forward_norm_ratio,
}