---
kind: concept
slug: distributional-alignment
title: Distributional alignment
summary: >-
  Making a model's answer distribution over a survey question match a human group's answer shares. Routes: prompt steering; fine-tuning on group response shares (lower Wasserstein distance, author-reported; needs survey data and GPUs); demographic backstories. Others score single-respondent agreement, test wording biases, or score a national survey benchmark.
tags: [alignment, survey-simulation, opinion-prediction, cultural-alignment, evaluation, silicon-sampling]
papers: ["1807.07258", "2005.03545", "2209.06899", "2311.04076", "2402.13231", "2402.13605", "2502.16761"]
related: [prompt-engineering, low-rank-adaptation, instruction-tuning, calibration, llm-evaluation, benchmark-validity, multilingual-evaluation, domain-adaptation]
status: draft
updated_at: 2026-10-19
---

## Overview

The goal is that, for a question and a population group, the model's
probabilities over the answer options match the share of that group who would
pick each option. This is different from getting one answer right: a model can
pick the modal answer and still miss how much a group disagrees internally.
Suh et al. measure this with a Wasserstein distance (WD) over ordinal answer
values, where lower is better [arxiv:2502.16761 §3.3].

The main tension is between steering a model with a prompt and training it on
survey data. The paper reports that prompting alone rarely reproduces the
spread of human answers [arxiv:2502.16761 §1, §4.2]. Its own method is a
fine-tuned variant that targets whole answer distributions [arxiv:2502.16761 §3.1].

A second paper asks a related question from the other side. Tjuatja et al. do
not try to match a group's answers. They test whether a model's answers move
under survey-wording changes in the same direction as human answers do
[arxiv:2311.04076 §1, §2.1]. Their finding is that a model with good opinion
match does not necessarily show human-like response biases
[arxiv:2311.04076 §5].

A third paper works at the level of single respondents. AlKhamissi et al.
give a model a demographic persona and score how often its answer matches
the answer that one real respondent gave, for the World Values Survey in
Egypt and in the US [arxiv:2402.13231 §4.2, §4.5]. This measures agreement
with individuals, not with a group's distribution, so its numbers are not
comparable with the WD values above.

A fourth paper, Argyle et al., conditions the model on a first-person backstory
built from one real respondent's survey answers. Each backstory gives one
simulated subject, and the paper checks group-level vote shares and
associations between survey items against the real sample
[arxiv:2209.06899 §4, §6]. It was run on one model only, GPT-3 Davinci
[arxiv:2209.06899 §2].

A fifth paper, Lee et al. (KorNAT), builds a benchmark that scores each
multiple-choice answer by the share of a national survey that chose it. It
rewards a model for picking a popular answer, and it does not test how the
model's answers spread [arxiv:2402.13605 §4].

The phrase has two other meanings in machine learning, and neither is about
survey answers. Hazarika et al. align the distributions of text, visual and
acoustic representations with a central-moment-discrepancy loss
[arxiv:2005.03545 §3.5.1]. Wang et al. align source and target image features
for unsupervised domain adaptation. They match both the overall feature
distribution and each class's conditional distribution, and weight the two
using estimates from the data [arxiv:1807.07258 §3.4]. Both align
representations or features, so their results say nothing about how a human
group answers a survey.

## Variants

### Steering with prompts

Describe the group in the prompt and read the option probabilities for the
answer letters. The paper tests three zero-shot formats (QA, BIO and PORTRAY)
and a few-shot format with five example questions, chosen by embedding
similarity [arxiv:2502.16761 §4.1, app. D]. Best zero-shot WD is 0.138 on
OpinionQA and 0.160 on SubPOP-Eval, both for Llama-3-70B with QA prompts
[arxiv:2502.16761 tab. 1]. Card: [Suh et al., 2025](/papers/2502.16761).

The paper also compares base and chat models. With Llama-2-7B, zero-shot WD on
OpinionQA is 0.173 for the base model and 0.308 for the chat model
[arxiv:2502.16761 app. C.2]. The authors use base models for this reason.

### Fine-tuning on group response distributions (SubPOP-FT)

Train with LoRA on pairs of (steering prompt and question, human distribution
over the options), minimising the forward KL from the human distribution to
the model [arxiv:2502.16761 §3.1, app. B]. LoRA rank is 8 and alpha is 32
[arxiv:2502.16761 app. B]. The reported WD is 0.094 to 0.106 on OpinionQA and
0.096 to 0.121 on SubPOP-Eval across the four base models
[arxiv:2502.16761 tab. 1]. Gains also hold for subgroups absent from training:
the mean relative improvement across unseen age groups is 44.7%
[arxiv:2502.16761 §4.3]. Card: [Suh et al., 2025](/papers/2502.16761).

Training data are a few thousand multiple-choice questions with group-level
response shares, which the paper builds from public survey microdata
[arxiv:2502.16761 §3.2, app. A.3]. The paper reports NVIDIA A100 80GB hardware
and gives no per-run time [arxiv:2502.16761 app. B].

### Persona simulation scored by agreement

The model gets a persona built from six fields (region, sex, age, social
class, education level and marital status), then a survey question with
numbered options [arxiv:2402.13231 §4.2, fig. 2]. The paper uses 30 questions
from World Values Survey wave 7, four paraphrases each, and 303 personas per
country whose demographics match across the two surveys
[arxiv:2402.13231 §4.1, §4.2]. Each answer is scored twice: hard agreement is
an exact match, and soft agreement gives partial credit on ordinal items
[arxiv:2402.13231 §4.5]. Averaged over English and Arabic prompts, GPT-3.5
gets 48.61 soft and 25.99 hard on the Egypt survey, and 64.86 soft and 39.29
hard on the US survey [arxiv:2402.13231 tab. 3]. Prompting in the dominant
language of the surveyed country raises soft agreement for GPT-3.5 and
AceGPT-Chat on both surveys [arxiv:2402.13231 tab. 2]. Card:
[AlKhamissi et al., 2024](/papers/2402.13231).

**Anthropological Prompting** [arxiv:2402.13231 §4.6, app. I] adds a
seven-point framework from anthropological field methods and asks the model
to reason in one paragraph under it before giving the option number. For
GPT-3.5 with English prompts on the Egypt survey, soft agreement moves from
0.4834 with a five-sample vote to 0.5102 with one response per question, and
hard agreement from 0.2443 to 0.2838 [arxiv:2402.13231 tab. 4]. The authors
report larger gains for underrepresented social classes and education levels,
shown only in a figure [arxiv:2402.13231 §5.6, fig. 5]. This comparison covers
one model, one language, one survey and one run, with no statistical test.

### Demographic backstories (silicon samples)

Argyle et al. write a first-person account for each ANES respondent, built
from fields such as ideology, party and church attendance, and put it before
the question [arxiv:2209.06899 §5, app. 3]. The authors call the resulting set
of simulated respondents a "silicon sample". For the 2012, 2016 and 2020 vote
questions, the model's probability of each candidate is read from token
probabilities, with no sampling, and averaged over respondents
[arxiv:2209.06899 §6, app. 3]. Mean probabilities differ from the human means
by 0.013 (2012), 0.045 (2016) and 0.060 (2020) [arxiv:2209.06899 §6]. Whole-sample
tetrachoric correlations with the human vote are 0.90 to 0.94, but for
independents they are 0.41 (2016) and 0.02 (2020) [arxiv:2209.06899 tab. 1].
The paper does not test whether each simulated respondent matches their own
source [arxiv:2209.06899 app. 4]. Card:
[Argyle et al., 2022](/papers/2209.06899).

### Benchmark scored by national survey shares

KorNAT has two parts. The social-value part asks opinion questions, drawn from
Korean news, and scores a model's pick by the share of a 6,174-person survey
that chose that option. The mean of those shares is the SVA score
[arxiv:2402.13605 §3.1, §4]. Two coarser versions merge the agree and disagree
options (A-SVA), or replace contested questions with a neutral label (N-SVA)
[arxiv:2402.13605 §4]. The paper's maximum achievable SVA is 0.450, and an
All-Neutral policy scores 0.190 on SVA [arxiv:2402.13605 tab. 1]. The best
listed model on SVA is PaLM-2 at 0.331 ± 0.007 [arxiv:2402.13605 tab. 1]. Each
answer is one option, so the score does not check how the model's answers
spread across options, unlike WD. Prompting with "How would someone from Korea
respond" raises SVA for every model except Claude-1 [arxiv:2402.13605 tab. 2].
Card: [Lee et al., 2024](/papers/2402.13605).

### Probing response biases (evaluation, not steering)

This variant does not change the model. It checks whether the model reacts to
survey wording the way people do. Each probe is a pair of questions: an
original, and an edited version that should trigger a known human response
bias. The five biases are acquiescence, allow/forbid wording, response order,
odd/even scales and opinion floating. Three non-bias edits (key typo, middle
random, letter swap) serve as controls, because people are known to be robust
to them [arxiv:2311.04076 §2.1, app. A.2]. Each version is sampled 50 times at
temperature 1, and the shift in answer shares is tested against zero with a
one-sample t-test [arxiv:2311.04076 §2.2, §2.3]. Card:
[Tjuatja et al., 2023](/papers/2311.04076).

The paper reports that no model shows human-like behaviour on every bias, and
that every model shows significant shifts on some typo control
[arxiv:2311.04076 §3.1]. RLHF chat models show smaller bias shifts than their
base models and larger typo-control shifts [arxiv:2311.04076 §3.2]. Full
per-model numbers are in [arxiv:2311.04076 app. A.3].

### Other methods

Modular Pluralism (Feng et al., 2024) is compared in the paper with one-hot
error rates [arxiv:2502.16761 tab. 1]. No card exists for it, so its method is
not described here.

## When to use which

| Situation | Use | Why |
|---|---|---|
| Only API access, no training, no group-level survey data | Steering prompts | Needs no training. Zero-shot WD on OpinionQA is 0.138 to 0.173 across the tested base models [arxiv:2502.16761 tab. 1] |
| Own GPUs, group-level response shares for training questions, need unseen questions or groups | Fine-tuning (SubPOP-FT) | Lower WD on both benchmarks, and gains on unseen groups [arxiv:2502.16761 tab. 1, §4.3] |
| Need a chat model for other reasons | Expect worse results | Chat Llama-2-7B fine-tuned scores 0.148 on SubPOP-Eval against 0.121 for the base model [arxiv:2502.16761 app. C.2] |
| Only one answer per respondent (no response shares) | Not covered by this paper | The method trains on group-level distributions. A one-hot target does worse than explicit probabilities: WD 0.163 against 0.106 on OpinionQA [arxiv:2502.16761 app. C.1] |
| Survey answers from individuals, API access only, want to see which countries, languages or demographic groups a model fits worst | Persona simulation with agreement scores | Needs no training. Shows gaps by country and language, but measures agreement with single respondents, not group shares [arxiv:2402.13231 §5.1, tab. 3] |
| Want a prompt-only change for an underrepresented group, and can afford a reasoning paragraph per question | Anthropological Prompting | One reported gain, on GPT-3.5 with one survey and one run [arxiv:2402.13231 tab. 4]. Test on your own model before relying on it |
| Group-level vote shares for US politics, token-probability access to the model, and per-respondent survey answers to build backstories | Backstory conditioning | Group means and whole-sample correlations are close, but independents are not [arxiv:2209.06899 §6, tab. 1]. The model used is GPT-3 Davinci; the paper does not say whether it is still served [arxiv:2209.06899 app. 1] |
| One country's opinions and curriculum, multiple-choice items accepted, one score per model for a benchmark table | Share-scored benchmark (KorNAT) | Needs no training. Rewards picking popular answers; it does not show whether answer spread matches [arxiv:2402.13605 §4, tab. 1] |
| Need to know whether a model reacts to survey wording like respondents do | Response-bias probe | Opinion-matching scores do not answer this [arxiv:2311.04076 §5]. The probe needs editable survey items and 50 sampled answers per version [arxiv:2311.04076 §2.2] |
| Need an exact WD number to compare with another paper | Check the formula first | The paper's WD formula in appendix B is not normalised; see Contradictions |
| Labelled source images, unlabelled target images, fixed feature vectors (not survey answers) | Feature-distribution alignment (MEDA) | A different problem: features are aligned, not answers. Reports 73.2% average accuracy over 28 tasks [arxiv:1807.07258 §4.4]; numbers are author-reported |

## Implementation sketch

Training step for one (prompt, question, group) example, and the ordinal WD
used for evaluation. The response-bias probe effect is also shown. Notes on
where the variants differ are in the comments.

```pseudocode
# Training loss for one example: steering prompt + question, human dist
# [arxiv:2502.16761 §3.1] [app. B]
# prompt_tokens (T,), option_tokens (K,) = ids of " A", " B", ...
# human_dist (K,) sums to 1

def training_loss(prompt_tokens, option_tokens, human_dist):
    # Next-token logits at the position that predicts the answer letter
    logits = model(prompt_tokens)[-1]           # (vocab,)
    # Keep only the option letters and renormalise over them
    model_dist = softmax(logits[option_tokens]) # (K,)
    # Forward KL(human || model), summed over options [§3.1]
    return sum(human_dist * (log(human_dist) - log(model_dist)))
```

```pseudocode
# Ordinal WD between human and model distributions over options
# [arxiv:2502.16761 §3.3] [app. B]
# Options carry ordinal values (e.g. "Very likely" = 1)

def ordinal_wd(human, model, ordinal):
    # Sort options by ordinal value
    human, model, ordinal = sort_by(ordinal, human, model)
    cdf_h = cumsum(human)
    cdf_m = cumsum(model)
    # Weight each CDF gap by the spacing between ordinal values
    gaps = ordinal[1:] - ordinal[:-1]
    total = sum(abs(cdf_h[:-1] - cdf_m[:-1]) * gaps)
    # Divide by the ordinal range so values lie in [0, 1]
    return total / (max(ordinal) - min(ordinal))
```

```pseudocode
# Effect of one bias probe on one question pair, in percentage points
# [arxiv:2311.04076 §2.3] [tab. 2]
# letters_orig, letters_edit: 50 sampled answer letters each
# orig_set, edit_set: the letters that the bias predicts for each version

def bias_effect(letters_orig, letters_edit, orig_set, edit_set):
    # Count the answers that fall on the predicted letters in each version
    hits_orig = count(letters_orig, orig_set)
    hits_edit = count(letters_edit, edit_set)
    # 50 samples per version; scale to percentage points
    # The sign and letter sets differ by bias; check tab. 2 before use
    return (hits_orig - hits_edit) / 50 * 100

# Across question pairs, test the mean effect against zero with a
# two-sided one-sample t-test [§2.3]. Controls use the same calculation
# on the non-bias edits.
```

The forward-KL target is a distribution, not a one-hot label. Training on a
one-hot label is a different objective, and the paper reports it as the
weakest of the target encodings it tests [arxiv:2502.16761 app. C.1]. Add a
small epsilon inside the logarithms, as the code does
[code: subpop/train/utils/train_utils.py#L266-L269]. The paper does not state
the number of epochs, learning-rate schedule, warmup or validation split, so
those need tuning [arxiv:2502.16761 app. B].

## Contradictions

- **Reported reductions.** The text gives a relative WD reduction of 32 to 46%
  on OpinionQA and 39 to 42% on SubPOP-Eval against the best baseline
  [arxiv:2502.16761 §4.2]. Computing the same ratio from Table 1 gives about
  32 to 40% on OpinionQA and 34 to 42% on SubPOP-Eval
  [arxiv:2502.16761 tab. 1]. The table values are the ones to cite.
- **The "46%" figure.** The mean of 46.7% in §4.3 is a gap-closure measure,
  not a WD ratio. Table 2 defines "relative improvement" as the share of the
  gap between zero-shot WD and the human lower bound that fine-tuning closes
  [arxiv:2502.16761 §4.3, tab. 2]. The two measures are not interchangeable.
- **WD normalisation.** Appendix B gives the WD as an unnormalised sum of CDF
  differences [arxiv:2502.16761 app. B]. The code divides by the ordinal range
  [code: subpop/utils/survey_utils.py#L63]. The reported uniform upper bound of
  0.178 fits the normalised form. This is an inference from the magnitudes.
- **Refusal option.** The worked example lists "Refused" as an option
  [arxiv:2502.16761 §3.1, fig. 2]. The data script's docstring says refusal is
  excluded from the target [code: scripts/data_generation/prepare_finetuning_data.py#L57],
  but the script appends the refusal rate as the last target entry
  [code: scripts/data_generation/prepare_finetuning_data.py#L159-L161]. Whether
  refusal enters the loss depends on the option tokens; the paper does not say.
- **Learning rate and batch size.** The paper's Llama-2-7B learning rate is
  2e-4 and batch size 256 [arxiv:2502.16761 app. B]. The code's defaults are
  1e-4 and 32 [code: subpop/train/configs/training.py#L15, #L28].
- **Modular Pluralism in Table 1.** Its 0.285 and 0.279 are WD values, while its
  55.6% and 55.2% are one-hot error rates from the original paper
  [arxiv:2502.16761 tab. 1]. They are not the same metric.
- **Different metrics across papers.** Suh et al. report WD between group
  distributions [arxiv:2502.16761 §3.3]. AlKhamissi et al. report hard and soft
  agreement with single respondents [arxiv:2402.13231 §4.5]. The soft score is
  partial credit, not a distance. Argyle et al. report mean vote probabilities,
  tetrachoric correlations and Cramér's V [arxiv:2209.06899 §6, app. 4]. Lee et
  al. report the mean survey share of the chosen option [arxiv:2402.13605 §4].
  Do not compare their numbers.
- **Vanilla baseline in Table 4.** The Table 4 vanilla row (0.4834 soft,
  0.2443 hard) matches neither Table 2's Egypt English row (47.08 / 23.42,
  in percent) nor the unfiltered Egypt English row in appendix A (52.69 / 30.17)
  [arxiv:2402.13231 tab. 2, tab. 4, app. A]. The setup for that row is not stated.
- **Cross-national prompting in KorNAT.** The text says both prompting variants
  improve scores for every model except Claude-1 [arxiv:2402.13605 §5.2.2]. In
  Table 2, Gemini Pro's A-SVA and N-SVA sit below its baseline under both
  variants [arxiv:2402.13605 tab. 2]. The USA-prompt rows for HyperCLOVA X and
  Gemini Pro are identical in every cell, which the paper does not explain.
  This page quotes the table values only.
- **What counts as matching humans.** Suh et al. take lower WD to group
  response shares as the goal, and report that their fine-tuned model
  reproduces the intergroup disagreement pattern for education levels not in
  training [arxiv:2502.16761 §4.3, fig. 4]. Tjuatja et al. report that
  representativeness of human opinion distributions does not track
  bias-consistency [arxiv:2311.04076 §5]. AlKhamissi et al. report that
  agreement with individual respondents is higher for the US survey than for
  the Egypt survey across all four models [arxiv:2402.13231 §5.1, tab. 3].
  These are author findings on different tests. Neither the Suh et al. card
  nor the Tjuatja et al. card cites the other paper, and no result here settles
  which test matters for a given use.
- **Bias probe numbers.** The paper's text says Llama 2 70b (base) shows
  significant perturbation shifts on three of five biases, while its table
  shows one such shift for that model [arxiv:2311.04076 §3.1, app. A.3]. Use
  the table.

## Papers

- [Suh et al., 2025](/papers/2502.16761): LoRA fine-tuning on group-level survey distributions (SubPOP), evaluated with ordinal WD on OpinionQA and an out-of-distribution survey.
- [Tjuatja et al., 2023](/papers/2311.04076): tests whether LLMs shift under survey-wording edits like humans do, using paired bias and typo-control questions across nine models.
- [AlKhamissi et al., 2024](/papers/2402.13231): persona prompting on World Values Survey items in Egypt and the US, scored by hard and soft agreement with individual respondents; introduces Anthropological Prompting.
- [Argyle et al., 2022](/papers/2209.06899): "silicon samples" from first-person backstories of ANES respondents, checked against US vote shares and item associations.
- [Lee et al., 2024](/papers/2402.13605): KorNAT, a Korean benchmark that scores multiple-choice answers by the survey share of the chosen option, with common-knowledge items.
- [Wang et al., 2018](/papers/1807.07258): MEDA, unsupervised domain adaptation that aligns marginal and class-conditional feature distributions. Listed only for the domain-adaptation sense of "distribution alignment" described in the Overview.
- [Hazarika et al., 2020](/papers/2005.03545): MISA, a multimodal sentiment model that aligns text, visual and acoustic representations. Listed only for the unrelated sense of "distribution" described in the Overview.
