mirror of
https://github.com/wassname/moral-maps.git
synced 2026-09-21 13:10:52 +08:00
Explain steering selectivity simply after the maps
Remove competing metric proposals and link directly to the scoring function. Include the author's interactive-map link. Co-Authored-By: PI/gpt-6-astra <288921227+claudypoo@users.noreply.github.com>
This commit is contained in:
co-authored by
PI/gpt-6-astra
parent
07134b52f9
commit
d087f28fe6
@@ -6,6 +6,8 @@ What do an LLM's values look like next to ours? moralmaps puts models through hu
|
||||
|
||||
Start with the World Values Survey: its culture map compares societies by how traditional or secular they are, and how much they weigh survival over self-expression.
|
||||
|
||||
See <https://wassname.github.io/moral-maps/> for an interactive plot.
|
||||
|
||||

|
||||
|
||||
The models cluster in the upper-left, around and above the Western societies. These are survey answers, not a test of how the models behave outside the survey.
|
||||
@@ -52,11 +54,9 @@ The intended value moves, but so do other answers. This is why we need to measur
|
||||
|
||||
## Measurement
|
||||
|
||||
The maps use human-comparable survey scores. For local models, we read answer-token probabilities; for APIs without logprobs, we use repeated ratings. We check probability mass on valid answers so broken answer formatting is not mistaken for a value change. Human positions on the World Values Survey map are approximated from [GlobalOpinionQA](https://huggingface.co/datasets/Anthropic/llm_global_opinions), using the [axis definitions](src/moralmaps/iw_axes.py).
|
||||
The maps use human-comparable survey scores. For local models, we read answer-token probabilities; for APIs without logprobs, we use repeated ratings. Human positions on the World Values Survey map are approximated from [GlobalOpinionQA](https://huggingface.co/datasets/Anthropic/llm_global_opinions), using the [axis definitions](src/moralmaps/iw_axes.py).
|
||||
|
||||
For steering comparisons, we also want a score that considers both intended changes and side effects. The existing [metric](src/moralmaps/metrics.py) is `sel_gated = (on - 0.1 * off) * coh²`: intended logprob movement minus a smaller penalty for other movement, multiplied by a valid-answer mass check. `si_flips` checks whether the model's chosen answers changed. Logprob movement can be visible even when chosen answers stay the same.
|
||||
|
||||
A possible replacement is [steering F-beta](https://github.com/wassname/steering-lite#a-simpler-score), which treats desired changes as true positives and unwanted changes as false positives. It is still a proposal; the plots and existing results have not been rescored.
|
||||
For steering, we want to change the target concept in either direction without changing unrelated answers. We measure *steering selectivity*: intended logprob movement minus one tenth of unintended movement, comparing the two steering directions. This can detect small changes even when the chosen answer stays the same. See the [results and measurement details](https://github.com/wassname/steering-lite#results), or the [scoring function](src/moralmaps/metrics.py#L80).
|
||||
|
||||
## Install and use
|
||||
|
||||
|
||||
@@ -51,3 +51,7 @@ External URLs, installation commands, and GPU examples were not executed. These
|
||||
## Follow-up: remove changelog framing
|
||||
|
||||
User: "we don't want 'new models', people don't need a changelog" and "if we have a table, have one table with all." Removed both partial README tables and linked the existing complete results table instead; its data file is unchanged. This resolves the author's README TODO and supersedes the earlier inline-table preservation requirement. Kept the author's deletion of the historical/new panel counts, removed model-count promotion from the image description, and moved the human-coordinate source note to Measurement. All eight plot paths remain unchanged; local links and annoy-less lint pass. Steering-lite was not edited in this follow-up. -- PI/gpt-6-astra
|
||||
|
||||
## Follow-up: one steering measurement
|
||||
|
||||
At the user's request, both READMEs now explain steering selectivity using intended versus unintended logprob movement. Removed the F-beta proposal and the flips column; removed the constant format-check column and moved its definition, sign-selection limitations, and run settings under details. The simplified equation equals the stored score here because every measured row has `coh=1`. A cell-by-cell check confirmed that all retained values in the 17 steering rows are unchanged. Plot paths and relative links pass; no metric code or experiment was changed. Annoy-less lint passes for moralmaps; steering-lite retains only the results-table best-cell bolding exception (three cells). Preserved the author's interactive-map link and corrected its spelling. -- PI/gpt-6-astra
|
||||
|
||||
Reference in New Issue
Block a user