summaryrefslogtreecommitdiff
path: root/scripts/README.md
blob: 3124261912ada6287395c499b0f2d2a68e341fc8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# Scripts

## Static Alignment Beta Law

Run:

```bash
python scripts/static_alignment_beta.py --rows 16 --cols 16 --samples 20000 --seed 7 --plot
```

This samples independent matrix pairs \(A,B\), computes:

\[
Q =
\frac{\langle A,B\rangle_F^2}{\|A\|_F^2\|B\|_F^2},
\]

and compares the empirical distribution with:

\[
\mathrm{Beta}\left(\frac12,\frac{D-1}{2}\right),
\qquad
D=\texttt{rows}\times\texttt{cols}.
\]

Outputs are written under `outputs/static_alignment_beta/`, which is ignored by Git.

## Capacity Scaling

Run:

```bash
python scripts/capacity_scaling.py --plot
```

This computes:

\[
C_l(q)
=
-\log\Pr(Q_l\ge q)
\]

for equal-width feedback blocks with \(D=n^2\), then sums over the number of feedback-aligned layers:

\[
C_{\mathrm{all}}=\sum_l C_l(q_l).
\]

The default run compares two regimes:

- `fixed`: \(q=0.01\), where \(C_{\mathrm{all}}\) grows like \(\Theta(Ln^2)\).
- `chance`: \(q=1/D\), where \(C_{\mathrm{all}}\) grows mostly with \(L\).

Outputs are written under `outputs/capacity_scaling/`.