Наш препринт про архитектурную модификацию трансформера: https://huggingface.co/papers/2609.32814 __Change the Product, Keep the Parameters: Associative Algebra Layers for Transformers__ tl/dr Исследуем замену GEMM в MLP-слое трансформера на более лёгкую операцию, которая сохраняет билинейность и ассоциативность матричного умножения, но требует меньше вычислений при том же количестве обучаемых параметров. Лонгрид Работа состоит из трёх частей. Часть первая: математическая база Описывается новый оператор, заменяющий обычное матричное умножение. Формально доказывается, что он билинеен и ассоциативен. Для оператора над матрицами размера q×q вычисляется билинейный ранг — минимальное число скалярных умножений, необходимых для его вычисления. Для q=2 новый оператор имеет ранг 6. Для сравнения, обычное умножение 2×2 требует 8 умножений, а алгоритм Страссена — 7. Эти числа всплывут в третьей части 👇 Билинейность позволяет заменить линейную проекцию трансформера, не вводя дополнительную нелинейность, а также даёт возможность формально анализировать вычислительную стоимость оператора. При этом мы не уменьшаем число параметров и не используем sparsity или low-rank compression: сохраняется полный набор обучаемых весов, меняется только закон их умножения на активации. Часть вторая: синтетические экспы на GPU Показываем, что реализация нового оператора действительно может использоваться вместо GEMM в качестве линейной проекции трансформера. Приводятся оценки эффективности для нескольких архитектур, включая Qwen и DeepSeek. Часть третья: оценка end-to-end на декодерной LM Создаётся небольшая декодерная LM ёмкостью 110M параметров, близкая к GPT-2, но с небольшими модификациями (SwiGLU вместо стандартного FFN) и GPT-2-токенизатором. Делаем два варианта модели: с классическим GEMM и с новым оператором в MLP. Обе модели обучаются на одном и том же инструктивном датасете с бюджетом около 12.3B токенов и в одинаковом вычислительном окружении. Эксперимент показывает, что новый оператор остаётся обучаемым в реальных условиях, включая CUDA, floating-point вычисления и автоматическое дифференцирование в PyTorch. Затем измеряем скорость инференса и качество на downstream-задачах через lm-eval-harness. Для q=2 модель с новым оператором показывает прирост end-to-end throughput примерно на 7%. Для сравнения, переход от rank-7 алгоритма Страссена к rank-6 оператору сокращает число скалярных умножений примерно на 14.3%. Наблюдаемый выигрыш оказывается примерно вдвое меньше этого арифметического выигрыша, что ожидаемо: MLP составляет лишь часть вычислений модели, а итоговое время также определяется attention, LM head, memory traffic, sampling и другими операциями. Что дальше: много экспов с другими параметрами (q=3 и 4), настройка ядер и пр. 🤗 👉 hf dailypapers link 👈