[SW23] — incremental RSA for adjective ordering #
Schlotterbeck, F. & Wang, H. (2023). An incremental RSA model for adjective ordering preferences in referential visual context. SCiL 6, 121–132.
Scope. This file formalizes the symmetric-PoE sanity-check slice of
the paper, not its main asymmetric model: the order-independence of the
incremental listener under symmetric per-class semantics, plus
discrimination-driven ordering preferences at the speaker level as
chain-rule trajectory products (per-step normalized; the paper's S1^inc
normalizes once globally, and the two agree at the literal layer). Not
formalized: asymmetric per-class semantics, the P_Lang grammaticality
filter, and the size-first utterance-prior bias. The paper's α is the
utterance-level softmax temperature; its β (word-level) is 1 in all
reported simulations, matching the exponent-free chain here.
Main results #
meaning_perm: the PoE prefix meaning is order-independent, for every lexicon — the paper's listener-level sanity check.size_first_when_size_discriminates/color_first_when_color_reliable: the trajectory preference tracks discriminatory power (Scene A) and flips to the more reliable dimension under equal discrimination (Scene B);ordering_preference_flipsconjoins them.big_more_informative_A/blue_more_informative_B: the first-word preferences driving the flip.both_orderings_identify_target_A/_B: after both adjectives the target carries the highest meaning among scene members.
Implementation notes #
The chain is exact ℚ≥0: lex is the Bernoulli-channel form of
[DHG+20]'s continuous semantics (reliability if the word truly
applies, the complementary noise floor otherwise), prefix meanings are
List products, l0Score/s1Score normalize via PMF.normalizeScores,
and the PMF speaker is PMF.ofScores. Trajectories are Fin-indexed
products of speaker values, so ordering predictions close by
PMF.prod_ofScores_lt with one kernel certificate each.
Equations
- SchlotterbeckWang2023.instDecidableEqReferent x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
Equations
- SchlotterbeckWang2023.instDecidableEqWord x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Equations
- One or more equations did not get rendered due to their size.
Equations
- SchlotterbeckWang2023.instReprWord = { reprPrec := SchlotterbeckWang2023.instReprWord.repr }
Equations
- One or more equations did not get rendered due to their size.
Instances For
Whether a word is veridically true of a referent.
Equations
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.big SchlotterbeckWang2023.Referent.bigBlue = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.big SchlotterbeckWang2023.Referent.bigGreen = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.small SchlotterbeckWang2023.Referent.smallBlue = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.small SchlotterbeckWang2023.Referent.smallGreen = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.small SchlotterbeckWang2023.Referent.smallRed = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.blue SchlotterbeckWang2023.Referent.bigBlue = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.blue SchlotterbeckWang2023.Referent.smallBlue = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.green SchlotterbeckWang2023.Referent.bigGreen = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.green SchlotterbeckWang2023.Referent.smallGreen = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.red SchlotterbeckWang2023.Referent.smallRed = true
- SchlotterbeckWang2023.wordApplies SchlotterbeckWang2023.Word.sticker x✝ = true
- SchlotterbeckWang2023.wordApplies x✝¹ x✝ = false
Instances For
Per-class perceptual reliability: size words use sRel, color words
use cRel, the noun applies universally.
Equations
- SchlotterbeckWang2023.rel sRel cRel SchlotterbeckWang2023.Word.big = sRel
- SchlotterbeckWang2023.rel sRel cRel SchlotterbeckWang2023.Word.small = sRel
- SchlotterbeckWang2023.rel sRel cRel SchlotterbeckWang2023.Word.blue = cRel
- SchlotterbeckWang2023.rel sRel cRel SchlotterbeckWang2023.Word.green = cRel
- SchlotterbeckWang2023.rel sRel cRel SchlotterbeckWang2023.Word.red = cRel
- SchlotterbeckWang2023.rel sRel cRel SchlotterbeckWang2023.Word.sticker = 1
Instances For
Noisy word meaning: reliability if the word truly applies, the complementary noise floor otherwise — the Bernoulli-channel form of [DHG+20]'s continuous semantics.
Equations
- SchlotterbeckWang2023.lex sRel cRel w r = if SchlotterbeckWang2023.wordApplies w r = true then SchlotterbeckWang2023.rel sRel cRel w else 1 - SchlotterbeckWang2023.rel sRel cRel w
Instances For
PoE prefix meaning: the product of per-word noisy meanings.
Equations
- SchlotterbeckWang2023.meaning lex us r = (List.map (fun (x : SchlotterbeckWang2023.Word) => lex x r) us).prod
Instances For
Scenes #
Scene A: size discriminates. Objects {big-blue, small-blue, small-green, small-red}, so "big" uniquely identifies the target.
Equations
- SchlotterbeckWang2023.sceneA SchlotterbeckWang2023.Referent.bigBlue = true
- SchlotterbeckWang2023.sceneA SchlotterbeckWang2023.Referent.smallBlue = true
- SchlotterbeckWang2023.sceneA SchlotterbeckWang2023.Referent.smallGreen = true
- SchlotterbeckWang2023.sceneA SchlotterbeckWang2023.Referent.smallRed = true
- SchlotterbeckWang2023.sceneA x✝ = false
Instances For
Scene B: equal discrimination. Objects {big-blue, big-green, small-blue, small-green}; "big" and "blue" each narrow to two.
Equations
- SchlotterbeckWang2023.sceneB SchlotterbeckWang2023.Referent.bigBlue = true
- SchlotterbeckWang2023.sceneB SchlotterbeckWang2023.Referent.bigGreen = true
- SchlotterbeckWang2023.sceneB SchlotterbeckWang2023.Referent.smallBlue = true
- SchlotterbeckWang2023.sceneB SchlotterbeckWang2023.Referent.smallGreen = true
- SchlotterbeckWang2023.sceneB x✝ = false
Instances For
The target referent in both scenes.
Instances For
Scene A lexicon: size more reliable (99/100 vs 95/100).
Equations
- SchlotterbeckWang2023.lexA = SchlotterbeckWang2023.lex (99 / 100) (95 / 100)
Instances For
Scene B lexicon: color more reliable (95/100 vs 80/100).
Equations
- SchlotterbeckWang2023.lexB = SchlotterbeckWang2023.lex (80 / 100) (95 / 100)
Instances For
The incremental chain #
Literal listener over scene referents at each prefix extension.
Equations
- SchlotterbeckWang2023.l0Score lex scene ctx u = PMF.normalizeScores fun (r : SchlotterbeckWang2023.Referent) => if scene r = true then SchlotterbeckWang2023.meaning lex (ctx ++ [u]) r else 0
Instances For
Word-level speaker (β = 1, no cost): renormalized literal posteriors.
Equations
- SchlotterbeckWang2023.s1Score lex scene ctx r = PMF.normalizeScores fun (u : SchlotterbeckWang2023.Word) => SchlotterbeckWang2023.l0Score lex scene ctx u r
Instances For
Word-by-word speaker at context ctx.
Equations
- SchlotterbeckWang2023.s1 lex scene ctx r = PMF.ofScores PMF.Fallback.uniform (SchlotterbeckWang2023.s1Score lex scene ctx r)
Instances For
Trajectory probability of an utterance: the chain-rule product of per-step speaker values along its prefixes.
Equations
- SchlotterbeckWang2023.s1Traj lex scene r us = ∏ i : Fin us.length, (SchlotterbeckWang2023.s1 lex scene (List.take (↑i) us) r) (us.get i)
Instances For
ℚ≥0 shadow of s1Traj.
Equations
- SchlotterbeckWang2023.s1TrajScore lex scene r us = ∏ i : Fin us.length, PMF.scoresWith PMF.Fallback.uniform (SchlotterbeckWang2023.s1Score lex scene (List.take (↑i) us) r) (us.get i)
Instances For
Predictions #
Size-first and color-first orderings for the big-blue target.
Equations
Instances For
The ordering preference tracks the scene's discriminatory structure, not a fixed ordering rule.
lex is the unified noise channel of RSA.Noise at
onMatch = reliability, onMismatch = its complement — the
[DHG+20] parameterization.