diff options
Diffstat (limited to 'experiments/plot_main_figures.py')
| -rw-r--r-- | experiments/plot_main_figures.py | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/experiments/plot_main_figures.py b/experiments/plot_main_figures.py index c459e36..9f719d9 100644 --- a/experiments/plot_main_figures.py +++ b/experiments/plot_main_figures.py @@ -396,6 +396,11 @@ def plot_tradeoff(root, outdir, strict): rows = sg.get((name, depth), []) if not rows: continue + ax.scatter( + [r["final"]["wall_s"] for r in rows], + [100 * r["final"]["test_acc"] for r in rows], + marker=MARKERS[name], s=12, color=COLORS[name], alpha=0.18, + linewidths=0, zorder=1) acc, acc_sd = mean_sd([100 * r["final"]["test_acc"] for r in rows]) wall, wall_sd = mean_sd([r["final"]["wall_s"] for r in rows]) error_point(ax, wall, acc, wall_sd, acc_sd, name, @@ -430,10 +435,16 @@ def plot_tradeoff(root, outdir, strict): rows = ep.get((name, depth), []) if not rows: continue + point_marker = "D" if depth == 1 else "o" + ax.scatter( + [r["final"]["wall_s"] for r in rows], + [100 * r["final"]["test_acc"] for r in rows], + marker=point_marker, s=14, color=COLORS[name], alpha=0.22, + linewidths=0, zorder=1) acc, acc_sd = mean_sd([100 * r["final"]["test_acc"] for r in rows]) wall, wall_sd = mean_sd([r["final"]["wall_s"] for r in rows]) error_point(ax, wall, acc, wall_sd, acc_sd, name, - marker="D" if depth == 1 else "o", + marker=point_marker, label=f"{name}, d{depth}") xs.append(wall); ys.append(acc) if len(xs) == 2: @@ -552,9 +563,10 @@ def figure_captions(preview): prefix = "**PREVIEW — incomplete cells remain.**\n\n" if preview else "" return prefix + """# Main figure captions -**Figure 1 | Accuracy–cost trade-offs for local learning.** Points and error bars show mean ± -sample standard deviation across five initialization seeds; wall time was measured on a single -GTX 1080. **a,** CIFAR-10 test accuracy versus wall time for width-64 residual MLPs trained for +**Figure 1 | Accuracy–cost trade-offs for local learning.** Large points and error bars show mean ± +sample standard deviation across five initialization seeds; small translucent points show the +individual seeds. Wall time was measured on a single GTX 1080. **a,** CIFAR-10 test accuracy versus +wall time for width-64 residual MLPs trained for five epochs. The black line is the mean-based nondominated frontier among local-learning methods. BP is a nonlocal reference and is excluded from frontier construction. Labels give hidden depth. **b,** SDIL versus canonical equilibrium propagation (EP) on exact 784–500–10 (d1) and |
