2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10, 11 ... 16  След.
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 21:17 
Аватара пользователя


17/10/22
369
mihaild в сообщении #1600112 писал(а):
Потому что в момент запроса суммы модель не может видеть одновременно оба нужных числа.

Не понимаю почему, если максимально возможная длина запроса - 1 млрд токенов, а в списке - 1 млн чисел.

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 21:29 


15/06/23

69
Потому что токен не число.

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 21:43 
Аватара пользователя


17/10/22
369
Webpack
А что - цифра, т.е. числа пишутся не цифрами, а прописью?

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 22:23 
Заслуженный участник
Аватара пользователя


16/07/14
9202
Цюрих
MoonWatcher в сообщении #1600134 писал(а):
Не понимаю почему, если максимально возможная длина запроса - 1 млрд токенов, а в списке - 1 млн чисел
Какая "длина запроса"?
Длина контекста - допустим, миллиард. Но большая часть этого миллиарда в момент запроса недоступна, за счёт чего и достигается ускорение.
Архитектура модели формально позволяет это ограничение обойти: модель должна ответить: "Так, посмотрим, первое число какое было? А, вот такое: $X$. А второе? Сейчас, подождите, смотрю. Ага, $Y$" - и подбирать моменты вывода $X$ и $Y$ таким образом, чтобы в момент их генерации соответствующие токены были доступны. А после выписывания их всё сводится к классическому трансформеру.
Но обучить подобную штуку нереально, потому что нам в обучающей выборке придется смотреть, в какой момент будут доступны какие токены, и исходя из этого генерировать канонический ответ.

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 22:30 


15/06/23

69
MoonWatcher в сообщении #1600139 писал(а):
Webpack
А что - цифра, т.е. числа пишутся не цифрами, а прописью?

Под токеном разработчик может понимать что угодно.

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 22:37 
Аватара пользователя


17/10/22
369
mihaild
Насколько я понял, предложенная в той работе версия трансформерной модели преодолевает квадратичную сложность - она возрастает линейно. Если обучить нереально, то о чем эта работа? :?:

mihaild в сообщении #1600148 писал(а):
Какая "длина запроса"?

Запрос, контекст, последовательность, промпт - не знаю как правильно.

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

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 23:08 
Заслуженный участник
Аватара пользователя


16/07/14
9202
Цюрих
MoonWatcher в сообщении #1600150 писал(а):
Если обучить нереально, то о чем эта работа?
Я про то, что обучить модель делать то, что я написал (ждать, пока в паттерн попадет нужный токен) нереально. Тут проблема не во времени обучения, а в составлении датасета.
MoonWatcher в сообщении #1600150 писал(а):
Запрос, контекст, последовательность - не знаю как правильно
Я просто не понимаю, о чем речь.
У нас есть контекст - последовательность токенов (с хорошей точностью можно считать последовательностью слов), который подается на вход.
Дальше мы его как-то обрабатываем, выдаем новый токен, дописываем его в последовательность и возвращаемся на исходную позицию.
И весь вопрос в том, как контекст обрабатывать. И тут хочется обрабатывать побольше токенов и каким-то однородным образом. Товарищи предлагают следующую систему: если у нас есть токены $x_{-1}, x_{-2}, \ldots, x_{-n}$ (предыдущие), и мы хотим угадать токен $x_0$ - давайте не будем смотреть на все эти $n$ токенов, а будем смотреть только на (условно) токены $x_{-1}, x_{-2}, x_{-4}, x_{-8}, \ldots$ - это позволяет нам учитывать токен, который был миллион слов назад, но при этом прямо сейчас смотреть только на $20$ токенов, что вычислительно просто.
У такого подхода есть очевидная проблема: мы можем сейчас посмотреть на токен $x_{-65536}$, но довольно долго не сможем посмотреть на токен $x_{-60000}$.
Там не всё так плохо, и токены, которые были очень давно, всё же можно использовать чуть более эффективно, чем если нам просто сейчас случайно повезет на нужный наткнуться - за счет того, что если мы сейчас видим токен $x_{-65536}$ и понимаем, что он нам скоро понадобится - не обязательно текущий токен от него зависит, но один из тех что скоро будут, то мы можем его запомнить. Но как в этой постановке учить модель "тянуть время" пока она не сможет посмотреть на нужный ей старый кусок контекста - непонятно.

-- 06.07.2023, 22:15 --

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

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 23:24 
Аватара пользователя


17/10/22
369
mihaild
Сразу прошу прощения за тупые вопросы - я в этом ничего не понимаю, соответственно опираюсь на свое невежественное толкование. По поводу токенов, на которые смотрит модель:
Цитата:
Трансформер — не рекуррентная нейросеть. Он не передает весь контекст по цепочке и не выбирает из него нужные части. Зато при каждом новом предсказании трансформер фокусирует внимание только на тех на словах, которые считает важными.
Спойлер: внимание вкратце — это умножение вектора слова на числа. Если слово важное — множители будут большими и вектор слова «выделится» среди соседей.
отсюда

Вы с этим согласны? Если да, то чем это отличается от "давайте не будем смотреть на все эти n токенов, а будем смотреть только на (условно) токены..."?

Или все-таки классические трансформеры смотрят на все токены, и в этой работе просто "халтурят" - не обходят квадратичную сложность, а просто отбирают самые важные токены - из-за чего пострадает качество модели? Мне попадался термин "глобальное внимание" - может это и есть внимание ко всем токенам? В свою очередь в этой работе оперируют "dilated attention" - рассеянное внимание?

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение06.07.2023, 23:52 
Заслуженный участник
Аватара пользователя


16/07/14
9202
Цюрих
Да, это правильно.
Чуть более строго, у нас следующая система: есть набор ключей и значений, $k_i$ и $v_i$, и есть запрос $q$. Global attention считает веса $w_i = f(q, k_i)$, и генерирует ответ $r = \sum_i w_i v_i$.
Local attention, примером которого является эта статья, делает почти то же самое, только веса считает как $w_i = \begin{cases} f(q, k_i), i \in C \\ 0, i \not \in C \end{cases}$, где $C$ - некоторое множество индексов, на которые сейчас смотрим. И дальше вопрос, как выбирать $C$. В данной статье в качестве $C$ берется просто фиксированное множество вида $\{1, 2, \ldots, w, w + r, w + 2r, \ldots, w^2, w^2 + r^2, \ldots, w^3, w^3 + r^3, w^3 + 2r^3, \ldots\}$.

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение07.07.2023, 00:12 
Аватара пользователя


17/10/22
369
mihaild
А как насчет предыдущих работ, с 1 и даже 5 млн токенов (см. мои ссылки выше) - там тоже применяется локальное/рассеянное внимание? Если да, то интересно в чем разница - в том, как отбираются заслуживающие внимания токены? Можно ли как-то оценить насколько страдает качество из-за применения подобных приемов?

И как насчет глобального внимания на большом контексте (1 млн, 1 млрд) - проблема только в квадратичной сложности? Соответственно при достаточно больших производительности и памяти проблема решаема?

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение07.07.2023, 00:35 
Заслуженный участник
Аватара пользователя


16/07/14
9202
Цюрих
MoonWatcher, есть разные подходы. Есть sparse методы (как выше), есть hierarchial (бьем текст на блоки, эффективно уменьшая его длину, делаем attention на блоки и потом внутри блоков). Была в прошлом году красивая модель с использованием KNN, где приближенно считался честный attention по всему контексту, но градиент пропускался только через свежую часть.
MoonWatcher в сообщении #1600160 писал(а):
Соответственно при достаточно больших производительности и памяти проблема решаема?
Может оказаться, что железо под нужную длину контекста сделать невозможно. См. выше: обучение GPT4 стоило 100 миллионов. Конечно неизвестно, что это на самом деле значит (какая часть из этого ушла на зарплаты разработчикам), но если просто квадратично масштабировать - то увеличение контекста в 1000 раз даст стоимость обучения как раз в мировой годовой ВВП.

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

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение07.07.2023, 01:09 
Аватара пользователя


17/10/22
369
mihaild
До сих производительность росла почти в геометрической прогрессии, поэтому ИМХО не вполне корректно проецировать на будущее нынешнюю стоимость обучения. Radeon Instinct MI300 (600 Вт) имеет производительность 48 TFLOPS - больше, чем самый быстрый в мире суперкомпьютер 20-летней давности (3.2 МВт). Если замедление закона Мура будет уравновешено новыми архитектурными решениями (нейроморфные процессоры и т.д.), то еще через 20 лет полноценное обучение на контексте в 1 млрд токенов может стать реальностью.

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

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение07.07.2023, 02:46 


15/06/23

69
На «размере окна» (извините, т.н. «контекста») спекулируют все кому не лень. Это все понимают и это легче всего. В интернет-публикации можно написать и триллион и сто триллионов, всё равно никто не проверит. А в случае чего прикрыться собственным определением т.н. «токена», к примеру $10^{-9}$ байт.

-- 07.07.2023, 02:49 --

MoonWatcher в сообщении #1600167 писал(а):
[b]
Насколько это целесообразно - вопрос конечно интересный. Навскидку могу предположить, что это позволит загрузить в контекст модели, например, 30 млн накопленных на сегодня публикаций по теме мозга - и попросить систематизировать всю эту информацию, найти в ней противоречия, плагиат, воду, выделить самые оригинальные исследования и т.д. Это конечно уже не 1 млрд токенов, а скорее 1 трлн, но полезным будет любое увеличение контекста. Этим и будет отличаться искусственный сверхразум от человека, который даже одну книгу не в состоянии толком запомнить.


Сколько книг способен запомнить ваш компьютер? Терабайт ПЗУ и пара гигабайт ОЗУ в нем есть? Следовательно, это искусственный сверхразум?

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение07.07.2023, 08:40 
Аватара пользователя


29/04/13
8307
Богородский
Webpack в сообщении #1600187 писал(а):
т.н. «токена», к примеру $10^{-9}$ байт.

Что это вообще значит, одна миллиардная байта?

 Профиль  
                  
 
 Re: Решение математических задач с помощью ChatGPT
Сообщение07.07.2023, 11:29 
Заслуженный участник
Аватара пользователя


16/07/14
9202
Цюрих
MoonWatcher, да, еще радикального роста производительности исключать нельзя. Но прорывов не было уже довольно давно - рост мощностей в первую очередь за счет параллелизма (больше ядер на кристалле, больше кристаллов в одном запуске). Будут ли еще прорывы - непонятно.
С очень длинными контекстами, кроме собственно производительности, могут быть еще проблемы (на чем учить; что там будет с positional encoding), о которых мы пока не знаем.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 239 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9, 10, 11 ... 16  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group