Skip to content

Presentation slides - #11

Merged
juaristi22 merged 8 commits into
mainfrom
presentation
Jul 1, 2026
Merged

Presentation slides#11
juaristi22 merged 8 commits into
mainfrom
presentation

Conversation

@juaristi22

@juaristi22 juaristi22 commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Presentation — L0 regularization for subnational microsimulation calibration (IMA 2026)

A standalone talk deck for the paper, plus speaker notes. ~23-minute talk, deliberately front-loaded on context because the paper results are a proof of concept.

Stack

  • Next.js (App Router) + React + TypeScript, Tailwind CSS, KaTeX for math, @policyengine/ui-kit for PolicyEngine styling. No reveal.js — a small custom slideshow (SlideshowViewer).
  • Scripts: npm run dev (local preview), npm run build, npm run lint, npm run typecheck.

Layout

  • slides/config.ts — ordered list of the 28 slides + deck metadata (title, speakers, footer).
  • slides/l0-ima-2026.tsx — every slide as a React component.
  • components/content/* — reusable on-slide visuals: GeographyHierarchy, PipelineDiagram, HardConcreteGate, RegimeQuantileViz, ScaleLadder, DonorFusion, Figure, StatNumber, EquationCard, TranslationTable, …
  • components/core/*SlideshowViewer, Slide, BasePathImage (basePath-aware images for static hosting).
  • components/layout/*CoverSlide, SectionSlide, EndSlide, SlideTitle.
  • public/figures/* — the three result plots (f1_frontier, f3_generalization_gap, f6_operability) copied from the 4way-l1-cap1 run; the other "figures" are rendered as custom React components, not images.
  • TALKING_POINTS.md — per-slide speaker notes in KEY MESSAGE / SAY / TRANSITION format, plus a timing budget.

Talk structure (28 slides)

  • 0 · Open — title, roadmap
  • 1 · Motivation — policy goal, nested targets, build-big-then-prune
  • 2 · Data engine — Ledger (facts) + Populace (frame), pipeline
  • 3 · Imputation — representativeness, variability (quantile regression forests), scale
  • 4 · Reduction + method — the pruning problem, four methods, Louizos L0 foundation, translation to records, our objective, production tie
  • 5 · Proof of concept — experiment design, calibration objective, main frontier (f1), generalization (f3), reading results honestly / operability (f6)
  • 6 · Close — future work, takeaway, questions

Data alignment

All numbers and result figures reflect the final four-way sweep (4way-l1-cap1, production loss cap c=1): informed L0 vs L1 vs random+reweight vs survey-weight. The narrative leads with the median; the mean is reported as tail-sensitive. Classical calibrators (GREG/IPF/raking/balanced sampling) are framed as related work, not baselines.

Static export

No built-in PDF/PPTX export today (web deck, not reveal.js). PDF is easy to add via a headless-browser script that prints each ?slide=N to one page; PPTX would be image-per-slide (flat slides, not editable native objects).

@juaristi22
juaristi22 marked this pull request as draft June 25, 2026 23:57
juaristi22 and others added 6 commits June 28, 2026 23:32
Restructure the presentation from 19 to ~28 sectioned slides, front-loaded on
context per the proof-of-concept framing (open -> motivation -> data engine ->
imputation mechanics -> Louizos foundation + our translation -> proof of concept
-> close), targeting a 15/8 split of a ~23 min talk.

- Comparison is now four methods, two families: informed L0 and L1 (convex
  sparse) vs random+reweight and survey-weight sampling (per l0-paper PR #10).
- Add KaTeX for rigorous math; new AutoFitMath wrapper scales equations to fit
  their boxes so nothing overflows during a live talk; 3-term loss is multi-line.
- Differentiate the two equation slides: slide 18 is the training objective,
  slide 22 is the shared evaluation loss with a four-method "held fixed" panel.
- New PE-styled diagram components: GeographyHierarchy, FactAnatomy, FrameAnatomy,
  DonorFusion, RegimeQuantileViz, ScaleLadder, HardConcreteGate, TranslationTable.
- ScaleLadder shows generation growth (survey spine -> 30M) then a prune step
  that drops below the generate-big peak.
- Embed speaker headshot on the cover slide (optional headshot on SpeakerInfo).
- Add TALKING_POINTS.md: detailed per-slide bullets for the first half; the
  results half is stubbed and deferred until the final 4-way sweep numbers land.

Verified: typecheck, lint, and production build all pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Update the presentation slides to the final four-way sweep (run 4way-l1-cap1, c=1):

- Replace the result placeholders with the generated plots: f1_frontier (main
  result, slide 23), f3_generalization_gap (slide 24), and f6_operability (added
  to the operability slide). Add a Figure component that renders the PNGs at full
  size with no surrounding box, so the plots read large instead of small-in-a-card.
- Fix the calibration-objective note to the production cap c=1 (was c=10); drop the
  "final sweep still pending" caveat on the experiment-design slide.
- Geography slide: label the national level as the United States and note the same
  nesting applies to any country with its own subnational divisions.
- "Four methods" slide: drop the two group labels (survey-weight fits then samples,
  so "sample, then fit" was wrong for it) and sharpen the ordering wording.
- Operability slide: replace the three heavy cards with a compact left-accent list
  and widen the figure column so the graph leads.

Talking points (TALKING_POINTS.md) left uncommitted for author review.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…; recompile PDF

Talking points (presentation/TALKING_POINTS.md):
- Align numbers and framing to the final four-way sweep (run 4way-l1-cap1, c=1).
- Slide 18: explain the L2 penalty acts on weight magnitude, which keeps population
  mass spread across records and the effective sample size high.
- Restructure the second half (slides 20-28) into the first half's
  KEY MESSAGE / SAY / TRANSITION format.
- Frame classical calibrators (GREG, IPF, raking, balanced sampling) as related work
  and robustness checks, not baselines.

Deck (presentation/slides/l0-ima-2026.tsx):
- Tension slide: drop "calibrate" (the dataset is calibrated, not too large to calibrate).
- Arch slide: 4.6k -> 4,393 active US targets, matching the paper.
- Main frontier: state the median/mean split (baselines overtake on the median; informed
  L0 keeps the lower mean throughout).

Paper (paper/sections/future_work.tex, paper/main.pdf):
- Reframe future work for consistency with the expanded literature review: classical
  calibration methods are robustness checks on the categorical-margin subsets where their
  assumptions hold, not a full-surface GREG/IPF benchmark. Recompile main.pdf.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
`npm run export:pdf` drives headless Chromium over each `?slide=N` view,
screenshots it at 1080p (2x), and assembles one PDF page per slide at the standard
16:9 size. Screenshots (not print-to-PDF) keep the output identical to the
on-screen render (KaTeX, gradients, custom layout). Slide count is read from
slides/config.ts (override with SLIDE_COUNT); SKIP_BUILD=1 reuses an existing build.

One-time setup: `npm i -D playwright pdf-lib && npx playwright install chromium`.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@juaristi22
juaristi22 marked this pull request as ready for review June 28, 2026 23:46
juaristi22 and others added 2 commits June 29, 2026 10:48
"Ledger" is the public name of the arch-data fact store, so the deck and speaker
notes now say Ledger everywhere the product is named (the literal arch-data repo
name is unchanged). Renames the ArchSlide component to LedgerSlide and updates the
data-engine section, the Ledger slide, FactAnatomy, and the talking points. The
paper already uses Ledger.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@juaristi22
juaristi22 merged commit 762052c into main Jul 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant