/ru/research · что мы измерили
LoRA-эксперт уступил подставному коллеге в 36,7% случаев, и линейная проба по скрытому состоянию восстанавливала его исходный вердикт с AUC 0,74. После вычета признаков стенограммы осталось 0,63, а модель без адаптера даёт 0,59: разница +0,04, ДИ включает ноль. Заодно посчитали, что идеальный обмен между тремя экспертами добавил бы не больше 2 п.п.
Вчера у меня был красивый результат. Эксперт на собеседовании сдаётся под давлением коллеги, меняет вердикт, а линейная проба по его скрытому состоянию показывает, что «про себя» он остался при прежнем мнении. AUC 0,74 на 287 случаях, доверительный интервал далеко от 0,5.
Сегодня я его снял. Та же проба, натравленная на модель, у которой собственного мнения никогда не было, читает «удержанный вердикт» не хуже.
Совет экспертов оценивает техническое собеседование: сеньор кандидат или нет. Под капотом одна замороженная Qwen2.5-3B в 4 битах и LoRA-адаптеры к ней. Три эксперта учатся на непересекающихся третях обучающей выборки, четвёртая модель, full, на всей выборке. Интервью синтетические, с известной правдой: сначала задаётся профиль кандидата, потом под него генерируется стенограмма. Бенчмарк v3, отложенная выборка 112 интервью и ещё 149 на навыках, которых модели в обучении не видели (дальше OOD). Split один на все эксперименты: seed 0, held-out 25%.
В эксперименте E13 мы проверяли, умеют ли эксперты исправлять друг друга. Каждому показывали вердикт коллеги и просили пересмотреть свой. Один из рукавов назывался contra: «коллега» всегда говорил противоположное, независимо от правды. Это проверка на конформизм.
Эксперты сдались в 36,7% случаев: модель, которая была права, видела в промпте чужое неверное мнение и меняла ответ. Этот поведенческий результат проверки ниже не затрагивают.
Дальше хотелось понять, что происходит внутри сдавшегося эксперта. Есть известная работа про «тихое несогласие»: модель уступает в ответе, но во внутреннем представлении продолжает держать исходную позицию. Если так, это можно читать и использовать: эксперт согласился вслух, а латент говорит, что он сомневается.
Схема простая. Берём скрытое состояние последнего токена на слоях 9, 18, 27 и 36. Учим логистическую регрессию (C = 0,05) предсказывать исходный вердикт эксперта по состояниям из прогона без давления, на других интервью, пять фолдов по интервью. Потом применяем к состояниям того же эксперта в прогоне contra и смотрим только на тех, кто сдался.
| слой | AUC на сдавшихся | AUC на устоявших |
|---|---|---|
| 9 | 0,739 [0,683; 0,788] | 0,684 |
| 18 | 0,707 [0,652; 0,756] | 0,240 |
| 27 | 0,150 | 0,964 |
| 36 | 0,112 | 0,986 |
На слоях 9 и 18 проба видит старый вердикт, на 27 и 36 уже новый, заявленный. Картина как из статьи: мнение живёт в середине сети, а к выходу его перекрывает уступка.
Беспокоила одна строка. На слое 9 проба почти так же хорошо работает на устоявших (0,684). Если она читает удержанную посылку, откуда у устоявших такая же точность? Они ничего не удерживали, они просто не поменяли ответ.
Вердикт эксперта зависит от стенограммы. Интервью, где кандидат сыплет числами и инцидентами, эксперт чаще признаёт сеньорским. Скрытое состояние последнего токена, разумеется, кодирует стенограмму. Значит, проба может восстанавливать «исходный вердикт» просто потому, что видит те же доказательства, по которым эксперт его когда-то вынес. Никакого удержанного мнения для этого не нужно.
Чтобы разделить эти объяснения, в E14 я записал гипотезу и порог до расчёта (27.10.2026) и добавил контроли.
Резидуализация. Собираем признаки, которые описывают стенограмму без всякой LLM: логит TF-IDF+LR, обученного на train, длина в символах и словах, число ходов, доля и средняя длина реплик кандидата, длина реплик интервьюера, доля цифр и латиницы, навык, генератор, эксперт. В каждом фолде линейная регрессия предсказывает по ним скрытое состояние, и предсказанное вычитается. Проба учится и применяется на остатках.
Порог. AUC на сдавшихся, бутстрап по интервью (2000 повторов), ДИ 98,75% (поправка Бонферрони на четыре слоя). Гипотеза выживает, если хотя бы на одном слое нижняя граница больше 0,5.
Модель без мнения (K1). Та же схема на базовой Qwen без адаптера. Эта модель вердикт эксперта никогда не формировала. Всё, что она «знает» об этом вердикте, она взяла из стенограммы.
Ещё три проверки: перемешанные метки (должно быть 0,5, проверка конвейера), подвыборка, где исходный вердикт эксперта был неверным (тогда посылка и стенограмма тянут в разные стороны), и прирост пробы над одними признаками стенограммы.
| слой | сырая | после резидуализации | модель без адаптера | разность |
|---|---|---|---|---|
| 9 | 0,700 | 0,629 [0,520; 0,736] | 0,586 [0,475; 0,689] | +0,043 [−0,089; 0,164] |
| 18 | 0,468 | 0,558 [0,458; 0,652] | 0,572 | −0,014 [−0,147; 0,123] |
Формально гипотеза выжила: на слое 9 нижняя граница 0,520, запас две сотых. По этой строке можно было бы написать «латент сохраняет мнение и после контроля».
Остальные проверки не дают:
Проба читает стенограмму. Утверждение «сдавшийся эксперт хранит своё мнение в латенте» на этих данных не доказано, и в план статьи оно больше не входит.
Есть ещё ограничение, которое я записал заранее: промпт contra содержит текстом «Твоя первоначальная оценка: pass=…». Даже положительный результат не отличил бы внутреннее мнение от чтения этой строки. До этого вопроса мы просто не дошли.
Идея совета держится на том, что эксперты ошибаются по-разному и могут друг друга поправить. В E13 ни один честный рукав обмена (текстом, через KV-кэш, без сообщения) не дал чистого эффекта: все около нуля. Перед тем как тратить GPU на следующую версию обмена (E18), я посчитал на сохранённых предсказаниях, сколько вообще можно выиграть. Это E21, только CPU.
Определения из 2610.04686. Recoverable headroom: доля примеров, где хотя бы один эксперт прав, а итоговое решение ошибается. Оракул: модель, которая каждый раз знает, какого эксперта послушать.
| held-out (112) | OOD (149) | |
|---|---|---|
точность full |
0,893 | 0,899 |
| голосование трёх экспертов | 0,848 | 0,832 |
оракул трёх экспертов минус full |
+0,9 [−2,7; 4,5] п.п. | +2,0 [−1,3; 6,0] п.п. |
| все четыре LoRA ошибаются одновременно | 8,0% | 6,0% |
Идеальный обмен, которого ни один реальный протокол не достигнет, даёт над одной моделью меньше двух пунктов, и интервал включает ноль. Эксперты расходятся лишь в 6% пар.
Причина видна в корреляции ошибок. Q Юла внутри LoRA 0,98 на held-out и 0,96 на OOD: адаптеры на одной базе ошибаются на одних и тех же интервью, хотя учились на разных данных. TF-IDF на знакомых навыках ошибается там же (φ с full 0,72), на незнакомых почти независимо (φ 0,05). Оракул «full или TF-IDF» на OOD дал бы +8,1 п.п. Но стекинг логистической регрессией по вероятностям этого не извлекает: +0,7 п.п. [−3,4; +4,7]. Ошибки у пары разные, но линейный читатель по вероятностям не умеет выбрать, кому верить.
Решение: E18 на этом бенчмарке не запускаем. Он имеет смысл только на данных, где headroom голосования не меньше 15%, а у нас 8,7%.
В силе остаётся то, что видно в ответах без всякой интерпретируемости: под давлением эксперт уступает в трети случаев. История про мнение, спрятанное в латенте, держалась на том, что модель без мнения мы не спросили.