Neural networks are still weak at multiplication: why AI writes code but gets arithmetic wrong
Large language models are impressive at code and text, but they still often get multiplication wrong. The reason is simple: an LLM usually predicts the next tok
Большие языковые модели умеют писать код, переводить тексты и поддерживать длинный диалог, но с умножением у них до сих пор системная слабость. Проблема в том, что большинство нейросетей не «считает» числа по шагам, а предсказывает наиболее вероятную последовательность символов — и на арифметике это быстро вскрывается.
Почему так происходит
Для человека умножение — это алгоритм: разбить числа на разряды, перемножить части, перенести десятки и сложить промежуточный результат. Для языковой модели выражение вроде 37 × 48 — прежде всего текстовый шаблон, похожий на миллионы других последовательностей, которые она видела во время обучения. Она не запускает встроенный «калькулятор» по умолчанию, а пытается продолжить строку так, как это статистически правдоподобно. На коротких и частых примерах такой подход иногда даёт правильный ответ, но это не то же самое, что надёжное вычисление.
«Они не считают в привычном нам смысле, а скорее запоминают и аппроксимируют ответы».
Из-за этого модель может выглядеть очень умной в задачах, где допускается вариативность формулировки, но теряться там, где нужен один точный результат. Текст, код и даже резюме статей часто прощают небольшие отклонения: смысл можно передать разными способами. В арифметике такой роскоши нет. Ошибка на одну цифру превращает верный ответ в неверный, а красивое объяснение не спасает. Именно поэтому контраст между «пишет стихи» и «путается в таблице умножения» кажется таким резким.
Где модели сбоят
Лучше всего это видно на задачах, которые требуют строгого следования шагам, а не узнавания знакомого паттерна. Если пример встречался много раз, модель может воспроизвести ответ почти безошибочно. Но чем длиннее числа и чем больше переносов между разрядами, тем выше шанс, что она начнёт импровизировать. Добавь к примеру немного лишнего текста, необычный формат записи или несколько операций подряд — и вероятность сбоя заметно растёт.
- Умножение многозначных чисел с несколькими переносами Редкие комбинации, которых почти не было в обучающих данных Задачи, где числа смешаны с текстом, единицами измерения или условиями Цепочки вычислений, в которых ранняя ошибка ломает весь дальнейший ответ Проверка собственного результата без внешнего инструмента Парадокс в том, что код модели нередко даётся легче, чем сама арифметика. В программировании она опирается на огромный корпус повторяющихся структур: синтаксис, типовые функции, известные библиотеки, шаблоны решений. Если попросить её не посчитать самой, а написать короткую программу для вычисления, результат часто будет надёжнее. То есть модель может успешно описать процедуру или сгенерировать инструмент, который решит задачу, но не всегда стабильно выполнит эту процедуру у себя «в голове».
Как это обходят Именно поэтому практические AI-системы всё чаще дополняют внешними инструментами.
Если продукту нужна точная математика, модель не должна гадать ответ по памяти: её лучше направить к калькулятору, интерпретатору Python, SQL-движку или специализированному модулю вычислений. Такой подход уже стал стандартом в агентных системах и корпоративных сценариях, где цена ошибки слишком высока. Есть и более глубокие попытки решить проблему на уровне архитектуры. Исследователи экспериментируют с моделями, которые лучше работают с символическими правилами, хранят промежуточные состояния или обучаются точнее выполнять пошаговые операции. Помогают и техники вроде chain-of-thought, когда модель расписывает решение по шагам, но это не магия: если внутренний механизм всё равно основан на предсказании токенов, длинная цепочка рассуждений тоже может аккуратно привести к неправильному числу. Надёжность появляется не от красивого объяснения, а от проверяемого вычислительного контура.
Что это значит Главный вывод простой: впечатляющий язык ещё не равен точному счёту.
Чем активнее AI переходит из роли собеседника в роль рабочего инструмента, тем важнее отделять задачи на «сгенерировать правдоподобный ответ» и задачи на «получить гарантированно верный результат» — и подключать для второго класса отдельные механизмы проверки и вычислений.