One dot product, three jobs
The same small piece of arithmetic, one activation dotted with one direction, keeps reappearing throughout this corpus's newest paper doing entirely different jobs depending on when it is taken and what it is taken against. This connective theme is about noticing that repetition rather than treating each use as a separate invention.
The page walks the dot product across five settings, reading it live at the end of a prompt to forecast a response, reading it slower across an entire finetuning run to diagnose how far a model already drifted, subtracting a baseline from it to audit a dataset before training, and narrowing that audit down to individual examples where it works best alongside, not instead of, a text-reading judge.
Persona vectors reduce to one operation used three times: project an activation onto a trait direction, a dot product reused for detection, diagnosis, and screening depending on when and what gets projected. Persona-vectors (2025) reads it live during deployment as projection-based persona monitoring, taking the last-prompt-token hidden state for a single prompt. Finetuning shift performs the same projection later and slower, on the difference between the mean pre- and post-finetuning activation across an entire evaluation set -- averaging and differencing that push its correlation with trait expression (r=0.76-0.97) tighter than monitoring's per-response correlation (r=0.75-0.83), at the cost of only being computable once training finishes. That same construction generalizes a move CAA (2023) made once: base-chat representation comparison held two frozen checkpoints' steering vectors up for a single retrospective cosine-similarity comparison, while finetuning shift turns that one-off snapshot into a repeatable gauge computable for any checkpoint pair, at any point in training, against any trait direction. Projection difference shares monitoring's bare primitive -- strip its subtraction term and it is the same inner product -- but the paper's own ablation shows the stripped version, "raw projection," predicts post-finetuning trait expression worse (r=0.784 versus 0.540 on Qwen) because it cannot separate a training corpus's domain variation from genuine trait signal. Sample-level filtering refines projection difference from a corpus-level go/no-go into a per-example keep/discard tool, and it complements rather than replaces a text-reading judge: GPT-4.1-mini alone filters hallucination best, projection difference alone filters sycophancy best, and combining the two gives the most consistent result across all three traits.