diff options
| author | YurenHao0426 <Blackhao0426@gmail.com> | 2026-07-22 13:25:15 -0500 |
|---|---|---|
| committer | YurenHao0426 <Blackhao0426@gmail.com> | 2026-07-22 13:25:15 -0500 |
| commit | d4a521072a25d8afdd62021f43538d7dad7586fd (patch) | |
| tree | c6d2dc1b6bdb9c857970067473e5df45906dbdec /sdil | |
| parent | c24a6a575bce15e7d7da541ecb752c65b5e68e47 (diff) | |
protocol: freeze hierarchical causal-capture funnel
Diffstat (limited to 'sdil')
| -rw-r--r-- | sdil/conv.py | 10 |
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, } |
