Pull to refresh

Comments 33

Предполагая, что недостаток практики мог быть причиной таких результатов, команда Дзири дообучила GPT-3 на массиве из 1,8 миллиона примеров умножения.

Может быть, стоило просто научить GPT считать?

А то возникает ощущение, что они выдали GPT молоток и требуют при помощи молотка решать все задачи. Надо забить гвоздь? Молотите. Надо копать яму? Молотите. Надо вскипятить чай? Молотите.

Просто? Мы не знаем, как научить LLM считать. Дать ей возможность запустить калькулятор можем, знаем как. Научить считать - не знаем.

Ну так и дать ей калькулятор. Чтобы счетные задачи решались с его помощью, а не "статистически". Или цифры от букв не отличает?

Так ей дали уже. Нейросети могут использовать вообще любой код (и пользоваться результатом). Конечно, если вы запустите оболочку, которая может только веса вычислять, результата не будет. Если возьмёте какую-либо агентскую, будет запускать программы.

Конкретные реализации (типа ChatGPT) могут и не использовать, но это личные предпочтения владельцев сервиса. Сами нейросети дать команду на запуск калькулятора уже могут (если им разрешено).

Дал ей калькулятор через вызов функций. Смотрю в логи, вижу что часто (если не всегда) дергает калькулятор что бы посчитать 1+1 и частенько не дергает что бы посчитать 7869*3578 (сама при этом считает неправильно).

Если бы они могли нормально юзать калькулятор то он был бы встроенным, иначе нет никакого смысла делать его отдельным.

Чтобы они нормально юзали калькулятор, нужно им сказать "для математических вычислений используй калькулятор (скрипт, сервис - ватэвэр)". Чтобы каждый раз не говорить это в запросе, можно добавить это в предустановки модели. Сейчас все это позволяют вроде.

Дать моделям калькулятор можно, как и красную кнопку, но это не всем нужно. Поэтому в базу не входят. Зато есть библиотеки готовых предустановок на разные случаи жизни. Математических не искал, не сталкивался с необходимостью, но наверняка найдется что-то.

Скорее, научится осознавать, что безошибочно считать она не умеет, и никогда уметь не будет (как, впрочем, и среднестатистический человек), и принудить всегда тянутся за калькулятором, когда надо выполнить любую операцию, включая 2+2

Далеко не всё дело в промпте. Умножить числа из 10 знаков можно тем же алгоритмом, что и четырехзначные, человек на листочке это сможет, а нейросеть ошибается.

Я попробовал тот же промт на бесплатном Копилоте, но он ленивый, предлагает написать программу для такого подсчёта. Поэтому немного переписал промт, разложив на 2 запроса.

Hidden text

Выполни умножение разрядов двух чисел, записывая полученные произведения.

Вот пример поразрядного умножения чисел 123 и 456:

1. Сначала разложим числа на десятичные разряды, представив их в записи со степенями десятки.

123 = 1*10^2 + 2*10^1 + 3*10^0

456 = 4*10^2 + 5*10^1 + 6*10^0

2. Перемножим разряды попарно. При этом степени складываем.

| Множитель 1 | Множитель 2 | Произведение |

|---------|---------|--------------|

| 1*10^2 | 4*10^2 | 4*10^4 |

| 1*10^2 | 5*10^1 | 5*10^3 |

| 1*10^2 | 6*10^0 | 6*10^2 |

| 2*10^1 | 4*10^2 | 8*10^3 |

| 2*10^1 | 5*10^1 | 10*10^2 |

| 2*10^1 | 6*10^0 | 12*10^1 |

| 3*10^0 | 4*10^2 | 12*10^2 |

| 3*10^0 | 5*10^1 | 15*10^1 |

| 3*10^0 | 6*10^0 | 18*10^0 |

По такому примеру перемножь разряды чисел 1234567890 и 9876543219. Выведи результат в таблицу.

В итоге получил таблицу произведений на 100 строк (10*10 разрядов). И вставил столбец произведения в новый запрос:

Есть список чисел. Сложи их, добавляя по одному к сумме. Показывай промежуточные результаты суммирования.

9*10^18

8*10^17

7*10^16

6*10^15

5*10^14

4*10^13

...

0*10^5

0*10^4

0*10^3

0*10^2

0*10^1

0*10^0

В итоге Copilot досуммировал до 76 числа и завис.

  • 72. 64×101064 \times 10^{10}

    • Промежуточная сумма: 12.445650715597545 \times 10^{18}

  • 73. 56×10956 \times 10^{9}

    • Промежуточная сумма: 12.446210715597545 \times 10^{18}

  • 74. 48×10848 \times 10^{8}

    • Промежуточная сумма: 12.446258715597545 \times 10^{18}

  • 75. 40×10740 \times 10^{7}

    • Промежуточная сумма: 12.446262715597545 \times 10^{18}

  • 76. 32×106

Прости, Microsoft, если я вырубил вам сервер. :)

Надо бы на платном аккаунте попробовать, но у меня нету.

Подход хороший. Проверил на o3-mini-high, к сожалению он запутался в нулях. Вот одна из промежуточных операций, потерял один ноль. В остальном правильно.

T13​=3⋅10^7×6⋅10^7=18⋅10^14:

S13​=7683955282200000000+180000000000000=7684135282200000000

Но гораздо интереснее следующий шаг. Я спросил, верно ли он сложил числа и бот решил сэкономить силы, ведь перепроверять 90 чисел долго (у меня один из множителей девятизначный, не стал переделывать). Он умножил примерно, потом проверил последние цифры, потом посчитал в логарифмах. Получил мизерную разницу и решил умножить своим способом, разделив не по разрядам, а на несколько слагаемых. Ответ на этот раз получил верный.

Вывод:

Разница в 1.62×10^12 составляет относительную погрешность порядка 2×10^−7 (0,00002 %), что чрезвычайно мало. Тем не менее, перепроверка показала, что второй способ (разложение второго множителя) даёт итог:

7754176207251907626.

Таким образом, можно сделать вывод, что в предыдущем подробном суммировании была допущена незначительная арифметическая погрешность, и корректный результат умножения чисел

938263047×8264394758

должен равняться

7754176207251907626.

Ответ:

Нет, сумма частичных произведений в первом варианте получилась с ошибкой. Перепроверка показывает, что правильное произведение равно

7 754 176 207 251 907 626.

UFO landed and left these words here

Пока все думают, почему эти нейросети не могут ответить даже на некоторые простые ответы, я не понимаю, как они вообще могут отвечать на такое количество самых разных вопросов.

Там терабайты текста! Перебором можно построить любой "скрипт". У вас в словаре ~50 000 слов, но при этом некоторые слова не могут стоять рядом, значит есть ограниченный набор предложений которые можно составить и им обучить сеточку.

Так-то оно так, но всё же удивительно, что нейросеть может прочитать вопрос, состоящий из сотен слов (при этом точно такого вопроса в обучающем массиве нет) и выдать логичный и последовательный ответ на него, состоящий так же из сотен слов.

Я помню, лет 5 зазад Яндекс выпустил Балабобу, которая по началу тексту могла написать его продолжение. Вот там на самом деле была видна подгонка "чего-то похожего, но случайного". Но современные лидеры, даже со всеми их глюками, отвечают удивительно осмысленно.

Комбинаторика не подтверждает. Даже если к слову можно приставить только сотню других на выбор (а не 50 тысяч), то 7 слов, уже сотня терабайт. А ведь это даже без формул.

Нет, на перебор это даже близко не похоже даже снаружи (внутри тоже не похоже, устроено совсем иначе)

Не расстраивайтесь, вы не одиноки. У ученых тоже есть проблемы с пониманием.

На простом уровне задачи, где присутствуют два дома и у каждого по две характеристики, GPT-4 всегда давал правильный ответ. Однако при увеличении сложности до четырёх домов и четырёх характеристик точность упала до 10%. В оригинальной версии задачи из журнала Life International, которая предполагает пять домов и пять характеристик у каждого, модель не смогла справиться с задачей ни разу.

Ну, какбы, очевидно. Однопроходная LLM без ризонинга это O(1). За один проход подобные задачи не решаются.

На фоне уже рабочих о1 и о3 статьи по gpt4 выглядят устаревшими.

И вообще сейчас статьи по ллм устаревают быстрее, чем выходят. Или, как минимум, переводятся

Вот тут, все же, не соглашусь. Способность или неспособность модели с ризонингом решить задачу - явно не бинарная характеристика, а функция (ведь ризонинг может быть настроен сильно по-разному с разными шаблонами рассуждения, с разным количеством параллельных попыток на разных этапах, и так далее).

В случае базовых однопроходных моделей мы хотя бы можем нормально столкнуть лбами.

Как будто бы, пора вводить какую-то стандартизированную единицу потраченных усилий (вроде, как у автомобилей считают пробег на 1 галлон). Условно, 1 ллон, равный 1 триллиону fp16 операций, выполненных при наличии прямого доступа к 100ГБ данных в оперативной памяти. Тогда хоть можно будет адекватно сравнивать многопроходные модели. В том числе, использование более слабых моделей с более тяжёлым планом ризонинга против более сильных, но с менее нагруженным планом ризонинга

А зачем? Конечно, это позволило бы более точно сравнивать расходы на решение задач, но нас ждёт ещё 2-3 порядка улучшений, сравнивать десятки процентов пока рано. А в два раза можно сравнить без новой единицы измерения

Удивительно, как вне зависимости от содержания и качества статьи, описывающие недостатки ии, получают апы, а хвалящие + минусуются

Потому что пришло время "закатить солнце", т е сдуть пузырь и снять сливки. Поэтому дана соответствующая команда своим сми. Причем исследования как были так и есть разные. Просто именно сейчас выпячивать в массы будут именно такие.

А пузырь объективно есть. Назвали улучшенный поиск прорывом и чуть ли не началом сингулярности...

Ну уж улучшенным поиском называть вещь, которая подстраивается под твой запрос - это слишком.

Ну и вообще, повежливее надо отзываться о нейронках. Через 20 лет Скайнет вам это зачтет.

исследования также показали, что трансформаторы, архитектура нейронной сети, лежащая в основе большинства LLM, сталкиваются 

Как LLM может не ошибаться например в этом случае? Когда выбор слова из множества вероятностей на последнем шаге в LLM случайный и зависит от температуры. Это как сидеть у рулетки и удивляться, почему ставил на Zero, а выпало 34 красное.

Описывал тут https://t.me/greenruff/2103

Там же писал, что для начала надо хоты бы добавить глобальный механизм внимания на этом этапе, аналогичный как при предсказании следующего слова. У нас таламус (и не только он) играет огромную роль на выбор слова, увидел яблоко - захотел есть - и во уже выбор слова в сторону "хочет", а не "интересуется" и пошла цепочка в другую сторону. Нет в мозге случайных процессов. Хаотичные есть, случайных нет.

Нет в мозге случайных процессов

А тут по подробнее, что считать "случайным", а что "хаотичным"?

И считаем тут мозг только здорового человека или нет?

Случайный процесс - это непредсказуемость событий, но может подчиняться определенным закономерностям в долгосрочной перспективе. Например бросание кости.

Хаотический процесс кажется беспорядочным, но он детерминирован и зависит от начальных условий, что делает его предсказуемым в теории, но на практике малые изменения могут привести к значительным различиям в результате. Поэтому хаотический процесс можно предсказать только до определенной границы. Например, предсказание погоды.

В случае хаотичного процесса, в реальности мы не можем предсказать его. Так как не может получить точное состояние всех процессов. Небольшое отклонение на в значениях на какое-нибудь 10^-6 приводит к совсем другим результатам через некоторое время.

Для примера выше градиенты речи (наклон частоты тона при речи). Кажется похож на нормальное распределение (случайный процесс). Но в реальности случайным процессом не является.

https://t.me/greenruff/2021

В плане выбора из множества слов это означает, что:

  • процесс зависит от начальных условий. То есть от сигналов других зон мозга, а они от внешнего воздействия (окружающий мир) и внутреннего (организма).

  • детерминирован. Детерминированная модель позволяет вам точно рассчитать будущее событие, без участия случайности. Хотя из за сложности системы и начальных условий мы этого не можем сделать. С другой стороны мы можем описать часть этих динамических процессов и опираться на свои начальные значения. Что собственно и делает к примеру механизм внимания (описывает механизм одного из процессов)

  • таким образом этот процесс зависит от других входных начальных условий. В частности от к примеру сигналов таламуса, гипоталамуса и других. Которые модулируют сигналы и усиливают выбор того или иного слова. Это происходит через выбор маршрута следования нейрона. Как стрелочник, который переключает маршрут поезда переводя стрелки на железо дорожных путях.

Sign up to leave a comment.

Articles