Пошаговая декомпозиция влияния данных в рекуррентных трансформерах¶
~4 минуты чтения
Предварительно: Прогресс глубокого обучения | Эффективные трансформеры
Стандартные методы data attribution (TracIn, influence functions) дают один скалярный скор на пример -- "этот пример важен на 0.73". Но для looped transformers (рекуррентные архитектуры с shared блоками, как Universal Transformer) это теряет ключевую информацию: на каком именно шаге рекурсии пример влияет? Step-Decomposed Influence (SDI) решает эту проблему, раскладывая TracIn по временным шагам и давая influence trajectory вместо скаляра. Результат -- per-step insights в reasoning process модели, что критично для debugging и interpretability.
URL: https://arxiv.org/pdf/2602.10097v1 Тип: arxiv paper Дата: 2026-02-10 Авторы: Georgios Kaissis, David Mildenberger, Juan Felipe Gomez, Martin J. Menten, Eleni Triantafillou
Ключевые идеи¶
- Looped transformers (GPT-style) применяют shared блок рекурсивно для latent reasoning
- TracIn limitation — дает single scalar score, агригирует все loop iterations
- Step-Decomposed Influence (SDI) — decomposition TracIn по timestep'ам:
- Unrolls recurrent computation graph
- Attributes influence к конкретным loop iterations
- Per-step insights в reasoning process
- TensorSketch implementation — never materialises per-example gradients для scalability
Формулы и математика¶
Применения для AI/LLM Engineer¶
Interpretability¶
- Per-step attribution — понимание какие input'ы влияют на каждый шаг reasoning
- Debugging looped models — identification problematic reasoning paths
- Fine-grained analysis — вместо aggregated score
Training insights¶
- Data attribution — какие training examples важнее для конкретных behaviours
- Curriculum learning — identification difficult examples
- Quality analysis — detection outliers в training data
Связанные работы¶
- TracIn (original influence estimation)
- RAP (Recall-Aware Pruning)
- Transformer interpretability papers
Цитаты¶
"Existing training-data influence estimators such as TracIn yield a single scalar score that aggregates over all loop iterations, obscuring when during recurrent computation a training example matters."
Мои заметки¶
Почему это важно: - Looped transformers (shared-block recurrent architectures like Universal Transformers) — niche but theoretically important; standard GPT/Claude use distinct, non-shared layers - Understanding model internals — interview question для ML Engineer - Data attribution — часть MLOps и debugging
Further research: - TracIn original paper - Influence estimation methods - Transformer interpretability survey
Частые заблуждения¶
Заблуждение: SDI применим к стандартным GPT/Claude моделям
SDI разработан для looped transformers -- архитектур с shared-block рекурсией (Universal Transformer, DEQ). Стандартные GPT, Claude, Llama используют distinct (не shared) слои, поэтому SDI в чистом виде к ним неприменим. Для стандартных трансформеров используют layer-wise attribution или attention-based interpretability.
Заблуждение: Influence functions масштабируются на LLM уровне
Классические influence functions требуют вычисления Hessian-inverse, что для модели с миллиардами параметров вычислительно невозможно (O(p^2) память). TracIn -- упрощенная аппроксимация через dot-product градиентов, но и он дорог. SDI использует TensorSketch для scalability -- never materialises per-example gradients. На практике для production LLM чаще используют proxy-методы: embedding similarity, attention patterns.
Вопросы для собеседования¶
Объясните разницу между TracIn и SDI. Когда SDI дает преимущество?
"SDI -- это улучшенная версия TracIn" -- слишком поверхностно, не показывает понимание.
Сильный ответ: TracIn оценивает влияние training example как сумму dot-products градиентов по всем checkpoint'ам -- результат один скаляр. SDI декомпозирует этот скаляр по loop iterations в рекуррентных трансформерах, давая influence trajectory (gamma_1, ..., gamma_T). Преимущество SDI: можно увидеть, что example X критичен на шаге 3 рассуждения, но не важен на шагах 1-2. Это позволяет debugging reasoning paths -- например, обнаружить, что ошибка возникает из-за конкретного training примера на конкретном шаге рекурсии.
Как бы вы реализовали data attribution для production LLM с 70B параметрами?
"Используем influence functions" -- не масштабируется на 70B.
Сильный ответ: Прямое вычисление influence functions невозможно (Hessian для 70B -- O(p^2) = O(10^21)). Практичные подходы: (1) TracIn с gradient checkpointing -- dot-product последних K checkpoint градиентов, O(Kp) по памяти; (2) Embedding-based attribution -- cosine similarity в embedding space (дешево, но грубая аппроксимация); (3) Representation engineering -- анализ активаций промежуточных слоев; (4) Для looped архитектур -- SDI с TensorSketch для scalability. Trade-off: точность vs compute budget.
Зачем нужна interpretability для training data? Разве не достаточно анализировать модель?
"Чтобы понять, как модель работает" -- общие слова.
Сильный ответ: Data attribution решает конкретные production проблемы: (1) debugging -- модель дает неправильный ответ, data attribution показывает какие training examples этому способствовали (mislabeled data, outliers); (2) data curation -- определить наиболее ценные примеры для переобучения, вместо full retrain; (3) compliance -- GDPR "right to be forgotten" требует оценить влияние удаления конкретного примера; (4) curriculum learning -- порядок подачи примеров на основе их influence. SDI добавляет temporal dimension -- не просто "какие данные важны", а "когда именно они важны".