Upload folder using huggingface_hub
Browse files- sieve_bench/LEADERBOARD.md +23 -24
- sieve_bench/common/data.py +91 -50
- sieve_bench/results/sonar.json +43 -43
- sieve_bench/results/st-LaBSE-mean.json +43 -43
- sieve_bench/results/st-all-mpnet-base-v2-mean.json +43 -43
- sieve_bench/results/st-bert-base-uncased-mean.json +43 -43
- sieve_bench/results/st-e5-base-v2-mean.json +43 -43
- sieve_bench/results/st-e5-large-v2-mean.json +43 -43
- sieve_bench/results/st-e5-small-v2-mean.json +43 -43
- sieve_bench/results/st-gte-large-mean.json +43 -43
- sieve_bench/results/static-average_word_embeddings_glove.6B.300d.json +43 -43
- sieve_bench/tasks/t08_length_generalization.py +58 -33
sieve_bench/LEADERBOARD.md
CHANGED
|
@@ -12,30 +12,29 @@ Mean `score_vs_baseline` over the SAME set of CORE readout tasks that EVERY eval
|
|
| 12 |
|
| 13 |
**All-audit-pass intersection (5): t01_lexical_bag, t05_position_order, t08_length_generalization, t13_sae_monosemanticity, t19_crosslingual_readout**
|
| 14 |
|
| 15 |
-
**LIVE intersection — genuinely discriminating, cross-encoder svb std≥0.02 (
|
| 16 |
|
| 17 |
CONSTANT / saturated / non-comparative tasks (≈1.0 for every encoder, or a fixed external grid) are kept in the all-pass column for continuity but are **excluded from the LIVE-task Δ** because they carry no ranking signal. The LIVE-task Δ is the honest comparative headline.
|
| 18 |
|
| 19 |
| Encoder | Δ (LIVE tasks, ↑) | Δ (all-pass) | effective_n LIVE / all |
|
| 20 |
|---|---|---|---|
|
| 21 |
-
| sonar | 0.
|
| 22 |
-
| st-LaBSE-mean | 0.
|
| 23 |
-
| st-all-mpnet-base-v2-mean | 0.704 | 0.
|
| 24 |
-
| st-bert-base-uncased-mean | 0.
|
| 25 |
-
| st-e5-base-v2-mean | 0.
|
| 26 |
-
| st-e5-large-v2-mean | 0.
|
| 27 |
-
| st-e5-small-v2-mean | 0.
|
| 28 |
-
| st-gte-large-mean | 0.
|
| 29 |
-
| static-average_word_embeddings_glove.6B.300d | 0.
|
| 30 |
|
| 31 |
-
**LIVE-task ranking:** sonar 0.
|
| 32 |
|
| 33 |
-
**LIVE-task spread (max−min) = 0.
|
| 34 |
|
| 35 |
### Tasks in the all-pass set but EXCLUDED from the LIVE Δ (constants / non-comparative)
|
| 36 |
|
| 37 |
- **t07_meaning_coverage**: flagged non_comparative (fixed external grid / not encoder-specific) — no cross-encoder ranking signal
|
| 38 |
-
- **t08_length_generalization**: cross-encoder svb std=0.005 < 0.02 (saturated/constant — no ranking signal)
|
| 39 |
- **t21_encoder_pooling_generality**: flagged non_comparative (fixed external grid / not encoder-specific) — no cross-encoder ranking signal
|
| 40 |
|
| 41 |
### Tasks excluded from the intersection (not all-encoder / not all-pass)
|
|
@@ -74,7 +73,7 @@ Cell = score, with an audit flag: `✓` audit-PASS, `✗` audit-FAIL, `·` skipp
|
|
| 74 |
| t04_negation_scope | core | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ |
|
| 75 |
| t05_position_order * | core | 0.840✓ | 0.667✓ | 0.660✓ | 0.798✓ | 0.694✓ | 0.531✓ | 0.512✓ | 0.628✓ | 0.091✓ |
|
| 76 |
| t07_meaning_coverage | core | 0.014✗ | · | · | · | · | · | · | · | · |
|
| 77 |
-
| t08_length_generalization * | core |
|
| 78 |
| t11_position_unrotation | core | 0.000✗ | 0.000✗ | 0.000✗ | 0.000✓ | 0.000✓ | 0.000✗ | 0.000✓ | 0.000✗ | 0.000✓ |
|
| 79 |
| t13_sae_monosemanticity * | core | 0.844✓ | 0.683✓ | 0.960✓ | 0.918✓ | 0.859✓ | 0.820✓ | 0.818✓ | 0.963✓ | 0.767✓ |
|
| 80 |
| t14_capacity_law | core | 0.416✓(probe) | 0.000✗(probe) | -0.615✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) |
|
|
@@ -177,7 +176,6 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 177 |
| t04_negation_scope | A | core | sonar | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 178 |
| t05_position_order | A | core | sonar | 0.840 | -0.014 | - | - | 1.000 | 0.842 | PASS | - |
|
| 179 |
| t07_meaning_coverage | A | core | sonar | 0.014 | 0.000 | 0.000 | - | 1.000 | 0.014 | FAIL(NOT-z-specific; DEGENERATE) | - |
|
| 180 |
-
| t08_length_generalization | A | core | sonar | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 181 |
| t11_position_unrotation | B | core | sonar | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 182 |
| t13_sae_monosemanticity | B | core | sonar | 0.844 | 0.073 | - | - | 1.000 | 0.832 | PASS | - |
|
| 183 |
| t14_capacity_law | B | core | sonar | 0.901 | 0.000 | - | - | 1.000 | 0.901 | PASS | 0.930 |
|
|
@@ -190,12 +188,12 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 190 |
| t22_word_edit | D | gene | sonar | 1.000 | 1.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 191 |
| t23_edit_sentence_2of3 | D | gene | sonar | 0.619 | 0.469 | - | - | 1.000 | 0.282 | PASS | - |
|
| 192 |
| t25_concept_injection_recovery | D | gene | sonar | 0.744 | 0.787 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
|
|
|
| 193 |
| t01_lexical_bag | A | core | st-LaBSE-mean | 0.502 | 0.000 | 1.000 | 0.182 | 1.000 | 0.502 | PASS | - |
|
| 194 |
| t02_number_exact | A | core | st-LaBSE-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 195 |
| t03_entity_presence | A | core | st-LaBSE-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 196 |
| t04_negation_scope | A | core | st-LaBSE-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 197 |
| t05_position_order | A | core | st-LaBSE-mean | 0.667 | 0.006 | - | - | 1.000 | 0.665 | PASS | - |
|
| 198 |
-
| t08_length_generalization | A | core | st-LaBSE-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 199 |
| t11_position_unrotation | B | core | st-LaBSE-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 200 |
| t13_sae_monosemanticity | B | core | st-LaBSE-mean | 0.683 | 0.076 | - | - | 1.000 | 0.657 | PASS | - |
|
| 201 |
| t14_capacity_law | B | core | st-LaBSE-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
@@ -203,12 +201,12 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 203 |
| t19_crosslingual_readout | E | core | st-LaBSE-mean | 1.000 | 0.500 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 204 |
| t21_encoder_pooling_generality | E | core | st-LaBSE-mean | 0.500 | 0.333 | - | - | 1.000 | 0.250 | PASS | 1.000 |
|
| 205 |
| t25_concept_injection_recovery | D | gene | st-LaBSE-mean | 0.846 | 0.706 | - | - | 1.000 | 0.477 | PASS | - |
|
|
|
|
| 206 |
| t01_lexical_bag | A | core | st-all-mpnet-base-v2-mean | 0.263 | 0.000 | 1.000 | 0.182 | 1.000 | 0.263 | PASS | - |
|
| 207 |
| t02_number_exact | A | core | st-all-mpnet-base-v2-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 208 |
| t03_entity_presence | A | core | st-all-mpnet-base-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 209 |
| t04_negation_scope | A | core | st-all-mpnet-base-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 210 |
| t05_position_order | A | core | st-all-mpnet-base-v2-mean | 0.660 | -0.005 | - | - | 1.000 | 0.661 | PASS | - |
|
| 211 |
-
| t08_length_generalization | A | core | st-all-mpnet-base-v2-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 212 |
| t11_position_unrotation | B | core | st-all-mpnet-base-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 213 |
| t13_sae_monosemanticity | B | core | st-all-mpnet-base-v2-mean | 0.960 | 0.081 | - | - | 1.000 | 0.957 | PASS | - |
|
| 214 |
| t14_capacity_law | B | core | st-all-mpnet-base-v2-mean | -0.615 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
@@ -216,34 +214,34 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 216 |
| t19_crosslingual_readout | E | core | st-all-mpnet-base-v2-mean | 0.966 | 0.500 | - | - | 1.000 | 0.933 | PASS | 1.000 |
|
| 217 |
| t21_encoder_pooling_generality | E | core | st-all-mpnet-base-v2-mean | 0.400 | 0.333 | - | - | 1.000 | 0.100 | PASS | 1.000 |
|
| 218 |
| t25_concept_injection_recovery | D | gene | st-all-mpnet-base-v2-mean | 0.800 | 0.817 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
|
|
|
| 219 |
| t01_lexical_bag | A | core | st-bert-base-uncased-mean | 0.364 | 0.000 | 1.000 | 0.226 | 1.000 | 0.364 | PASS | - |
|
| 220 |
| t02_number_exact | A | core | st-bert-base-uncased-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 221 |
| t03_entity_presence | A | core | st-bert-base-uncased-mean | 0.990 | 0.500 | 1.000 | 0.876 | 1.000 | 0.980 | FAIL(NOT-z-specific) | 1.000 |
|
| 222 |
| t04_negation_scope | A | core | st-bert-base-uncased-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 223 |
| t05_position_order | A | core | st-bert-base-uncased-mean | 0.798 | -0.024 | - | - | 1.000 | 0.803 | PASS | - |
|
| 224 |
-
| t08_length_generalization | A | core | st-bert-base-uncased-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 225 |
| t13_sae_monosemanticity | B | core | st-bert-base-uncased-mean | 0.918 | 0.080 | - | - | 1.000 | 0.911 | PASS | - |
|
| 226 |
| t14_capacity_law | B | core | st-bert-base-uncased-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 227 |
| t19_crosslingual_readout | E | core | st-bert-base-uncased-mean | 0.803 | 0.500 | - | - | 1.000 | 0.607 | PASS | 1.000 |
|
| 228 |
| t21_encoder_pooling_generality | E | core | st-bert-base-uncased-mean | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 229 |
| t25_concept_injection_recovery | D | gene | st-bert-base-uncased-mean | 0.817 | 0.589 | - | - | 1.000 | 0.555 | PASS | - |
|
|
|
|
| 230 |
| t01_lexical_bag | A | core | st-e5-base-v2-mean | 0.381 | 0.000 | 1.000 | 0.226 | 1.000 | 0.381 | PASS | - |
|
| 231 |
| t02_number_exact | A | core | st-e5-base-v2-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 232 |
| t03_entity_presence | A | core | st-e5-base-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 233 |
| t04_negation_scope | A | core | st-e5-base-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 234 |
| t05_position_order | A | core | st-e5-base-v2-mean | 0.694 | -0.024 | - | - | 1.000 | 0.701 | PASS | - |
|
| 235 |
-
| t08_length_generalization | A | core | st-e5-base-v2-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 236 |
| t13_sae_monosemanticity | B | core | st-e5-base-v2-mean | 0.859 | 0.079 | - | - | 1.000 | 0.846 | PASS | - |
|
| 237 |
| t14_capacity_law | B | core | st-e5-base-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 238 |
| t19_crosslingual_readout | E | core | st-e5-base-v2-mean | 0.981 | 0.500 | - | - | 1.000 | 0.962 | PASS | 1.000 |
|
| 239 |
| t21_encoder_pooling_generality | E | core | st-e5-base-v2-mean | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 240 |
| t25_concept_injection_recovery | D | gene | st-e5-base-v2-mean | 0.884 | 0.593 | - | - | 1.000 | 0.714 | PASS | - |
|
|
|
|
| 241 |
| t01_lexical_bag | A | core | st-e5-large-v2-mean | 0.403 | 0.000 | 1.000 | 0.182 | 1.000 | 0.403 | PASS | - |
|
| 242 |
| t02_number_exact | A | core | st-e5-large-v2-mean | 0.113 | 0.000 | 0.635 | 0.285 | 1.000 | 0.113 | FAIL(NOT-z-specific; NOT-z-specific) | 0.990 |
|
| 243 |
| t03_entity_presence | A | core | st-e5-large-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 244 |
| t04_negation_scope | A | core | st-e5-large-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 245 |
| t05_position_order | A | core | st-e5-large-v2-mean | 0.531 | -0.005 | - | - | 1.000 | 0.533 | PASS | - |
|
| 246 |
-
| t08_length_generalization | A | core | st-e5-large-v2-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 247 |
| t11_position_unrotation | B | core | st-e5-large-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 248 |
| t13_sae_monosemanticity | B | core | st-e5-large-v2-mean | 0.820 | 0.080 | - | - | 1.000 | 0.804 | PASS | - |
|
| 249 |
| t14_capacity_law | B | core | st-e5-large-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
@@ -251,23 +249,23 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 251 |
| t19_crosslingual_readout | E | core | st-e5-large-v2-mean | 0.997 | 0.500 | - | - | 1.000 | 0.994 | PASS | 1.000 |
|
| 252 |
| t21_encoder_pooling_generality | E | core | st-e5-large-v2-mean | 0.500 | 0.333 | - | - | 1.000 | 0.250 | PASS | 1.000 |
|
| 253 |
| t25_concept_injection_recovery | D | gene | st-e5-large-v2-mean | 0.946 | 0.641 | - | - | 1.000 | 0.851 | PASS | - |
|
|
|
|
| 254 |
| t01_lexical_bag | A | core | st-e5-small-v2-mean | 0.401 | 0.000 | 1.000 | 0.226 | 1.000 | 0.401 | PASS | - |
|
| 255 |
| t02_number_exact | A | core | st-e5-small-v2-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 256 |
| t03_entity_presence | A | core | st-e5-small-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 257 |
| t04_negation_scope | A | core | st-e5-small-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 258 |
| t05_position_order | A | core | st-e5-small-v2-mean | 0.512 | -0.024 | - | - | 1.000 | 0.523 | PASS | - |
|
| 259 |
-
| t08_length_generalization | A | core | st-e5-small-v2-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 260 |
| t13_sae_monosemanticity | B | core | st-e5-small-v2-mean | 0.818 | 0.080 | - | - | 1.000 | 0.802 | PASS | - |
|
| 261 |
| t14_capacity_law | B | core | st-e5-small-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 262 |
| t19_crosslingual_readout | E | core | st-e5-small-v2-mean | 0.990 | 0.500 | - | - | 1.000 | 0.980 | PASS | 1.000 |
|
| 263 |
| t21_encoder_pooling_generality | E | core | st-e5-small-v2-mean | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 264 |
| t25_concept_injection_recovery | D | gene | st-e5-small-v2-mean | 0.871 | 0.520 | - | - | 1.000 | 0.730 | PASS | - |
|
|
|
|
| 265 |
| t01_lexical_bag | A | core | st-gte-large-mean | 0.306 | 0.000 | 1.000 | 0.182 | 1.000 | 0.306 | PASS | - |
|
| 266 |
| t02_number_exact | A | core | st-gte-large-mean | 0.340 | 0.000 | 0.635 | 0.285 | 1.000 | 0.340 | FAIL(NOT-z-specific) | 0.990 |
|
| 267 |
| t03_entity_presence | A | core | st-gte-large-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 268 |
| t04_negation_scope | A | core | st-gte-large-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 269 |
| t05_position_order | A | core | st-gte-large-mean | 0.628 | -0.005 | - | - | 1.000 | 0.629 | PASS | - |
|
| 270 |
-
| t08_length_generalization | A | core | st-gte-large-mean | 1.000 | 0.500 | 0.000 | 0.000 | 1.000 | 1.000 | PASS | - |
|
| 271 |
| t11_position_unrotation | B | core | st-gte-large-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 272 |
| t13_sae_monosemanticity | B | core | st-gte-large-mean | 0.963 | 0.080 | - | - | 1.000 | 0.960 | PASS | - |
|
| 273 |
| t14_capacity_law | B | core | st-gte-large-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
@@ -275,17 +273,18 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 275 |
| t19_crosslingual_readout | E | core | st-gte-large-mean | 1.000 | 0.500 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 276 |
| t21_encoder_pooling_generality | E | core | st-gte-large-mean | 0.400 | 0.333 | - | - | 1.000 | 0.100 | PASS | 1.000 |
|
| 277 |
| t25_concept_injection_recovery | D | gene | st-gte-large-mean | 0.894 | 0.673 | - | - | 1.000 | 0.677 | PASS | - |
|
|
|
|
| 278 |
| t01_lexical_bag | A | core | static-average_word_embeddings_glove.6B.300d | 0.326 | 0.000 | 1.000 | 0.226 | 1.000 | 0.326 | PASS | - |
|
| 279 |
| t02_number_exact | A | core | static-average_word_embeddings_glove.6B.300d | 0.304 | 0.000 | 0.635 | 0.285 | 1.000 | 0.304 | FAIL(NOT-z-specific; NOT-z-specific) | 0.990 |
|
| 280 |
| t03_entity_presence | A | core | static-average_word_embeddings_glove.6B.300d | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 281 |
| t04_negation_scope | A | core | static-average_word_embeddings_glove.6B.300d | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 282 |
| t05_position_order | A | core | static-average_word_embeddings_glove.6B.300d | 0.091 | 0.004 | - | - | 1.000 | 0.088 | PASS | - |
|
| 283 |
-
| t08_length_generalization | A | core | static-average_word_embeddings_glove.6B.300d | 0.992 | 0.500 | 0.000 | 0.000 | 1.000 | 0.984 | PASS | - |
|
| 284 |
| t13_sae_monosemanticity | B | core | static-average_word_embeddings_glove.6B.300d | 0.767 | 0.086 | - | - | 1.000 | 0.745 | PASS | - |
|
| 285 |
| t14_capacity_law | B | core | static-average_word_embeddings_glove.6B.300d | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 286 |
| t19_crosslingual_readout | E | core | static-average_word_embeddings_glove.6B.300d | 0.690 | 0.500 | - | - | 0.875 | 0.506 | PASS | 1.000 |
|
| 287 |
| t21_encoder_pooling_generality | E | core | static-average_word_embeddings_glove.6B.300d | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 288 |
| t25_concept_injection_recovery | D | gene | static-average_word_embeddings_glove.6B.300d | 0.652 | 0.510 | - | - | 1.000 | 0.291 | PASS | - |
|
|
|
|
| 289 |
|
| 290 |
## Non-OK tasks (skipped / error)
|
| 291 |
|
|
@@ -365,4 +364,4 @@ Raw bag_cos OVERSTATES additivity (a #-matched RANDOM-word bag already explains
|
|
| 365 |
| t26_causal_identifiability | static-average_word_embeddings_glove.6B.300d | skipped | missing caps {'decode'} |
|
| 366 |
|
| 367 |
## Key finding: interpretability is MULTI-DIMENSIONAL (not a single score)
|
| 368 |
-
Across the 9 encoders, the LIVE discriminating tasks rank encoders
|
|
|
|
| 12 |
|
| 13 |
**All-audit-pass intersection (5): t01_lexical_bag, t05_position_order, t08_length_generalization, t13_sae_monosemanticity, t19_crosslingual_readout**
|
| 14 |
|
| 15 |
+
**LIVE intersection — genuinely discriminating, cross-encoder svb std≥0.02 (5): t01_lexical_bag, t05_position_order, t08_length_generalization, t13_sae_monosemanticity, t19_crosslingual_readout**
|
| 16 |
|
| 17 |
CONSTANT / saturated / non-comparative tasks (≈1.0 for every encoder, or a fixed external grid) are kept in the all-pass column for continuity but are **excluded from the LIVE-task Δ** because they carry no ranking signal. The LIVE-task Δ is the honest comparative headline.
|
| 18 |
|
| 19 |
| Encoder | Δ (LIVE tasks, ↑) | Δ (all-pass) | effective_n LIVE / all |
|
| 20 |
|---|---|---|---|
|
| 21 |
+
| sonar | 0.762 | 0.762 | 5 / 5 |
|
| 22 |
+
| st-LaBSE-mean | 0.671 | 0.671 | 5 / 5 |
|
| 23 |
+
| st-all-mpnet-base-v2-mean | 0.704 | 0.704 | 5 / 5 |
|
| 24 |
+
| st-bert-base-uncased-mean | 0.565 | 0.565 | 5 / 5 |
|
| 25 |
+
| st-e5-base-v2-mean | 0.690 | 0.690 | 5 / 5 |
|
| 26 |
+
| st-e5-large-v2-mean | 0.644 | 0.644 | 5 / 5 |
|
| 27 |
+
| st-e5-small-v2-mean | 0.644 | 0.644 | 5 / 5 |
|
| 28 |
+
| st-gte-large-mean | 0.719 | 0.719 | 5 / 5 |
|
| 29 |
+
| static-average_word_embeddings_glove.6B.300d | 0.346 | 0.346 | 5 / 5 |
|
| 30 |
|
| 31 |
+
**LIVE-task ranking:** sonar 0.762 > gte-large 0.719 > all-mpnet-base-v2 0.704 > e5-base-v2 0.690 > LaBSE 0.671 > e5-large-v2 0.644 > e5-small-v2 0.644 > bert-base-uncased 0.565 > static-average_word_embeddings_glove.6B.300d 0.346
|
| 32 |
|
| 33 |
+
**LIVE-task spread (max−min) = 0.416.** Lead of top over 2nd = 0.043 (INSIDE the spread).
|
| 34 |
|
| 35 |
### Tasks in the all-pass set but EXCLUDED from the LIVE Δ (constants / non-comparative)
|
| 36 |
|
| 37 |
- **t07_meaning_coverage**: flagged non_comparative (fixed external grid / not encoder-specific) — no cross-encoder ranking signal
|
|
|
|
| 38 |
- **t21_encoder_pooling_generality**: flagged non_comparative (fixed external grid / not encoder-specific) — no cross-encoder ranking signal
|
| 39 |
|
| 40 |
### Tasks excluded from the intersection (not all-encoder / not all-pass)
|
|
|
|
| 73 |
| t04_negation_scope | core | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ | 1.000✗ |
|
| 74 |
| t05_position_order * | core | 0.840✓ | 0.667✓ | 0.660✓ | 0.798✓ | 0.694✓ | 0.531✓ | 0.512✓ | 0.628✓ | 0.091✓ |
|
| 75 |
| t07_meaning_coverage | core | 0.014✗ | · | · | · | · | · | · | · | · |
|
| 76 |
+
| t08_length_generalization * | core | 0.866✓ | 0.771✓ | 0.857✓ | 0.580✓ | 0.785✓ | 0.749✓ | 0.762✓ | 0.853✓ | 0.542✓ |
|
| 77 |
| t11_position_unrotation | core | 0.000✗ | 0.000✗ | 0.000✗ | 0.000✓ | 0.000✓ | 0.000✗ | 0.000✓ | 0.000✗ | 0.000✓ |
|
| 78 |
| t13_sae_monosemanticity * | core | 0.844✓ | 0.683✓ | 0.960✓ | 0.918✓ | 0.859✓ | 0.820✓ | 0.818✓ | 0.963✓ | 0.767✓ |
|
| 79 |
| t14_capacity_law | core | 0.416✓(probe) | 0.000✗(probe) | -0.615✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) | 0.000✗(probe) |
|
|
|
|
| 176 |
| t04_negation_scope | A | core | sonar | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 177 |
| t05_position_order | A | core | sonar | 0.840 | -0.014 | - | - | 1.000 | 0.842 | PASS | - |
|
| 178 |
| t07_meaning_coverage | A | core | sonar | 0.014 | 0.000 | 0.000 | - | 1.000 | 0.014 | FAIL(NOT-z-specific; DEGENERATE) | - |
|
|
|
|
| 179 |
| t11_position_unrotation | B | core | sonar | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 180 |
| t13_sae_monosemanticity | B | core | sonar | 0.844 | 0.073 | - | - | 1.000 | 0.832 | PASS | - |
|
| 181 |
| t14_capacity_law | B | core | sonar | 0.901 | 0.000 | - | - | 1.000 | 0.901 | PASS | 0.930 |
|
|
|
|
| 188 |
| t22_word_edit | D | gene | sonar | 1.000 | 1.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 189 |
| t23_edit_sentence_2of3 | D | gene | sonar | 0.619 | 0.469 | - | - | 1.000 | 0.282 | PASS | - |
|
| 190 |
| t25_concept_injection_recovery | D | gene | sonar | 0.744 | 0.787 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 191 |
+
| t08_length_generalization | A | core | sonar | 0.866 | 0.510 | 0.000 | 0.000 | 1.000 | 0.727 | PASS | - |
|
| 192 |
| t01_lexical_bag | A | core | st-LaBSE-mean | 0.502 | 0.000 | 1.000 | 0.182 | 1.000 | 0.502 | PASS | - |
|
| 193 |
| t02_number_exact | A | core | st-LaBSE-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 194 |
| t03_entity_presence | A | core | st-LaBSE-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 195 |
| t04_negation_scope | A | core | st-LaBSE-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 196 |
| t05_position_order | A | core | st-LaBSE-mean | 0.667 | 0.006 | - | - | 1.000 | 0.665 | PASS | - |
|
|
|
|
| 197 |
| t11_position_unrotation | B | core | st-LaBSE-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 198 |
| t13_sae_monosemanticity | B | core | st-LaBSE-mean | 0.683 | 0.076 | - | - | 1.000 | 0.657 | PASS | - |
|
| 199 |
| t14_capacity_law | B | core | st-LaBSE-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
|
|
| 201 |
| t19_crosslingual_readout | E | core | st-LaBSE-mean | 1.000 | 0.500 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 202 |
| t21_encoder_pooling_generality | E | core | st-LaBSE-mean | 0.500 | 0.333 | - | - | 1.000 | 0.250 | PASS | 1.000 |
|
| 203 |
| t25_concept_injection_recovery | D | gene | st-LaBSE-mean | 0.846 | 0.706 | - | - | 1.000 | 0.477 | PASS | - |
|
| 204 |
+
| t08_length_generalization | A | core | st-LaBSE-mean | 0.771 | 0.510 | 0.000 | 0.000 | 1.000 | 0.533 | PASS | - |
|
| 205 |
| t01_lexical_bag | A | core | st-all-mpnet-base-v2-mean | 0.263 | 0.000 | 1.000 | 0.182 | 1.000 | 0.263 | PASS | - |
|
| 206 |
| t02_number_exact | A | core | st-all-mpnet-base-v2-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 207 |
| t03_entity_presence | A | core | st-all-mpnet-base-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 208 |
| t04_negation_scope | A | core | st-all-mpnet-base-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 209 |
| t05_position_order | A | core | st-all-mpnet-base-v2-mean | 0.660 | -0.005 | - | - | 1.000 | 0.661 | PASS | - |
|
|
|
|
| 210 |
| t11_position_unrotation | B | core | st-all-mpnet-base-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 211 |
| t13_sae_monosemanticity | B | core | st-all-mpnet-base-v2-mean | 0.960 | 0.081 | - | - | 1.000 | 0.957 | PASS | - |
|
| 212 |
| t14_capacity_law | B | core | st-all-mpnet-base-v2-mean | -0.615 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
|
|
| 214 |
| t19_crosslingual_readout | E | core | st-all-mpnet-base-v2-mean | 0.966 | 0.500 | - | - | 1.000 | 0.933 | PASS | 1.000 |
|
| 215 |
| t21_encoder_pooling_generality | E | core | st-all-mpnet-base-v2-mean | 0.400 | 0.333 | - | - | 1.000 | 0.100 | PASS | 1.000 |
|
| 216 |
| t25_concept_injection_recovery | D | gene | st-all-mpnet-base-v2-mean | 0.800 | 0.817 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 217 |
+
| t08_length_generalization | A | core | st-all-mpnet-base-v2-mean | 0.857 | 0.510 | 0.000 | 0.000 | 1.000 | 0.707 | PASS | - |
|
| 218 |
| t01_lexical_bag | A | core | st-bert-base-uncased-mean | 0.364 | 0.000 | 1.000 | 0.226 | 1.000 | 0.364 | PASS | - |
|
| 219 |
| t02_number_exact | A | core | st-bert-base-uncased-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 220 |
| t03_entity_presence | A | core | st-bert-base-uncased-mean | 0.990 | 0.500 | 1.000 | 0.876 | 1.000 | 0.980 | FAIL(NOT-z-specific) | 1.000 |
|
| 221 |
| t04_negation_scope | A | core | st-bert-base-uncased-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 222 |
| t05_position_order | A | core | st-bert-base-uncased-mean | 0.798 | -0.024 | - | - | 1.000 | 0.803 | PASS | - |
|
|
|
|
| 223 |
| t13_sae_monosemanticity | B | core | st-bert-base-uncased-mean | 0.918 | 0.080 | - | - | 1.000 | 0.911 | PASS | - |
|
| 224 |
| t14_capacity_law | B | core | st-bert-base-uncased-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 225 |
| t19_crosslingual_readout | E | core | st-bert-base-uncased-mean | 0.803 | 0.500 | - | - | 1.000 | 0.607 | PASS | 1.000 |
|
| 226 |
| t21_encoder_pooling_generality | E | core | st-bert-base-uncased-mean | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 227 |
| t25_concept_injection_recovery | D | gene | st-bert-base-uncased-mean | 0.817 | 0.589 | - | - | 1.000 | 0.555 | PASS | - |
|
| 228 |
+
| t08_length_generalization | A | core | st-bert-base-uncased-mean | 0.580 | 0.510 | 0.000 | 0.000 | 1.000 | 0.142 | PASS | - |
|
| 229 |
| t01_lexical_bag | A | core | st-e5-base-v2-mean | 0.381 | 0.000 | 1.000 | 0.226 | 1.000 | 0.381 | PASS | - |
|
| 230 |
| t02_number_exact | A | core | st-e5-base-v2-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 231 |
| t03_entity_presence | A | core | st-e5-base-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 232 |
| t04_negation_scope | A | core | st-e5-base-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 233 |
| t05_position_order | A | core | st-e5-base-v2-mean | 0.694 | -0.024 | - | - | 1.000 | 0.701 | PASS | - |
|
|
|
|
| 234 |
| t13_sae_monosemanticity | B | core | st-e5-base-v2-mean | 0.859 | 0.079 | - | - | 1.000 | 0.846 | PASS | - |
|
| 235 |
| t14_capacity_law | B | core | st-e5-base-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 236 |
| t19_crosslingual_readout | E | core | st-e5-base-v2-mean | 0.981 | 0.500 | - | - | 1.000 | 0.962 | PASS | 1.000 |
|
| 237 |
| t21_encoder_pooling_generality | E | core | st-e5-base-v2-mean | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 238 |
| t25_concept_injection_recovery | D | gene | st-e5-base-v2-mean | 0.884 | 0.593 | - | - | 1.000 | 0.714 | PASS | - |
|
| 239 |
+
| t08_length_generalization | A | core | st-e5-base-v2-mean | 0.785 | 0.510 | 0.000 | 0.000 | 1.000 | 0.561 | PASS | - |
|
| 240 |
| t01_lexical_bag | A | core | st-e5-large-v2-mean | 0.403 | 0.000 | 1.000 | 0.182 | 1.000 | 0.403 | PASS | - |
|
| 241 |
| t02_number_exact | A | core | st-e5-large-v2-mean | 0.113 | 0.000 | 0.635 | 0.285 | 1.000 | 0.113 | FAIL(NOT-z-specific; NOT-z-specific) | 0.990 |
|
| 242 |
| t03_entity_presence | A | core | st-e5-large-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 243 |
| t04_negation_scope | A | core | st-e5-large-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 244 |
| t05_position_order | A | core | st-e5-large-v2-mean | 0.531 | -0.005 | - | - | 1.000 | 0.533 | PASS | - |
|
|
|
|
| 245 |
| t11_position_unrotation | B | core | st-e5-large-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 246 |
| t13_sae_monosemanticity | B | core | st-e5-large-v2-mean | 0.820 | 0.080 | - | - | 1.000 | 0.804 | PASS | - |
|
| 247 |
| t14_capacity_law | B | core | st-e5-large-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
|
|
| 249 |
| t19_crosslingual_readout | E | core | st-e5-large-v2-mean | 0.997 | 0.500 | - | - | 1.000 | 0.994 | PASS | 1.000 |
|
| 250 |
| t21_encoder_pooling_generality | E | core | st-e5-large-v2-mean | 0.500 | 0.333 | - | - | 1.000 | 0.250 | PASS | 1.000 |
|
| 251 |
| t25_concept_injection_recovery | D | gene | st-e5-large-v2-mean | 0.946 | 0.641 | - | - | 1.000 | 0.851 | PASS | - |
|
| 252 |
+
| t08_length_generalization | A | core | st-e5-large-v2-mean | 0.749 | 0.510 | 0.000 | 0.000 | 1.000 | 0.487 | PASS | - |
|
| 253 |
| t01_lexical_bag | A | core | st-e5-small-v2-mean | 0.401 | 0.000 | 1.000 | 0.226 | 1.000 | 0.401 | PASS | - |
|
| 254 |
| t02_number_exact | A | core | st-e5-small-v2-mean | 0.000 | 0.000 | 0.635 | 0.285 | 1.000 | 0.000 | FAIL(NOT-z-specific; NOT-z-specific; DEGENERATE) | 0.990 |
|
| 255 |
| t03_entity_presence | A | core | st-e5-small-v2-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 256 |
| t04_negation_scope | A | core | st-e5-small-v2-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 257 |
| t05_position_order | A | core | st-e5-small-v2-mean | 0.512 | -0.024 | - | - | 1.000 | 0.523 | PASS | - |
|
|
|
|
| 258 |
| t13_sae_monosemanticity | B | core | st-e5-small-v2-mean | 0.818 | 0.080 | - | - | 1.000 | 0.802 | PASS | - |
|
| 259 |
| t14_capacity_law | B | core | st-e5-small-v2-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 260 |
| t19_crosslingual_readout | E | core | st-e5-small-v2-mean | 0.990 | 0.500 | - | - | 1.000 | 0.980 | PASS | 1.000 |
|
| 261 |
| t21_encoder_pooling_generality | E | core | st-e5-small-v2-mean | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 262 |
| t25_concept_injection_recovery | D | gene | st-e5-small-v2-mean | 0.871 | 0.520 | - | - | 1.000 | 0.730 | PASS | - |
|
| 263 |
+
| t08_length_generalization | A | core | st-e5-small-v2-mean | 0.762 | 0.510 | 0.000 | 0.000 | 1.000 | 0.513 | PASS | - |
|
| 264 |
| t01_lexical_bag | A | core | st-gte-large-mean | 0.306 | 0.000 | 1.000 | 0.182 | 1.000 | 0.306 | PASS | - |
|
| 265 |
| t02_number_exact | A | core | st-gte-large-mean | 0.340 | 0.000 | 0.635 | 0.285 | 1.000 | 0.340 | FAIL(NOT-z-specific) | 0.990 |
|
| 266 |
| t03_entity_presence | A | core | st-gte-large-mean | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 267 |
| t04_negation_scope | A | core | st-gte-large-mean | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 268 |
| t05_position_order | A | core | st-gte-large-mean | 0.628 | -0.005 | - | - | 1.000 | 0.629 | PASS | - |
|
|
|
|
| 269 |
| t11_position_unrotation | B | core | st-gte-large-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | - |
|
| 270 |
| t13_sae_monosemanticity | B | core | st-gte-large-mean | 0.963 | 0.080 | - | - | 1.000 | 0.960 | PASS | - |
|
| 271 |
| t14_capacity_law | B | core | st-gte-large-mean | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
|
|
|
| 273 |
| t19_crosslingual_readout | E | core | st-gte-large-mean | 1.000 | 0.500 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 274 |
| t21_encoder_pooling_generality | E | core | st-gte-large-mean | 0.400 | 0.333 | - | - | 1.000 | 0.100 | PASS | 1.000 |
|
| 275 |
| t25_concept_injection_recovery | D | gene | st-gte-large-mean | 0.894 | 0.673 | - | - | 1.000 | 0.677 | PASS | - |
|
| 276 |
+
| t08_length_generalization | A | core | st-gte-large-mean | 0.853 | 0.510 | 0.000 | 0.000 | 1.000 | 0.700 | PASS | - |
|
| 277 |
| t01_lexical_bag | A | core | static-average_word_embeddings_glove.6B.300d | 0.326 | 0.000 | 1.000 | 0.226 | 1.000 | 0.326 | PASS | - |
|
| 278 |
| t02_number_exact | A | core | static-average_word_embeddings_glove.6B.300d | 0.304 | 0.000 | 0.635 | 0.285 | 1.000 | 0.304 | FAIL(NOT-z-specific; NOT-z-specific) | 0.990 |
|
| 279 |
| t03_entity_presence | A | core | static-average_word_embeddings_glove.6B.300d | 1.000 | 0.500 | 1.000 | 0.876 | 1.000 | 1.000 | FAIL(NOT-z-specific) | 1.000 |
|
| 280 |
| t04_negation_scope | A | core | static-average_word_embeddings_glove.6B.300d | 1.000 | 0.748 | 1.000 | 1.000 | 1.000 | 1.000 | FAIL(NOT-z-specific; NOT-z-specific) | 0.950 |
|
| 281 |
| t05_position_order | A | core | static-average_word_embeddings_glove.6B.300d | 0.091 | 0.004 | - | - | 1.000 | 0.088 | PASS | - |
|
|
|
|
| 282 |
| t13_sae_monosemanticity | B | core | static-average_word_embeddings_glove.6B.300d | 0.767 | 0.086 | - | - | 1.000 | 0.745 | PASS | - |
|
| 283 |
| t14_capacity_law | B | core | static-average_word_embeddings_glove.6B.300d | 0.000 | 0.000 | - | - | 1.000 | 0.000 | FAIL(DEGENERATE) | 0.930 |
|
| 284 |
| t19_crosslingual_readout | E | core | static-average_word_embeddings_glove.6B.300d | 0.690 | 0.500 | - | - | 0.875 | 0.506 | PASS | 1.000 |
|
| 285 |
| t21_encoder_pooling_generality | E | core | static-average_word_embeddings_glove.6B.300d | 1.000 | 0.333 | - | - | 1.000 | 1.000 | PASS | 1.000 |
|
| 286 |
| t25_concept_injection_recovery | D | gene | static-average_word_embeddings_glove.6B.300d | 0.652 | 0.510 | - | - | 1.000 | 0.291 | PASS | - |
|
| 287 |
+
| t08_length_generalization | A | core | static-average_word_embeddings_glove.6B.300d | 0.542 | 0.510 | 0.000 | 0.000 | 1.000 | 0.064 | PASS | - |
|
| 288 |
|
| 289 |
## Non-OK tasks (skipped / error)
|
| 290 |
|
|
|
|
| 364 |
| t26_causal_identifiability | static-average_word_embeddings_glove.6B.300d | skipped | missing caps {'decode'} |
|
| 365 |
|
| 366 |
## Key finding: interpretability is MULTI-DIMENSIONAL (not a single score)
|
| 367 |
+
Across the 9 encoders, the LIVE discriminating tasks rank encoders largely **independently**. With the hardened **t08 length-generalization** now a 5th LIVE comparative axis, the mean pairwise Spearman rank-correlation over the 5 LIVE tasks (t01 lexical-bag, t05 order, t08 length-gen, t13 SAE-monosemanticity, t19 cross-lingual) is **+0.21** — up from **+0.10** over the prior 4 LIVE tasks, but still far below a single coherent axis. Lexical-bag readout (t01) and SAE-monosemanticity (t13) remain **anti-correlated (−0.67)**: encoders best at reading words out (LaBSE) are worst at monosemantic features (mpnet/gte top t13). **t08 leans toward the binding/compositional cluster** — it correlates with cross-lingual t19 (+0.53), order t05 (+0.50) and SAE t13 (+0.47) — yet stays **orthogonal to raw lexical-bag readout t01 (+0.00)**: an encoder reading words out of a bag is no better at carrying that readout across length. The static GloVe mean-pool bag is the clear length-generalization **floor (0.542 ≈ the surface null)** and the MLM-only bert control is next (0.580), while the contrastive/retrieval encoders (sonar 0.866, mpnet 0.857, gte 0.853) and SONAR's fixed-width bottleneck lead — exactly the pre-registered prediction that compositional binding, not bag-readout, drives length-generalization. **There is still no coherent single "interpretability axis"** — SIEVE keeps the per-axis profile + heatmap and refuses a single winner column. See `figs/sieve_multidim_interpretability.png`.
|
sieve_bench/common/data.py
CHANGED
|
@@ -744,71 +744,112 @@ def three_sentence_items(seed: int = 0, n: int = 200, smoke: bool = False):
|
|
| 744 |
# serves both tracks.
|
| 745 |
# ---------------------------------------------------------------------------
|
| 746 |
|
| 747 |
-
# A8 length-generalization (v0.
|
| 748 |
#
|
| 749 |
-
#
|
| 750 |
-
#
|
| 751 |
-
#
|
| 752 |
-
#
|
| 753 |
-
#
|
| 754 |
-
#
|
| 755 |
-
#
|
| 756 |
-
# (LONG uses held-out trigger words it never saw) -> bag short->long is weak;
|
| 757 |
-
# - a surface-position reader is weak (concept can appear at any slot);
|
| 758 |
-
# - only an encoder that BINDS the concept semantically, robust to length AND
|
| 759 |
-
# paraphrase, transfers short->long. That transfer-beyond-bag is the signal.
|
| 760 |
#
|
| 761 |
-
#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 762 |
|
| 763 |
-
# concept = MONEY/FINANCE
|
| 764 |
-
|
|
|
|
|
|
|
| 765 |
_LG_MONEY_LONG = ["revenue", "investment", "dividend", "mortgage", "earnings",
|
| 766 |
-
"funding", "payroll", "subsidy"]
|
| 767 |
-
# negative (non-money) content words, also split short/long
|
| 768 |
-
|
| 769 |
-
|
| 770 |
-
|
| 771 |
-
|
| 772 |
-
|
| 773 |
-
|
| 774 |
-
|
| 775 |
-
|
| 776 |
-
|
| 777 |
-
|
| 778 |
-
|
| 779 |
-
"
|
| 780 |
-
"
|
| 781 |
-
"
|
| 782 |
-
"
|
| 783 |
-
"
|
| 784 |
-
"delegates spent considerable time deliberating over the {W} in detail.",
|
| 785 |
-
"Following months of careful negotiation behind closed doors, the working "
|
| 786 |
-
"group finally turned its attention to the matter of the {W} at length.",
|
| 787 |
]
|
| 788 |
|
| 789 |
|
| 790 |
def length_generalization_set(seed: int = 0, n: int = 2000, smoke: bool = False):
|
|
|
|
|
|
|
|
|
|
|
|
|
| 791 |
fp = _data_path(f"length_gen_{n}_{seed}.json")
|
| 792 |
if os.path.exists(fp):
|
| 793 |
with open(fp) as f:
|
| 794 |
return json.load(f)
|
| 795 |
rng = random.Random(seed)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 796 |
items = []
|
| 797 |
while len(items) < n:
|
| 798 |
-
|
| 799 |
-
|
| 800 |
-
|
| 801 |
-
(0, _LG_OTHER_SHORT, _LG_SHORT_TMPL)]:
|
| 802 |
-
w = rng.choice(pool)
|
| 803 |
-
items.append({"text": rng.choice(tmplpool).format(W=w),
|
| 804 |
-
"label": label, "length_bin": "short"})
|
| 805 |
-
# LONG bin: HELD-OUT triggers (disjoint vocab) + long templates
|
| 806 |
-
for label, pool, tmplpool in [
|
| 807 |
-
(1, _LG_MONEY_LONG, _LG_LONG_TMPL),
|
| 808 |
-
(0, _LG_OTHER_LONG, _LG_LONG_TMPL)]:
|
| 809 |
-
w = rng.choice(pool)
|
| 810 |
-
items.append({"text": rng.choice(tmplpool).format(W=w),
|
| 811 |
-
"label": label, "length_bin": "long"})
|
| 812 |
rng.shuffle(items)
|
| 813 |
items = items[:n]
|
| 814 |
with open(fp, "w") as f:
|
|
|
|
| 744 |
# serves both tracks.
|
| 745 |
# ---------------------------------------------------------------------------
|
| 746 |
|
| 747 |
+
# A8 length-generalization (v0.3 natural-corpus binding-beyond-bag rework).
|
| 748 |
#
|
| 749 |
+
# HISTORY. v0.1 used one LITERAL token ("Amazon") -> a bag read it at any length
|
| 750 |
+
# so score==bag==1.0 (vacuous). v0.2 used a money-vs-nature CONCEPT with disjoint
|
| 751 |
+
# short/long trigger vocab in 4 fixed TEMPLATES; the bag floor dropped to ~0 (good)
|
| 752 |
+
# but the concept was so cleanly separable in EVERY encoder that the short->long z
|
| 753 |
+
# AUC hit the within-long ceiling for all 9 encoders -> normalized score==1.0 for
|
| 754 |
+
# all (cross-encoder std .005), so the task still carried NO ranking signal and was
|
| 755 |
+
# excluded from the LIVE intersection.
|
|
|
|
|
|
|
|
|
|
|
|
|
| 756 |
#
|
| 757 |
+
# v0.3 keeps the binding-beyond-bag idea but makes the concept LIVE in REAL,
|
| 758 |
+
# lexically-varied corpus context so that LENGTH genuinely DILUTES the concept
|
| 759 |
+
# signal and the short-trained readout direction must GENERALIZE across length:
|
| 760 |
+
# - target = a paraphrase-robust SEMANTIC concept (FINANCE/MONEY topic), labelled
|
| 761 |
+
# by a money lexicon, with the POSITIVE trigger vocab DISJOINT short vs long
|
| 762 |
+
# (short-train words never appear in the long-test bin) -> a bag CANNOT
|
| 763 |
+
# short->long transfer (held-out words) so the bag floor is ~0.5;
|
| 764 |
+
# - the concept clause is EMBEDDED inside REAL corpus sentences drawn from the
|
| 765 |
+
# v2 corpus: SHORT items are a single short corpus sentence carrying (or not)
|
| 766 |
+
# a short money word; LONG items prepend/append 2-3 unrelated long corpus
|
| 767 |
+
# sentences so the money word is ONE content token among ~25-40 -> 1/N
|
| 768 |
+
# dilution. An encoder that BINDS the concept (keeps it salient + in a
|
| 769 |
+
# length-stable direction) transfers short->long; a length-fragile / pure
|
| 770 |
+
# averaging encoder sees the direction rotate/dilute and DEGRADES.
|
| 771 |
+
# - score = short-trained -> LONG z AUC, normalized into [surface-position null,
|
| 772 |
+
# within-long ceiling]: it measures GENERALIZATION-across-length, not raw
|
| 773 |
+
# readability. The within-long ceiling factors OUT how hard the diluted long
|
| 774 |
+
# read is in absolute terms, so the headline is pure length-transfer.
|
| 775 |
+
#
|
| 776 |
+
# Each item: {text, label(1=money concept present), length_bin('short'|'long'),
|
| 777 |
+
# trigger(the money/other word injected), n_words}.
|
| 778 |
|
| 779 |
+
# concept = MONEY/FINANCE. Trigger vocab split so short-train words != long-test
|
| 780 |
+
# -> a literal bag trained on SHORT money words cannot fire on LONG money words.
|
| 781 |
+
_LG_MONEY_SHORT = ["dollars", "salary", "budget", "loan", "profit", "tax",
|
| 782 |
+
"wages", "savings"]
|
| 783 |
_LG_MONEY_LONG = ["revenue", "investment", "dividend", "mortgage", "earnings",
|
| 784 |
+
"funding", "payroll", "subsidy", "capital", "pension"]
|
| 785 |
+
# negative (non-money) injected content words, also split short/long, so the
|
| 786 |
+
# NEGATIVE class is ALSO a held-out content word (not just "no money word"):
|
| 787 |
+
# this keeps the bag from solving negatives by the absence of a known word.
|
| 788 |
+
_LG_OTHER_SHORT = ["garden", "mountain", "river", "forest", "harbor", "meadow",
|
| 789 |
+
"orchard", "valley"]
|
| 790 |
+
_LG_OTHER_LONG = ["glacier", "canyon", "tundra", "lagoon", "savanna",
|
| 791 |
+
"plateau", "estuary", "prairie", "fjord", "marsh"]
|
| 792 |
+
|
| 793 |
+
# Carrier clauses (short, neutral) into which the trigger word is injected at a
|
| 794 |
+
# varied content slot. Real corpus sentences supply the LONG distractor context.
|
| 795 |
+
_LG_CARRIERS = [
|
| 796 |
+
"the {W} was mentioned in the notes",
|
| 797 |
+
"they finally discussed the {W} today",
|
| 798 |
+
"a report described the {W} in brief",
|
| 799 |
+
"everyone kept asking about the {W}",
|
| 800 |
+
"the {W} came up during the review",
|
| 801 |
+
"she wrote a short line about the {W}",
|
|
|
|
|
|
|
|
|
|
| 802 |
]
|
| 803 |
|
| 804 |
|
| 805 |
def length_generalization_set(seed: int = 0, n: int = 2000, smoke: bool = False):
|
| 806 |
+
"""v0.3: money-concept presence embedded in REAL corpus context, binned
|
| 807 |
+
SHORT vs LONG, with DISJOINT short/long trigger vocab. Probe trains short,
|
| 808 |
+
tests long; the score measures whether the concept readout GENERALIZES across
|
| 809 |
+
length (binding-beyond-bag), normalized into the within-long ceiling."""
|
| 810 |
fp = _data_path(f"length_gen_{n}_{seed}.json")
|
| 811 |
if os.path.exists(fp):
|
| 812 |
with open(fp) as f:
|
| 813 |
return json.load(f)
|
| 814 |
rng = random.Random(seed)
|
| 815 |
+
# Real corpus distractor sentences for the LONG bin (lexically varied).
|
| 816 |
+
try:
|
| 817 |
+
pool = load_corpus(n=max(n, 1500), seed=seed, min_words=8, max_words=22)
|
| 818 |
+
except Exception:
|
| 819 |
+
pool = []
|
| 820 |
+
if len(pool) < 50:
|
| 821 |
+
# offline fallback: synthetic neutral distractors (still lexically varied)
|
| 822 |
+
pool = [c.format(W=w) for c in _LG_CARRIERS
|
| 823 |
+
for w in ("meeting", "weather", "schedule", "building", "journey",
|
| 824 |
+
"festival", "machine", "lecture", "harvest", "voyage")]
|
| 825 |
+
rng.shuffle(pool)
|
| 826 |
+
|
| 827 |
+
def _make(label, length_bin):
|
| 828 |
+
money = (label == 1)
|
| 829 |
+
if length_bin == "short":
|
| 830 |
+
words = _LG_MONEY_SHORT if money else _LG_OTHER_SHORT
|
| 831 |
+
else:
|
| 832 |
+
words = _LG_MONEY_LONG if money else _LG_OTHER_LONG
|
| 833 |
+
w = rng.choice(words)
|
| 834 |
+
clause = rng.choice(_LG_CARRIERS).format(W=w)
|
| 835 |
+
if length_bin == "short":
|
| 836 |
+
text = clause[0].upper() + clause[1:] + "."
|
| 837 |
+
else:
|
| 838 |
+
# embed the concept clause among 2-3 real corpus distractor sentences
|
| 839 |
+
k = rng.randint(2, 3)
|
| 840 |
+
distractors = [pool[rng.randrange(len(pool))] for _ in range(k)]
|
| 841 |
+
parts = distractors[:]
|
| 842 |
+
insert = rng.randint(0, len(parts)) # varied position of the clause
|
| 843 |
+
parts.insert(insert, clause[0].upper() + clause[1:])
|
| 844 |
+
text = ". ".join(p.rstrip(".") for p in parts) + "."
|
| 845 |
+
return {"text": text, "label": label, "length_bin": length_bin,
|
| 846 |
+
"trigger": w, "n_words": len(text.split())}
|
| 847 |
+
|
| 848 |
items = []
|
| 849 |
while len(items) < n:
|
| 850 |
+
for length_bin in ("short", "long"):
|
| 851 |
+
items.append(_make(1, length_bin))
|
| 852 |
+
items.append(_make(0, length_bin))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 853 |
rng.shuffle(items)
|
| 854 |
items = items[:n]
|
| 855 |
with open(fp, "w") as f:
|
sieve_bench/results/sonar.json
CHANGED
|
@@ -251,49 +251,6 @@
|
|
| 251 |
"task_id": "t07",
|
| 252 |
"family": "A"
|
| 253 |
},
|
| 254 |
-
{
|
| 255 |
-
"task": "t08_length_generalization",
|
| 256 |
-
"encoder": "sonar",
|
| 257 |
-
"status": "ok",
|
| 258 |
-
"tier": "core",
|
| 259 |
-
"is_diagnostic": false,
|
| 260 |
-
"caps": [
|
| 261 |
-
"encode"
|
| 262 |
-
],
|
| 263 |
-
"score": 0.9999999980000001,
|
| 264 |
-
"baseline": 0.5,
|
| 265 |
-
"ceiling": 1.0,
|
| 266 |
-
"control": 0.0,
|
| 267 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 268 |
-
"score_over_ceiling": 0.999999997,
|
| 269 |
-
"target": 0.5,
|
| 270 |
-
"falsifier": 0.2,
|
| 271 |
-
"passed": true,
|
| 272 |
-
"falsified": false,
|
| 273 |
-
"ref_sonar": null,
|
| 274 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 275 |
-
"raw": {
|
| 276 |
-
"n_items": 2000,
|
| 277 |
-
"n_short": 1000,
|
| 278 |
-
"n_long": 1000,
|
| 279 |
-
"z_short_to_long_auc": 1.0,
|
| 280 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 281 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 282 |
-
"within_long_auc": 0.9999999999999999,
|
| 283 |
-
"within_short_auc": 1.0,
|
| 284 |
-
"shuffled_control_auc": 0.12256410256410256,
|
| 285 |
-
"gap": -1.1102230246251565e-16,
|
| 286 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 287 |
-
},
|
| 288 |
-
"surface_position_baseline": 0.0,
|
| 289 |
-
"bag_baseline": 0.0,
|
| 290 |
-
"audit": {
|
| 291 |
-
"status": "PASS",
|
| 292 |
-
"reasons": []
|
| 293 |
-
},
|
| 294 |
-
"task_id": "t08",
|
| 295 |
-
"family": "A"
|
| 296 |
-
},
|
| 297 |
{
|
| 298 |
"task": "t09_coreference",
|
| 299 |
"encoder": "sonar",
|
|
@@ -1362,5 +1319,48 @@
|
|
| 1362 |
},
|
| 1363 |
"task_id": "t06",
|
| 1364 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1365 |
}
|
| 1366 |
]
|
|
|
|
| 251 |
"task_id": "t07",
|
| 252 |
"family": "A"
|
| 253 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 254 |
{
|
| 255 |
"task": "t09_coreference",
|
| 256 |
"encoder": "sonar",
|
|
|
|
| 1319 |
},
|
| 1320 |
"task_id": "t06",
|
| 1321 |
"family": "A"
|
| 1322 |
+
},
|
| 1323 |
+
{
|
| 1324 |
+
"task": "t08_length_generalization",
|
| 1325 |
+
"encoder": "sonar",
|
| 1326 |
+
"status": "ok",
|
| 1327 |
+
"tier": "core",
|
| 1328 |
+
"is_diagnostic": false,
|
| 1329 |
+
"caps": [
|
| 1330 |
+
"encode"
|
| 1331 |
+
],
|
| 1332 |
+
"score": 0.8664829782390072,
|
| 1333 |
+
"baseline": 0.51035349090269,
|
| 1334 |
+
"ceiling": 1.0,
|
| 1335 |
+
"control": 0.0,
|
| 1336 |
+
"score_vs_baseline": 0.7273195662428835,
|
| 1337 |
+
"score_over_ceiling": 0.8664829773725242,
|
| 1338 |
+
"target": 0.5,
|
| 1339 |
+
"falsifier": 0.2,
|
| 1340 |
+
"passed": true,
|
| 1341 |
+
"falsified": false,
|
| 1342 |
+
"ref_sonar": null,
|
| 1343 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 1344 |
+
"raw": {
|
| 1345 |
+
"n_items": 2000,
|
| 1346 |
+
"n_short": 1000,
|
| 1347 |
+
"n_long": 1000,
|
| 1348 |
+
"z_short_to_long_auc": 0.8726856667360101,
|
| 1349 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 1350 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 1351 |
+
"within_long_auc": 0.9285177065497432,
|
| 1352 |
+
"within_short_auc": 1.0,
|
| 1353 |
+
"shuffled_control_auc": 0.4220447744475204,
|
| 1354 |
+
"gap": 0.05583203981373308,
|
| 1355 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 1356 |
+
},
|
| 1357 |
+
"surface_position_baseline": 0.0,
|
| 1358 |
+
"bag_baseline": 0.0,
|
| 1359 |
+
"audit": {
|
| 1360 |
+
"status": "PASS",
|
| 1361 |
+
"reasons": []
|
| 1362 |
+
},
|
| 1363 |
+
"task_id": "t08",
|
| 1364 |
+
"family": "A"
|
| 1365 |
}
|
| 1366 |
]
|
sieve_bench/results/st-LaBSE-mean.json
CHANGED
|
@@ -219,49 +219,6 @@
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
| 222 |
-
{
|
| 223 |
-
"task": "t08_length_generalization",
|
| 224 |
-
"encoder": "st-LaBSE-mean",
|
| 225 |
-
"status": "ok",
|
| 226 |
-
"tier": "core",
|
| 227 |
-
"is_diagnostic": false,
|
| 228 |
-
"caps": [
|
| 229 |
-
"encode"
|
| 230 |
-
],
|
| 231 |
-
"score": 0.9999999980000001,
|
| 232 |
-
"baseline": 0.5,
|
| 233 |
-
"ceiling": 1.0,
|
| 234 |
-
"control": 0.08048076906980765,
|
| 235 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 236 |
-
"score_over_ceiling": 0.999999997,
|
| 237 |
-
"target": 0.5,
|
| 238 |
-
"falsifier": 0.2,
|
| 239 |
-
"passed": true,
|
| 240 |
-
"falsified": false,
|
| 241 |
-
"ref_sonar": null,
|
| 242 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 243 |
-
"raw": {
|
| 244 |
-
"n_items": 2000,
|
| 245 |
-
"n_short": 1000,
|
| 246 |
-
"n_long": 1000,
|
| 247 |
-
"z_short_to_long_auc": 1.0,
|
| 248 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 249 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 250 |
-
"within_long_auc": 1.0,
|
| 251 |
-
"within_short_auc": 1.0,
|
| 252 |
-
"shuffled_control_auc": 0.5402403846153846,
|
| 253 |
-
"gap": 0.0,
|
| 254 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 255 |
-
},
|
| 256 |
-
"surface_position_baseline": 0.0,
|
| 257 |
-
"bag_baseline": 0.0,
|
| 258 |
-
"audit": {
|
| 259 |
-
"status": "PASS",
|
| 260 |
-
"reasons": []
|
| 261 |
-
},
|
| 262 |
-
"task_id": "t08",
|
| 263 |
-
"family": "A"
|
| 264 |
-
},
|
| 265 |
{
|
| 266 |
"task": "t09_coreference",
|
| 267 |
"encoder": "st-LaBSE-mean",
|
|
@@ -957,5 +914,48 @@
|
|
| 957 |
},
|
| 958 |
"task_id": "t06",
|
| 959 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 960 |
}
|
| 961 |
]
|
|
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 222 |
{
|
| 223 |
"task": "t09_coreference",
|
| 224 |
"encoder": "st-LaBSE-mean",
|
|
|
|
| 914 |
},
|
| 915 |
"task_id": "t06",
|
| 916 |
"family": "A"
|
| 917 |
+
},
|
| 918 |
+
{
|
| 919 |
+
"task": "t08_length_generalization",
|
| 920 |
+
"encoder": "st-LaBSE-mean",
|
| 921 |
+
"status": "ok",
|
| 922 |
+
"tier": "core",
|
| 923 |
+
"is_diagnostic": false,
|
| 924 |
+
"caps": [
|
| 925 |
+
"encode"
|
| 926 |
+
],
|
| 927 |
+
"score": 0.7712365369933855,
|
| 928 |
+
"baseline": 0.51035349090269,
|
| 929 |
+
"ceiling": 1.0,
|
| 930 |
+
"control": 0.0,
|
| 931 |
+
"score_vs_baseline": 0.5327987450351659,
|
| 932 |
+
"score_over_ceiling": 0.7712365362221488,
|
| 933 |
+
"target": 0.5,
|
| 934 |
+
"falsifier": 0.2,
|
| 935 |
+
"passed": true,
|
| 936 |
+
"falsified": false,
|
| 937 |
+
"ref_sonar": null,
|
| 938 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 939 |
+
"raw": {
|
| 940 |
+
"n_items": 2000,
|
| 941 |
+
"n_short": 1000,
|
| 942 |
+
"n_long": 1000,
|
| 943 |
+
"z_short_to_long_auc": 0.7619177161511259,
|
| 944 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 945 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 946 |
+
"within_long_auc": 0.8365364612504199,
|
| 947 |
+
"within_short_auc": 1.0,
|
| 948 |
+
"shuffled_control_auc": 0.4939591301147365,
|
| 949 |
+
"gap": 0.074618745099294,
|
| 950 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 951 |
+
},
|
| 952 |
+
"surface_position_baseline": 0.0,
|
| 953 |
+
"bag_baseline": 0.0,
|
| 954 |
+
"audit": {
|
| 955 |
+
"status": "PASS",
|
| 956 |
+
"reasons": []
|
| 957 |
+
},
|
| 958 |
+
"task_id": "t08",
|
| 959 |
+
"family": "A"
|
| 960 |
}
|
| 961 |
]
|
sieve_bench/results/st-all-mpnet-base-v2-mean.json
CHANGED
|
@@ -219,49 +219,6 @@
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
| 222 |
-
{
|
| 223 |
-
"task": "t08_length_generalization",
|
| 224 |
-
"encoder": "st-all-mpnet-base-v2-mean",
|
| 225 |
-
"status": "ok",
|
| 226 |
-
"tier": "core",
|
| 227 |
-
"is_diagnostic": false,
|
| 228 |
-
"caps": [
|
| 229 |
-
"encode"
|
| 230 |
-
],
|
| 231 |
-
"score": 0.9999999980000001,
|
| 232 |
-
"baseline": 0.5,
|
| 233 |
-
"ceiling": 1.0,
|
| 234 |
-
"control": 0.3760897428375642,
|
| 235 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 236 |
-
"score_over_ceiling": 0.999999997,
|
| 237 |
-
"target": 0.5,
|
| 238 |
-
"falsifier": 0.2,
|
| 239 |
-
"passed": true,
|
| 240 |
-
"falsified": false,
|
| 241 |
-
"ref_sonar": null,
|
| 242 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 243 |
-
"raw": {
|
| 244 |
-
"n_items": 2000,
|
| 245 |
-
"n_short": 1000,
|
| 246 |
-
"n_long": 1000,
|
| 247 |
-
"z_short_to_long_auc": 1.0,
|
| 248 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 249 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 250 |
-
"within_long_auc": 1.0,
|
| 251 |
-
"within_short_auc": 1.0,
|
| 252 |
-
"shuffled_control_auc": 0.6880448717948718,
|
| 253 |
-
"gap": 0.0,
|
| 254 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 255 |
-
},
|
| 256 |
-
"surface_position_baseline": 0.0,
|
| 257 |
-
"bag_baseline": 0.0,
|
| 258 |
-
"audit": {
|
| 259 |
-
"status": "PASS",
|
| 260 |
-
"reasons": []
|
| 261 |
-
},
|
| 262 |
-
"task_id": "t08",
|
| 263 |
-
"family": "A"
|
| 264 |
-
},
|
| 265 |
{
|
| 266 |
"task": "t09_coreference",
|
| 267 |
"encoder": "st-all-mpnet-base-v2-mean",
|
|
@@ -942,5 +899,48 @@
|
|
| 942 |
},
|
| 943 |
"task_id": "t06",
|
| 944 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 945 |
}
|
| 946 |
]
|
|
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 222 |
{
|
| 223 |
"task": "t09_coreference",
|
| 224 |
"encoder": "st-all-mpnet-base-v2-mean",
|
|
|
|
| 899 |
},
|
| 900 |
"task_id": "t06",
|
| 901 |
"family": "A"
|
| 902 |
+
},
|
| 903 |
+
{
|
| 904 |
+
"task": "t08_length_generalization",
|
| 905 |
+
"encoder": "st-all-mpnet-base-v2-mean",
|
| 906 |
+
"status": "ok",
|
| 907 |
+
"tier": "core",
|
| 908 |
+
"is_diagnostic": false,
|
| 909 |
+
"caps": [
|
| 910 |
+
"encode"
|
| 911 |
+
],
|
| 912 |
+
"score": 0.8565105172004784,
|
| 913 |
+
"baseline": 0.51035349090269,
|
| 914 |
+
"ceiling": 1.0,
|
| 915 |
+
"control": 0.0,
|
| 916 |
+
"score_vs_baseline": 0.7069529122733762,
|
| 917 |
+
"score_over_ceiling": 0.8565105163439678,
|
| 918 |
+
"target": 0.5,
|
| 919 |
+
"falsifier": 0.2,
|
| 920 |
+
"passed": true,
|
| 921 |
+
"falsified": false,
|
| 922 |
+
"ref_sonar": null,
|
| 923 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 924 |
+
"raw": {
|
| 925 |
+
"n_items": 2000,
|
| 926 |
+
"n_short": 1000,
|
| 927 |
+
"n_long": 1000,
|
| 928 |
+
"z_short_to_long_auc": 0.9113472340016963,
|
| 929 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 930 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 931 |
+
"within_long_auc": 0.9785249075866925,
|
| 932 |
+
"within_short_auc": 1.0,
|
| 933 |
+
"shuffled_control_auc": 0.49741562785041044,
|
| 934 |
+
"gap": 0.06717767358499627,
|
| 935 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 936 |
+
},
|
| 937 |
+
"surface_position_baseline": 0.0,
|
| 938 |
+
"bag_baseline": 0.0,
|
| 939 |
+
"audit": {
|
| 940 |
+
"status": "PASS",
|
| 941 |
+
"reasons": []
|
| 942 |
+
},
|
| 943 |
+
"task_id": "t08",
|
| 944 |
+
"family": "A"
|
| 945 |
}
|
| 946 |
]
|
sieve_bench/results/st-bert-base-uncased-mean.json
CHANGED
|
@@ -219,49 +219,6 @@
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
| 222 |
-
{
|
| 223 |
-
"task": "t08_length_generalization",
|
| 224 |
-
"encoder": "st-bert-base-uncased-mean",
|
| 225 |
-
"status": "ok",
|
| 226 |
-
"tier": "core",
|
| 227 |
-
"is_diagnostic": false,
|
| 228 |
-
"caps": [
|
| 229 |
-
"encode"
|
| 230 |
-
],
|
| 231 |
-
"score": 0.9999999980000001,
|
| 232 |
-
"baseline": 0.5,
|
| 233 |
-
"ceiling": 1.0,
|
| 234 |
-
"control": 0.08391025624243578,
|
| 235 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 236 |
-
"score_over_ceiling": 0.999999997,
|
| 237 |
-
"target": 0.5,
|
| 238 |
-
"falsifier": 0.2,
|
| 239 |
-
"passed": true,
|
| 240 |
-
"falsified": false,
|
| 241 |
-
"ref_sonar": null,
|
| 242 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 243 |
-
"raw": {
|
| 244 |
-
"n_items": 2000,
|
| 245 |
-
"n_short": 1000,
|
| 246 |
-
"n_long": 1000,
|
| 247 |
-
"z_short_to_long_auc": 1.0,
|
| 248 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 249 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 250 |
-
"within_long_auc": 1.0,
|
| 251 |
-
"within_short_auc": 1.0,
|
| 252 |
-
"shuffled_control_auc": 0.5419551282051281,
|
| 253 |
-
"gap": 0.0,
|
| 254 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 255 |
-
},
|
| 256 |
-
"surface_position_baseline": 0.0,
|
| 257 |
-
"bag_baseline": 0.0,
|
| 258 |
-
"audit": {
|
| 259 |
-
"status": "PASS",
|
| 260 |
-
"reasons": []
|
| 261 |
-
},
|
| 262 |
-
"task_id": "t08",
|
| 263 |
-
"family": "A"
|
| 264 |
-
},
|
| 265 |
{
|
| 266 |
"task": "t09_coreference",
|
| 267 |
"encoder": "st-bert-base-uncased-mean",
|
|
@@ -990,5 +947,48 @@
|
|
| 990 |
},
|
| 991 |
"task_id": "t06",
|
| 992 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 993 |
}
|
| 994 |
]
|
|
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 222 |
{
|
| 223 |
"task": "t09_coreference",
|
| 224 |
"encoder": "st-bert-base-uncased-mean",
|
|
|
|
| 947 |
},
|
| 948 |
"task_id": "t06",
|
| 949 |
"family": "A"
|
| 950 |
+
},
|
| 951 |
+
{
|
| 952 |
+
"task": "t08_length_generalization",
|
| 953 |
+
"encoder": "st-bert-base-uncased-mean",
|
| 954 |
+
"status": "ok",
|
| 955 |
+
"tier": "core",
|
| 956 |
+
"is_diagnostic": false,
|
| 957 |
+
"caps": [
|
| 958 |
+
"encode"
|
| 959 |
+
],
|
| 960 |
+
"score": 0.5797783361402702,
|
| 961 |
+
"baseline": 0.51035349090269,
|
| 962 |
+
"ceiling": 1.0,
|
| 963 |
+
"control": 0.0,
|
| 964 |
+
"score_vs_baseline": 0.14178564291979334,
|
| 965 |
+
"score_over_ceiling": 0.5797783355604919,
|
| 966 |
+
"target": 0.5,
|
| 967 |
+
"falsifier": 0.2,
|
| 968 |
+
"passed": true,
|
| 969 |
+
"falsified": false,
|
| 970 |
+
"ref_sonar": null,
|
| 971 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 972 |
+
"raw": {
|
| 973 |
+
"n_items": 2000,
|
| 974 |
+
"n_short": 1000,
|
| 975 |
+
"n_long": 1000,
|
| 976 |
+
"z_short_to_long_auc": 0.7183754460642332,
|
| 977 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 978 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 979 |
+
"within_long_auc": 0.8691491574786769,
|
| 980 |
+
"within_short_auc": 1.0,
|
| 981 |
+
"shuffled_control_auc": 0.47822886495655376,
|
| 982 |
+
"gap": 0.15077371141444373,
|
| 983 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 984 |
+
},
|
| 985 |
+
"surface_position_baseline": 0.0,
|
| 986 |
+
"bag_baseline": 0.0,
|
| 987 |
+
"audit": {
|
| 988 |
+
"status": "PASS",
|
| 989 |
+
"reasons": []
|
| 990 |
+
},
|
| 991 |
+
"task_id": "t08",
|
| 992 |
+
"family": "A"
|
| 993 |
}
|
| 994 |
]
|
sieve_bench/results/st-e5-base-v2-mean.json
CHANGED
|
@@ -219,49 +219,6 @@
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
| 222 |
-
{
|
| 223 |
-
"task": "t08_length_generalization",
|
| 224 |
-
"encoder": "st-e5-base-v2-mean",
|
| 225 |
-
"status": "ok",
|
| 226 |
-
"tier": "core",
|
| 227 |
-
"is_diagnostic": false,
|
| 228 |
-
"caps": [
|
| 229 |
-
"encode"
|
| 230 |
-
],
|
| 231 |
-
"score": 0.9999999980000001,
|
| 232 |
-
"baseline": 0.5,
|
| 233 |
-
"ceiling": 1.0,
|
| 234 |
-
"control": 0.1681410253047436,
|
| 235 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 236 |
-
"score_over_ceiling": 0.999999997,
|
| 237 |
-
"target": 0.5,
|
| 238 |
-
"falsifier": 0.2,
|
| 239 |
-
"passed": true,
|
| 240 |
-
"falsified": false,
|
| 241 |
-
"ref_sonar": null,
|
| 242 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 243 |
-
"raw": {
|
| 244 |
-
"n_items": 2000,
|
| 245 |
-
"n_short": 1000,
|
| 246 |
-
"n_long": 1000,
|
| 247 |
-
"z_short_to_long_auc": 1.0,
|
| 248 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 249 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 250 |
-
"within_long_auc": 0.9999999999999999,
|
| 251 |
-
"within_short_auc": 1.0,
|
| 252 |
-
"shuffled_control_auc": 0.5840705128205128,
|
| 253 |
-
"gap": -1.1102230246251565e-16,
|
| 254 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 255 |
-
},
|
| 256 |
-
"surface_position_baseline": 0.0,
|
| 257 |
-
"bag_baseline": 0.0,
|
| 258 |
-
"audit": {
|
| 259 |
-
"status": "PASS",
|
| 260 |
-
"reasons": []
|
| 261 |
-
},
|
| 262 |
-
"task_id": "t08",
|
| 263 |
-
"family": "A"
|
| 264 |
-
},
|
| 265 |
{
|
| 266 |
"task": "t09_coreference",
|
| 267 |
"encoder": "st-e5-base-v2-mean",
|
|
@@ -990,5 +947,48 @@
|
|
| 990 |
},
|
| 991 |
"task_id": "t06",
|
| 992 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 993 |
}
|
| 994 |
]
|
|
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 222 |
{
|
| 223 |
"task": "t09_coreference",
|
| 224 |
"encoder": "st-e5-base-v2-mean",
|
|
|
|
| 947 |
},
|
| 948 |
"task_id": "t06",
|
| 949 |
"family": "A"
|
| 950 |
+
},
|
| 951 |
+
{
|
| 952 |
+
"task": "t08_length_generalization",
|
| 953 |
+
"encoder": "st-e5-base-v2-mean",
|
| 954 |
+
"status": "ok",
|
| 955 |
+
"tier": "core",
|
| 956 |
+
"is_diagnostic": false,
|
| 957 |
+
"caps": [
|
| 958 |
+
"encode"
|
| 959 |
+
],
|
| 960 |
+
"score": 0.7848129272647348,
|
| 961 |
+
"baseline": 0.51035349090269,
|
| 962 |
+
"ceiling": 1.0,
|
| 963 |
+
"control": 0.1703819754211495,
|
| 964 |
+
"score_vs_baseline": 0.5605256663781798,
|
| 965 |
+
"score_over_ceiling": 0.7848129264799218,
|
| 966 |
+
"target": 0.5,
|
| 967 |
+
"falsifier": 0.2,
|
| 968 |
+
"passed": true,
|
| 969 |
+
"falsified": false,
|
| 970 |
+
"ref_sonar": null,
|
| 971 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 972 |
+
"raw": {
|
| 973 |
+
"n_items": 2000,
|
| 974 |
+
"n_short": 1000,
|
| 975 |
+
"n_long": 1000,
|
| 976 |
+
"z_short_to_long_auc": 0.8790865884687394,
|
| 977 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 978 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 979 |
+
"within_long_auc": 0.9801891472372022,
|
| 980 |
+
"within_short_auc": 1.0,
|
| 981 |
+
"shuffled_control_auc": 0.5904050183226385,
|
| 982 |
+
"gap": 0.10110255876846275,
|
| 983 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 984 |
+
},
|
| 985 |
+
"surface_position_baseline": 0.0,
|
| 986 |
+
"bag_baseline": 0.0,
|
| 987 |
+
"audit": {
|
| 988 |
+
"status": "PASS",
|
| 989 |
+
"reasons": []
|
| 990 |
+
},
|
| 991 |
+
"task_id": "t08",
|
| 992 |
+
"family": "A"
|
| 993 |
}
|
| 994 |
]
|
sieve_bench/results/st-e5-large-v2-mean.json
CHANGED
|
@@ -218,49 +218,6 @@
|
|
| 218 |
"task_id": "t07",
|
| 219 |
"family": "A"
|
| 220 |
},
|
| 221 |
-
{
|
| 222 |
-
"task": "t08_length_generalization",
|
| 223 |
-
"encoder": "st-e5-large-v2-mean",
|
| 224 |
-
"status": "ok",
|
| 225 |
-
"tier": "core",
|
| 226 |
-
"is_diagnostic": false,
|
| 227 |
-
"caps": [
|
| 228 |
-
"encode"
|
| 229 |
-
],
|
| 230 |
-
"score": 0.9999999979999998,
|
| 231 |
-
"baseline": 0.5,
|
| 232 |
-
"ceiling": 1.0,
|
| 233 |
-
"control": 0.009871794852051204,
|
| 234 |
-
"score_vs_baseline": 0.9999999939999997,
|
| 235 |
-
"score_over_ceiling": 0.9999999969999998,
|
| 236 |
-
"target": 0.5,
|
| 237 |
-
"falsifier": 0.2,
|
| 238 |
-
"passed": true,
|
| 239 |
-
"falsified": false,
|
| 240 |
-
"ref_sonar": null,
|
| 241 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 242 |
-
"raw": {
|
| 243 |
-
"n_items": 2000,
|
| 244 |
-
"n_short": 1000,
|
| 245 |
-
"n_long": 1000,
|
| 246 |
-
"z_short_to_long_auc": 0.9999999999999999,
|
| 247 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 248 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 249 |
-
"within_long_auc": 1.0,
|
| 250 |
-
"within_short_auc": 1.0,
|
| 251 |
-
"shuffled_control_auc": 0.5049358974358974,
|
| 252 |
-
"gap": 1.1102230246251565e-16,
|
| 253 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 254 |
-
},
|
| 255 |
-
"surface_position_baseline": 0.0,
|
| 256 |
-
"bag_baseline": 0.0,
|
| 257 |
-
"audit": {
|
| 258 |
-
"status": "PASS",
|
| 259 |
-
"reasons": []
|
| 260 |
-
},
|
| 261 |
-
"task_id": "t08",
|
| 262 |
-
"family": "A"
|
| 263 |
-
},
|
| 264 |
{
|
| 265 |
"task": "t09_coreference",
|
| 266 |
"encoder": "st-e5-large-v2-mean",
|
|
@@ -956,5 +913,48 @@
|
|
| 956 |
},
|
| 957 |
"task_id": "t06",
|
| 958 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 959 |
}
|
| 960 |
]
|
|
|
|
| 218 |
"task_id": "t07",
|
| 219 |
"family": "A"
|
| 220 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 221 |
{
|
| 222 |
"task": "t09_coreference",
|
| 223 |
"encoder": "st-e5-large-v2-mean",
|
|
|
|
| 913 |
},
|
| 914 |
"task_id": "t06",
|
| 915 |
"family": "A"
|
| 916 |
+
},
|
| 917 |
+
{
|
| 918 |
+
"task": "t08_length_generalization",
|
| 919 |
+
"encoder": "st-e5-large-v2-mean",
|
| 920 |
+
"status": "ok",
|
| 921 |
+
"tier": "core",
|
| 922 |
+
"is_diagnostic": false,
|
| 923 |
+
"caps": [
|
| 924 |
+
"encode"
|
| 925 |
+
],
|
| 926 |
+
"score": 0.7487559235913531,
|
| 927 |
+
"baseline": 0.51035349090269,
|
| 928 |
+
"ceiling": 1.0,
|
| 929 |
+
"control": 0.0,
|
| 930 |
+
"score_vs_baseline": 0.4868868209461641,
|
| 931 |
+
"score_over_ceiling": 0.7487559228425972,
|
| 932 |
+
"target": 0.5,
|
| 933 |
+
"falsifier": 0.2,
|
| 934 |
+
"passed": true,
|
| 935 |
+
"falsified": false,
|
| 936 |
+
"ref_sonar": null,
|
| 937 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 938 |
+
"raw": {
|
| 939 |
+
"n_items": 2000,
|
| 940 |
+
"n_short": 1000,
|
| 941 |
+
"n_long": 1000,
|
| 942 |
+
"z_short_to_long_auc": 0.8655006320910212,
|
| 943 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 944 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 945 |
+
"within_long_auc": 0.9846697924501128,
|
| 946 |
+
"within_short_auc": 1.0,
|
| 947 |
+
"shuffled_control_auc": 0.5006480933254388,
|
| 948 |
+
"gap": 0.11916916035909153,
|
| 949 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 950 |
+
},
|
| 951 |
+
"surface_position_baseline": 0.0,
|
| 952 |
+
"bag_baseline": 0.0,
|
| 953 |
+
"audit": {
|
| 954 |
+
"status": "PASS",
|
| 955 |
+
"reasons": []
|
| 956 |
+
},
|
| 957 |
+
"task_id": "t08",
|
| 958 |
+
"family": "A"
|
| 959 |
}
|
| 960 |
]
|
sieve_bench/results/st-e5-small-v2-mean.json
CHANGED
|
@@ -219,49 +219,6 @@
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
| 222 |
-
{
|
| 223 |
-
"task": "t08_length_generalization",
|
| 224 |
-
"encoder": "st-e5-small-v2-mean",
|
| 225 |
-
"status": "ok",
|
| 226 |
-
"tier": "core",
|
| 227 |
-
"is_diagnostic": false,
|
| 228 |
-
"caps": [
|
| 229 |
-
"encode"
|
| 230 |
-
],
|
| 231 |
-
"score": 0.9999999980000001,
|
| 232 |
-
"baseline": 0.5,
|
| 233 |
-
"ceiling": 1.0,
|
| 234 |
-
"control": 0.0,
|
| 235 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 236 |
-
"score_over_ceiling": 0.999999997,
|
| 237 |
-
"target": 0.5,
|
| 238 |
-
"falsifier": 0.2,
|
| 239 |
-
"passed": true,
|
| 240 |
-
"falsified": false,
|
| 241 |
-
"ref_sonar": null,
|
| 242 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 243 |
-
"raw": {
|
| 244 |
-
"n_items": 2000,
|
| 245 |
-
"n_short": 1000,
|
| 246 |
-
"n_long": 1000,
|
| 247 |
-
"z_short_to_long_auc": 1.0,
|
| 248 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 249 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 250 |
-
"within_long_auc": 0.9999999999999999,
|
| 251 |
-
"within_short_auc": 1.0,
|
| 252 |
-
"shuffled_control_auc": 0.4963942307692308,
|
| 253 |
-
"gap": -1.1102230246251565e-16,
|
| 254 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 255 |
-
},
|
| 256 |
-
"surface_position_baseline": 0.0,
|
| 257 |
-
"bag_baseline": 0.0,
|
| 258 |
-
"audit": {
|
| 259 |
-
"status": "PASS",
|
| 260 |
-
"reasons": []
|
| 261 |
-
},
|
| 262 |
-
"task_id": "t08",
|
| 263 |
-
"family": "A"
|
| 264 |
-
},
|
| 265 |
{
|
| 266 |
"task": "t09_coreference",
|
| 267 |
"encoder": "st-e5-small-v2-mean",
|
|
@@ -990,5 +947,48 @@
|
|
| 990 |
},
|
| 991 |
"task_id": "t06",
|
| 992 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 993 |
}
|
| 994 |
]
|
|
|
|
| 219 |
"task_id": "t07",
|
| 220 |
"family": "A"
|
| 221 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 222 |
{
|
| 223 |
"task": "t09_coreference",
|
| 224 |
"encoder": "st-e5-small-v2-mean",
|
|
|
|
| 947 |
},
|
| 948 |
"task_id": "t06",
|
| 949 |
"family": "A"
|
| 950 |
+
},
|
| 951 |
+
{
|
| 952 |
+
"task": "t08_length_generalization",
|
| 953 |
+
"encoder": "st-e5-small-v2-mean",
|
| 954 |
+
"status": "ok",
|
| 955 |
+
"tier": "core",
|
| 956 |
+
"is_diagnostic": false,
|
| 957 |
+
"caps": [
|
| 958 |
+
"encode"
|
| 959 |
+
],
|
| 960 |
+
"score": 0.7616208535594768,
|
| 961 |
+
"baseline": 0.51035349090269,
|
| 962 |
+
"ceiling": 1.0,
|
| 963 |
+
"control": 0.0,
|
| 964 |
+
"score_vs_baseline": 0.5131607342751225,
|
| 965 |
+
"score_over_ceiling": 0.761620852797856,
|
| 966 |
+
"target": 0.5,
|
| 967 |
+
"falsifier": 0.2,
|
| 968 |
+
"passed": true,
|
| 969 |
+
"falsified": false,
|
| 970 |
+
"ref_sonar": null,
|
| 971 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 972 |
+
"raw": {
|
| 973 |
+
"n_items": 2000,
|
| 974 |
+
"n_short": 1000,
|
| 975 |
+
"n_long": 1000,
|
| 976 |
+
"z_short_to_long_auc": 0.8670688579155398,
|
| 977 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 978 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 979 |
+
"within_long_auc": 0.9787169352386743,
|
| 980 |
+
"within_short_auc": 1.0,
|
| 981 |
+
"shuffled_control_auc": 0.4911747291609992,
|
| 982 |
+
"gap": 0.11164807732313453,
|
| 983 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 984 |
+
},
|
| 985 |
+
"surface_position_baseline": 0.0,
|
| 986 |
+
"bag_baseline": 0.0,
|
| 987 |
+
"audit": {
|
| 988 |
+
"status": "PASS",
|
| 989 |
+
"reasons": []
|
| 990 |
+
},
|
| 991 |
+
"task_id": "t08",
|
| 992 |
+
"family": "A"
|
| 993 |
}
|
| 994 |
]
|
sieve_bench/results/st-gte-large-mean.json
CHANGED
|
@@ -217,49 +217,6 @@
|
|
| 217 |
"task_id": "t07",
|
| 218 |
"family": "A"
|
| 219 |
},
|
| 220 |
-
{
|
| 221 |
-
"task": "t08_length_generalization",
|
| 222 |
-
"encoder": "st-gte-large-mean",
|
| 223 |
-
"status": "ok",
|
| 224 |
-
"tier": "core",
|
| 225 |
-
"is_diagnostic": false,
|
| 226 |
-
"caps": [
|
| 227 |
-
"encode"
|
| 228 |
-
],
|
| 229 |
-
"score": 0.9999999980000001,
|
| 230 |
-
"baseline": 0.5,
|
| 231 |
-
"ceiling": 1.0,
|
| 232 |
-
"control": 0.17596153810961543,
|
| 233 |
-
"score_vs_baseline": 0.9999999940000002,
|
| 234 |
-
"score_over_ceiling": 0.999999997,
|
| 235 |
-
"target": 0.5,
|
| 236 |
-
"falsifier": 0.2,
|
| 237 |
-
"passed": true,
|
| 238 |
-
"falsified": false,
|
| 239 |
-
"ref_sonar": null,
|
| 240 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 241 |
-
"raw": {
|
| 242 |
-
"n_items": 2000,
|
| 243 |
-
"n_short": 1000,
|
| 244 |
-
"n_long": 1000,
|
| 245 |
-
"z_short_to_long_auc": 1.0,
|
| 246 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 247 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 248 |
-
"within_long_auc": 1.0,
|
| 249 |
-
"within_short_auc": 0.9999999999999999,
|
| 250 |
-
"shuffled_control_auc": 0.5879807692307693,
|
| 251 |
-
"gap": 0.0,
|
| 252 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 253 |
-
},
|
| 254 |
-
"surface_position_baseline": 0.0,
|
| 255 |
-
"bag_baseline": 0.0,
|
| 256 |
-
"audit": {
|
| 257 |
-
"status": "PASS",
|
| 258 |
-
"reasons": []
|
| 259 |
-
},
|
| 260 |
-
"task_id": "t08",
|
| 261 |
-
"family": "A"
|
| 262 |
-
},
|
| 263 |
{
|
| 264 |
"task": "t09_coreference",
|
| 265 |
"encoder": "st-gte-large-mean",
|
|
@@ -940,5 +897,48 @@
|
|
| 940 |
},
|
| 941 |
"task_id": "t06",
|
| 942 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 943 |
}
|
| 944 |
]
|
|
|
|
| 217 |
"task_id": "t07",
|
| 218 |
"family": "A"
|
| 219 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 220 |
{
|
| 221 |
"task": "t09_coreference",
|
| 222 |
"encoder": "st-gte-large-mean",
|
|
|
|
| 897 |
},
|
| 898 |
"task_id": "t06",
|
| 899 |
"family": "A"
|
| 900 |
+
},
|
| 901 |
+
{
|
| 902 |
+
"task": "t08_length_generalization",
|
| 903 |
+
"encoder": "st-gte-large-mean",
|
| 904 |
+
"status": "ok",
|
| 905 |
+
"tier": "core",
|
| 906 |
+
"is_diagnostic": false,
|
| 907 |
+
"caps": [
|
| 908 |
+
"encode"
|
| 909 |
+
],
|
| 910 |
+
"score": 0.8528773511431307,
|
| 911 |
+
"baseline": 0.51035349090269,
|
| 912 |
+
"ceiling": 1.0,
|
| 913 |
+
"control": 0.23700102562583694,
|
| 914 |
+
"score_vs_baseline": 0.6995329348357229,
|
| 915 |
+
"score_over_ceiling": 0.8528773502902532,
|
| 916 |
+
"target": 0.5,
|
| 917 |
+
"falsifier": 0.2,
|
| 918 |
+
"passed": true,
|
| 919 |
+
"falsified": false,
|
| 920 |
+
"ref_sonar": null,
|
| 921 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 922 |
+
"raw": {
|
| 923 |
+
"n_items": 2000,
|
| 924 |
+
"n_short": 1000,
|
| 925 |
+
"n_long": 1000,
|
| 926 |
+
"z_short_to_long_auc": 0.9160199068665889,
|
| 927 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 928 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 929 |
+
"within_long_auc": 0.9859979837096542,
|
| 930 |
+
"within_short_auc": 0.9999999999999999,
|
| 931 |
+
"shuffled_control_auc": 0.6230817237682226,
|
| 932 |
+
"gap": 0.06997807684306534,
|
| 933 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 934 |
+
},
|
| 935 |
+
"surface_position_baseline": 0.0,
|
| 936 |
+
"bag_baseline": 0.0,
|
| 937 |
+
"audit": {
|
| 938 |
+
"status": "PASS",
|
| 939 |
+
"reasons": []
|
| 940 |
+
},
|
| 941 |
+
"task_id": "t08",
|
| 942 |
+
"family": "A"
|
| 943 |
}
|
| 944 |
]
|
sieve_bench/results/static-average_word_embeddings_glove.6B.300d.json
CHANGED
|
@@ -218,49 +218,6 @@
|
|
| 218 |
"task_id": "t07",
|
| 219 |
"family": "A"
|
| 220 |
},
|
| 221 |
-
{
|
| 222 |
-
"task": "t08_length_generalization",
|
| 223 |
-
"encoder": "static-average_word_embeddings_glove.6B.300d",
|
| 224 |
-
"status": "ok",
|
| 225 |
-
"tier": "core",
|
| 226 |
-
"is_diagnostic": false,
|
| 227 |
-
"caps": [
|
| 228 |
-
"encode"
|
| 229 |
-
],
|
| 230 |
-
"score": 0.992147433913141,
|
| 231 |
-
"baseline": 0.5,
|
| 232 |
-
"ceiling": 1.0,
|
| 233 |
-
"control": 0.0,
|
| 234 |
-
"score_vs_baseline": 0.9842948658576923,
|
| 235 |
-
"score_over_ceiling": 0.9921474329209935,
|
| 236 |
-
"target": 0.5,
|
| 237 |
-
"falsifier": 0.2,
|
| 238 |
-
"passed": true,
|
| 239 |
-
"falsified": false,
|
| 240 |
-
"ref_sonar": null,
|
| 241 |
-
"interp": "Semantic-concept probe trained on SHORT, tested on LONG with HELD-OUT trigger vocab. score = transfer beyond surface-position, normalized into the within-long ceiling. Bag CANNOT saturate (disjoint vocab); audit FAILS it if bag/surface null still solves it or no headroom.",
|
| 242 |
-
"raw": {
|
| 243 |
-
"n_items": 2000,
|
| 244 |
-
"n_short": 1000,
|
| 245 |
-
"n_long": 1000,
|
| 246 |
-
"z_short_to_long_auc": 0.9960737179487179,
|
| 247 |
-
"bag_short_to_long_auc": 0.48605769230769236,
|
| 248 |
-
"surface_pos_short_to_long_auc": 0.5,
|
| 249 |
-
"within_long_auc": 1.0,
|
| 250 |
-
"within_short_auc": 1.0,
|
| 251 |
-
"shuffled_control_auc": 0.3524038461538461,
|
| 252 |
-
"gap": 0.003926282051282093,
|
| 253 |
-
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Disjoint short/long trigger vocab => bag cannot saturate."
|
| 254 |
-
},
|
| 255 |
-
"surface_position_baseline": 0.0,
|
| 256 |
-
"bag_baseline": 0.0,
|
| 257 |
-
"audit": {
|
| 258 |
-
"status": "PASS",
|
| 259 |
-
"reasons": []
|
| 260 |
-
},
|
| 261 |
-
"task_id": "t08",
|
| 262 |
-
"family": "A"
|
| 263 |
-
},
|
| 264 |
{
|
| 265 |
"task": "t09_coreference",
|
| 266 |
"encoder": "static-average_word_embeddings_glove.6B.300d",
|
|
@@ -989,5 +946,48 @@
|
|
| 989 |
},
|
| 990 |
"task_id": "t06",
|
| 991 |
"family": "A"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 992 |
}
|
| 993 |
]
|
|
|
|
| 218 |
"task_id": "t07",
|
| 219 |
"family": "A"
|
| 220 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 221 |
{
|
| 222 |
"task": "t09_coreference",
|
| 223 |
"encoder": "static-average_word_embeddings_glove.6B.300d",
|
|
|
|
| 946 |
},
|
| 947 |
"task_id": "t06",
|
| 948 |
"family": "A"
|
| 949 |
+
},
|
| 950 |
+
{
|
| 951 |
+
"task": "t08_length_generalization",
|
| 952 |
+
"encoder": "static-average_word_embeddings_glove.6B.300d",
|
| 953 |
+
"status": "ok",
|
| 954 |
+
"tier": "core",
|
| 955 |
+
"is_diagnostic": false,
|
| 956 |
+
"caps": [
|
| 957 |
+
"encode"
|
| 958 |
+
],
|
| 959 |
+
"score": 0.5418366037309732,
|
| 960 |
+
"baseline": 0.51035349090269,
|
| 961 |
+
"ceiling": 1.0,
|
| 962 |
+
"control": 0.0,
|
| 963 |
+
"score_vs_baseline": 0.06429763549632243,
|
| 964 |
+
"score_over_ceiling": 0.5418366031891365,
|
| 965 |
+
"target": 0.5,
|
| 966 |
+
"falsifier": 0.2,
|
| 967 |
+
"passed": true,
|
| 968 |
+
"falsified": false,
|
| 969 |
+
"ref_sonar": null,
|
| 970 |
+
"interp": "Money-concept probe trained on SHORT, tested on LONG (concept embedded in real corpus context; DISJOINT short/long trigger vocab). score = short->long transfer beyond surface-position, normalized into the within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate (held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.",
|
| 971 |
+
"raw": {
|
| 972 |
+
"n_items": 2000,
|
| 973 |
+
"n_short": 1000,
|
| 974 |
+
"n_long": 1000,
|
| 975 |
+
"z_short_to_long_auc": 0.6814901345793793,
|
| 976 |
+
"bag_short_to_long_auc": 0.4861340032964747,
|
| 977 |
+
"surface_pos_short_to_long_auc": 0.51035349090269,
|
| 978 |
+
"within_long_auc": 0.8261989726520619,
|
| 979 |
+
"within_short_auc": 1.0,
|
| 980 |
+
"shuffled_control_auc": 0.49619945272119187,
|
| 981 |
+
"gap": 0.14470883807268253,
|
| 982 |
+
"note": "score = (z short->long AUC - surface-pos)/(within-long - surface-pos). bag/surf in normalized space; gap = within-long - short->long. Concept embedded in real corpus context + disjoint short/long trigger vocab => bag cannot saturate."
|
| 983 |
+
},
|
| 984 |
+
"surface_position_baseline": 0.0,
|
| 985 |
+
"bag_baseline": 0.0,
|
| 986 |
+
"audit": {
|
| 987 |
+
"status": "PASS",
|
| 988 |
+
"reasons": []
|
| 989 |
+
},
|
| 990 |
+
"task_id": "t08",
|
| 991 |
+
"family": "A"
|
| 992 |
}
|
| 993 |
]
|
sieve_bench/tasks/t08_length_generalization.py
CHANGED
|
@@ -1,28 +1,50 @@
|
|
| 1 |
-
"""A8 length-generalization — core readout, T0 (v0.
|
| 2 |
-
|
| 3 |
-
Train a
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 14 |
|
| 15 |
score = short-trained -> LONG z AUC, normalized into
|
| 16 |
-
[
|
| 17 |
-
|
|
|
|
|
|
|
| 18 |
baseline = surface-position short->long AUC (the null we must beat)
|
| 19 |
-
ceiling = WITHIN-LONG z AUC (probe trained AND tested on long)
|
| 20 |
-
control = shuffled-label null (short-train -> long) AUC
|
| 21 |
-
bag_baseline = bag-of-words short->long AUC
|
| 22 |
-
|
| 23 |
-
surface_position_baseline = fixed-slot word features short->long AUC
|
| 24 |
-
raw.gap = within-long ceiling
|
| 25 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 26 |
|
| 27 |
A literal-entity bag can no longer saturate this; the audit rejects it if the
|
| 28 |
bag/surface null still solves it or if there is no headroom.
|
|
@@ -41,10 +63,11 @@ IS_DIAGNOSTIC = False
|
|
| 41 |
TARGET = 0.5
|
| 42 |
FALSIFIER = 0.2
|
| 43 |
REF_SONAR = None
|
| 44 |
-
INTERP = ("
|
| 45 |
-
"trigger vocab. score =
|
| 46 |
-
"
|
| 47 |
-
"
|
|
|
|
| 48 |
|
| 49 |
|
| 50 |
def build_data(seed: int = 0, n: int = None, smoke: bool = False):
|
|
@@ -67,13 +90,15 @@ def run(encoder, data):
|
|
| 67 |
short_idx = np.where(is_short)[0]
|
| 68 |
long_idx = np.where(~is_short)[0]
|
| 69 |
|
| 70 |
-
# within-long ceiling: split long into train/test
|
|
|
|
|
|
|
| 71 |
rng = np.random.RandomState(seed)
|
| 72 |
perm_l = rng.permutation(long_idx)
|
| 73 |
cut = int(len(perm_l) * 0.5)
|
| 74 |
l_tr, l_te = perm_l[:cut], perm_l[cut:]
|
| 75 |
|
| 76 |
-
# short-trained -> evaluate on the
|
| 77 |
z_auc = _probe.logistic_auc(Z[short_idx], y[short_idx], Z[l_te], y[l_te])
|
| 78 |
bag_b = _probe.logistic_auc(Xbag[short_idx], y[short_idx], Xbag[l_te], y[l_te])
|
| 79 |
pos_b = _probe.logistic_auc(Xpos[short_idx], y[short_idx], Xpos[l_te], y[l_te])
|
|
@@ -82,15 +107,15 @@ def run(encoder, data):
|
|
| 82 |
|
| 83 |
within_long = _probe.logistic_auc(Z[l_tr], y[l_tr], Z[l_te], y[l_te])
|
| 84 |
|
| 85 |
-
# sanity: within-short AUC
|
| 86 |
perm_s = rng.permutation(short_idx)
|
| 87 |
cs = int(len(perm_s) * 0.6)
|
| 88 |
within_short = _probe.logistic_auc(Z[perm_s[:cs]], y[perm_s[:cs]],
|
| 89 |
Z[perm_s[cs:]], y[perm_s[cs:]])
|
| 90 |
|
| 91 |
# SCORE = transfer beyond the surface-position null, normalized into the
|
| 92 |
-
# within-long ceiling. baseline = surface-position (NOT bag), so the
|
| 93 |
-
#
|
| 94 |
base = pos_b
|
| 95 |
ceil = max(within_long, z_auc, base + 1e-3)
|
| 96 |
score = float(np.clip((z_auc - base) / (ceil - base + 1e-9), 0.0, 1.0))
|
|
@@ -115,7 +140,7 @@ def run(encoder, data):
|
|
| 115 |
"gap": float(within_long - z_auc),
|
| 116 |
"note": ("score = (z short->long AUC - surface-pos)/(within-long - "
|
| 117 |
"surface-pos). bag/surf in normalized space; gap = within-long "
|
| 118 |
-
"- short->long.
|
| 119 |
-
"saturate."),
|
| 120 |
},
|
| 121 |
}
|
|
|
|
| 1 |
+
"""A8 length-generalization — core readout, T0 (v0.3 natural-corpus rework).
|
| 2 |
+
|
| 3 |
+
Train a MONEY/FINANCE concept probe on SHORT sentences (a short corpus-style
|
| 4 |
+
clause carrying, or not, a money word), test on LONG sentences (the same concept
|
| 5 |
+
clause EMBEDDED among 2-3 real, unrelated corpus sentences so the money token is
|
| 6 |
+
ONE content word among ~25-40 -> 1/N dilution). The positive trigger vocab is
|
| 7 |
+
DISJOINT short vs long, so a literal bag trained on the SHORT money words CANNOT
|
| 8 |
+
fire on the held-out LONG money words. The question: does the readout BIND the
|
| 9 |
+
concept beyond a literal bag AND GENERALIZE the readout direction across length?
|
| 10 |
+
|
| 11 |
+
Why the old versions saturated:
|
| 12 |
+
v0.1 used one literal token ("Amazon") -> a bag read it at any length, score==1.
|
| 13 |
+
v0.2 used a money-vs-nature concept in 4 fixed TEMPLATES -> the concept was so
|
| 14 |
+
cleanly separable in every encoder that short->long z AUC hit the
|
| 15 |
+
within-long ceiling for ALL 9 (normalized score==1.0, cross-enc std .005),
|
| 16 |
+
so it carried no ranking signal and was excluded from the LIVE intersection.
|
| 17 |
+
v0.3 embeds the concept in REAL, lexically-varied corpus context so LENGTH
|
| 18 |
+
genuinely DILUTES the signal: a binding encoder transfers short->long; a
|
| 19 |
+
length-fragile / pure-averaging one sees the direction rotate/dilute and
|
| 20 |
+
DEGRADES -> the score now SPREADS across encoders.
|
| 21 |
|
| 22 |
score = short-trained -> LONG z AUC, normalized into
|
| 23 |
+
[surface-position null, within-long ceiling]. Measures
|
| 24 |
+
GENERALIZATION across length (binding-beyond-bag), NOT raw
|
| 25 |
+
readability: the within-long ceiling factors out absolute difficulty
|
| 26 |
+
so the headline is pure length-transfer. Raw AUCs in raw.
|
| 27 |
baseline = surface-position short->long AUC (the null we must beat)
|
| 28 |
+
ceiling = WITHIN-LONG z AUC (probe trained AND tested on long) -> headroom
|
| 29 |
+
control = shuffled-label null (short-train -> long) AUC -> ~0.5
|
| 30 |
+
bag_baseline = bag-of-words short->long AUC. Held-out LONG money
|
| 31 |
+
vocab => the bag CANNOT transfer -> ~0.5 (floor).
|
| 32 |
+
surface_position_baseline = fixed-slot word features short->long AUC -> ~0.5
|
| 33 |
+
raw.gap = within-long ceiling - short->long z AUC (the
|
| 34 |
+
length-generalization GAP; 0 = perfect transfer)
|
| 35 |
+
|
| 36 |
+
PRE-REGISTRATION.
|
| 37 |
+
Prediction: encoders trained with sentence-level contrastive / retrieval
|
| 38 |
+
objectives on varied-length data (gte, e5, mpnet, LaBSE, SONAR) GENERALIZE
|
| 39 |
+
the concept readout across length better than a static mean-of-GloVe bag,
|
| 40 |
+
which has NO compositional binding and dilutes the concept ~1/N, so it should
|
| 41 |
+
be the WORST length-generalizer. SONAR (fixed-width bottleneck, length-robust
|
| 42 |
+
by design) should be at or near the top.
|
| 43 |
+
Falsifier: if the task is STILL saturated (cross-encoder std < 0.02) or the
|
| 44 |
+
bag/surface null still solves it, the task is STILL BROKEN -> report so
|
| 45 |
+
honestly rather than forcing a spread. If instead every encoder generalizes
|
| 46 |
+
EQUALLY well at high score (std < 0.02 but scores high), the honest finding
|
| 47 |
+
is "length-generalization of this concept is UNIVERSAL".
|
| 48 |
|
| 49 |
A literal-entity bag can no longer saturate this; the audit rejects it if the
|
| 50 |
bag/surface null still solves it or if there is no headroom.
|
|
|
|
| 63 |
TARGET = 0.5
|
| 64 |
FALSIFIER = 0.2
|
| 65 |
REF_SONAR = None
|
| 66 |
+
INTERP = ("Money-concept probe trained on SHORT, tested on LONG (concept embedded "
|
| 67 |
+
"in real corpus context; DISJOINT short/long trigger vocab). score = "
|
| 68 |
+
"short->long transfer beyond surface-position, normalized into the "
|
| 69 |
+
"within-long ceiling -> pure length-GENERALIZATION. Bag CANNOT saturate "
|
| 70 |
+
"(held-out long vocab); audit FAILS it if bag/surface solves it / no headroom.")
|
| 71 |
|
| 72 |
|
| 73 |
def build_data(seed: int = 0, n: int = None, smoke: bool = False):
|
|
|
|
| 90 |
short_idx = np.where(is_short)[0]
|
| 91 |
long_idx = np.where(~is_short)[0]
|
| 92 |
|
| 93 |
+
# within-long ceiling: split long into train/test; the short->long probe is
|
| 94 |
+
# evaluated on the SAME held-out long test set (l_te) so ceiling and transfer
|
| 95 |
+
# are measured on identical items.
|
| 96 |
rng = np.random.RandomState(seed)
|
| 97 |
perm_l = rng.permutation(long_idx)
|
| 98 |
cut = int(len(perm_l) * 0.5)
|
| 99 |
l_tr, l_te = perm_l[:cut], perm_l[cut:]
|
| 100 |
|
| 101 |
+
# short-trained -> evaluate on the held-out long test set (l_te)
|
| 102 |
z_auc = _probe.logistic_auc(Z[short_idx], y[short_idx], Z[l_te], y[l_te])
|
| 103 |
bag_b = _probe.logistic_auc(Xbag[short_idx], y[short_idx], Xbag[l_te], y[l_te])
|
| 104 |
pos_b = _probe.logistic_auc(Xpos[short_idx], y[short_idx], Xpos[l_te], y[l_te])
|
|
|
|
| 107 |
|
| 108 |
within_long = _probe.logistic_auc(Z[l_tr], y[l_tr], Z[l_te], y[l_te])
|
| 109 |
|
| 110 |
+
# sanity: within-short AUC (probe trained AND tested on short)
|
| 111 |
perm_s = rng.permutation(short_idx)
|
| 112 |
cs = int(len(perm_s) * 0.6)
|
| 113 |
within_short = _probe.logistic_auc(Z[perm_s[:cs]], y[perm_s[:cs]],
|
| 114 |
Z[perm_s[cs:]], y[perm_s[cs:]])
|
| 115 |
|
| 116 |
# SCORE = transfer beyond the surface-position null, normalized into the
|
| 117 |
+
# within-long ceiling. baseline = surface-position (NOT bag), so the headline
|
| 118 |
+
# measures length-GENERALIZATION (binding-beyond-surface that survives length).
|
| 119 |
base = pos_b
|
| 120 |
ceil = max(within_long, z_auc, base + 1e-3)
|
| 121 |
score = float(np.clip((z_auc - base) / (ceil - base + 1e-9), 0.0, 1.0))
|
|
|
|
| 140 |
"gap": float(within_long - z_auc),
|
| 141 |
"note": ("score = (z short->long AUC - surface-pos)/(within-long - "
|
| 142 |
"surface-pos). bag/surf in normalized space; gap = within-long "
|
| 143 |
+
"- short->long. Concept embedded in real corpus context + "
|
| 144 |
+
"disjoint short/long trigger vocab => bag cannot saturate."),
|
| 145 |
},
|
| 146 |
}
|