gonzo-обзоры ML статей – Telegram
gonzo-обзоры ML статей
24.1K subscribers
2.72K photos
2 videos
3 files
1.34K links
Авторы:
Гриша Сапунов, ранее руководитель разработки Яндекс-Новостей, ныне CTO Intento. Области интересов: AI/ML/DL, биоинформатика.
Лёша Тихонов, ранее аналитик в Яндексе, автор Автопоэта, Нейронной Обороны... Области интересов: discrete domain, NLP, RL.
Download Telegram
У Альпаки есть своё интересное независимое развитие. Благодаря подходу LoRA от Microsoft (https://arxiv.org/abs/2106.09685) для низкоранговой оптимизации больших языковых моделей (позволяет получить файнтюненную версию сильно меньшего размера), Альпаку научились воспроизводить на консьюмерском железе, оно требует порядка 5 часов на RTX 4090. Этот проект живёт здесь: https://github.com/tloen/alpaca-lora. Если вам нужен LoRA для своих дел, то есть библиотека loralib от авторов (https://github.com/microsoft/LoRA), а также метод поддерживается в HuggingFace PEFT (State-of-the-art Parameter-Efficient Fine-Tuning, https://github.com/huggingface/peft) наряду с другими интересными методами.

Такие дела. Всё сильно ускорилось, конечно.
🔥172👍1🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Пятничное чтиво, приуроченное к выходу GPT-4.

"Поэты сорганизовали несколько митингов протеста и потребовали опечатать машину, но никто, кроме них, не обращал внимания на феномен. Редакции газет были даже довольны, поскольку Электрувер, писавший под несколькими тысячами псевдонимов сразу, представлял готовую поэму заданных размеров на любой случай, и эта поэзия, хоть и на заказ, была такого качества, что читатели раскупали газеты нарасхват, а улицы так и пестрели лицами, полными неземного блаженства, мелькали бессознательные улыбки и слышались тихие всхлипывания. Стихи Электрувера знали все; воздух сотрясали хитроумнейшие рифмы, а наиболее впечатлительные натуры, потрясенные специально сконструированными метафорами или ассонансами, даже падали в обморок; но и к этому был подготовлен титан вдохновения: он сразу же вырабатывал соответствующее количество отрезвляющих сонетов."

Если вы это не читали, то вам срочно сюда:

https://www.booksite.ru/fulltext/0/001/005/167/024.htm
🔥5413❤‍🔥2👍2
А вот это вот интересная история. Мы померяли качество перевода с помощью GPT-4 (как недавно делали это для ChatGPT, а ранее для GPT-3).

И на этот раз GPT показала вообще лучший результат для пары en-es, и второй лучший для en-de на general domain. На специальных доменах похуже, но всё равно лучше некоторых движков. Там, конечно, ещё требуется человеческую оценку провести, посмотреть на типы ошибок и оценить, как это влияет на те бизнес-процессы, где её будут использовать, но начало многообещающее.

Это очень интересно, и, возможно, начало большого тектонического сдвига, когда универсальная (не-переводческая) модель бьёт более специализированные переводческие. ChatGPT тоже уже била, но в другом аспекте, в 10 раз меньшей ценой при очень достойном результате. Обе они где-то в районе Парето фронта получаются, можно балансировать.

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

To be continued...

Пост про результаты: https://blog.inten.to/translating-with-gpt-4-the-latest-the-greatest-561025cb761c
🤯27🔥9👍71👏1
Ещё не пятница, но...

Тестовый пост. Суммаризировали "Электрувер Трурля" на английском через GPT-4, а потом развернули обратно в рассказ через GPT-4 и Bard.

Ну, местами забавно.

Заодно попробовал substack.

https://gonzoml.substack.com/p/the-generative-cyberiad
👍15😁5
Подборка на почитать в выходные

1. Билл Гейтс про новую технологическую революцию и начало эры AI (https://www.gatesnotes.com/The-Age-of-AI-Has-Begun). Странно, правда, что первой революцией он назвал GUI, второй AI, а про Интернет умолчал. Но мы же помним, как он в какой-то момент быстро туда побежал догонять и перегонять Netscape.

2. Microsoft поделился своими наблюдениями по исследованию интеллекта GPT-4 в статье “Sparks of Artificial General Intelligence: Early experiments with GPT-4” (https://arxiv.org/abs/2303.12712).

3. Большая статья про то, что гонка за AI началась, но её стоит остановить (https://www.vox.com/the-highlight/23621198/artificial-intelligence-chatgpt-openai-existential-risk-china-ai-safety-technology).

4. Jaron Lanier про AI и вообще (https://www.theguardian.com/technology/2023/mar/23/tech-guru-jaron-lanier-the-danger-isnt-that-ai-destroys-us-its-that-it-drives-us-insane).

5. LLM -- это новые CPU, но вот Intel ли OpenAI… (https://every.to/divinations/llms-are-the-new-cpus).

6. Харари про то, что нам нельзя продуть "If We Don’t Master A.I., It Will Master Us" (https://webcache.googleusercontent.com/search?q=cache:hIN9AmrxIuMJ:https://www.nytimes.com/2023/03/24/opinion/yuval-harari-ai-chatgpt.amp.html&cd=1&hl=en&ct=clnk&gl=id)
👍17🔥61
🆒20😁6👍2🔥2🤣1
[S4] Efficiently Modeling Long Sequences with Structured State Spaces
Albert Gu, Karan Goel, Christopher Ré
Статья: https://arxiv.org/abs/2111.00396

Давно мы не писали про RNN, последний раз, кажется, это было про LEM (https://news.1rj.ru/str/gonzo_ML/857). Тогда также хотелось написать про State Space Models (SSM) и их ярких представителей в лице HiPPO и S4, но началась война и стало не до этого. Тема важная, хочется к ней таки вернуться.

Работа про S4 была принята на мою любимую конференцию ICLR в 2022 году и получила там Outstanding Paper Honorable Mentions (https://blog.iclr.cc/2022/04/20/announcing-the-iclr-2022-outstanding-paper-award-recipients/).

Есть большая проблема с моделированием длинных последовательностей. Длинные, это типа 10к элементов и больше. Ныне рулящие трансформеры по-прежнему испытывают с этим проблемы, в первую очередь благодаря квадратичной сложности механизма внимания (правда, есть куча неквадратичных механизмов, про многие из которых мы писали, например, https://news.1rj.ru/str/gonzo_ML/404 и далее по ссылкам).

На эту тему есть бенчмарк Long Range Arena (LRA, https://paperswithcode.com/sota/long-range-modeling-on-lra), где рулят в целом не трансформеры (но лидером там всё же теперь свежий скорее-трансформер одноголовый Mega, https://arxiv.org/abs/2209.10655).

Было много заходов на решение проблемы моделирования реально длинных последовательностей, и один из свежих это как раз state space model (SSM).

SSM описывается уравнениями:
x′(t)=Ax(t)+Bu(t)
y(t)=Cx(t)+Du(t)
​где u(t) -- входной сигнал, x(t) -- n-мерное латентное представление, y(t) выходной сигнал, а A,B,C и D -- обучаемые матрицы.

В работе D считается равным нулю, потому что это аналог skip-connection и его легко вычислить.

На практике такая модель работает плохо, потому что решение такой ODE ведёт к экспоненциальной функции со всеми знакомыми по RNN прелестями в виде vanishing/exploding gradients.

Фреймворк HiPPO с NeurIPS 2020 (https://arxiv.org/abs/2008.07669) предлагает специальный класс матриц A, позволяющих лучше запоминать историю входных данных. Самая важная матрица этого класса, называемая HiPPO Matrix, выглядит так:

/ (2n + 1)^1/2 * (2k + 1)^1/2 if n > k
A_nk = − { n + 1 if n = k
\ 0 if n < k

Замена в SSM случайной матрицы A на эту приводит к улучшению результата на sequential MNIST с 60% to 98%.

Это было непрерывное описание, а чтобы применить его к дискретным входам, SSM надо дискретизировать с шагом Δ и входной сигнал будет сэмплиться с этим шагом. Для этого используется билинейный метод, заменяющий матрицу A на её аппроксимацию

x_k = Ax_k−1 + Bu_k
y_k = Cx_k

A = (I − ∆/2 · A)^−1 * (I + ∆/2 · A)
B = (I − ∆/2 · A)^ −1 * ∆B
C = C.

Уравнения состояния теперь рекуррентная формула с x_k по типу RNN, а сам x_k может рассматриваться как скрытое состояние с матрицей перехода A.

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

Боттлнек discrete-time SSM в том, что надо многократно умножать на матрицу A.

Текущая работа предлагает расширение и улучшение SSM под названием Structured State Spaces (S4). Предлагается новая параметризация, где матрица A (которая HiPPO) раскладывается в сумму низкорангового и нормального (https://en.wikipedia.org/wiki/Normal_matrix) терма, Normal Plus Low-Rank (NPLR).

В дополнение к этому применяются ещё несколько техник: truncated SSM generating function + Cauchy kernel + применение Woodbury identity + подсчёт спектра ядра свёртки через truncated generating function + обратное БПФ, за подробностями и доказательствами вэлкам в статью. Доказывается, что у всех HiPPO матриц есть NPLR представление, и что свёрточный фильтр SSM можно вычислить за O(N + L) операций и памяти (и это главный технический контрибьюшн статьи).
👍226🕊1
Дефолтный S4 работает на одной входной и выходной чиселке, а в реальности для DNN обычно нужны многомерные векторы. Чтобы поддержать работу не с одной фичей, а со множеством (H штук), делается H независимых копий S4, а H фичей замешиваются через position-wise linear layer (то есть, так понимаю, для каждой фичи свой такой слой, смотрящий на все остальные фичи). Это также похоже на depthwise-separable convolutions, а вся глубокая (многослойная) S4 близка к depthwise-separable CNN с глобальным ядром свёртки.

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

Полученную S4 сравнивают с LSSL (Linear State-Space Layer, те же авторы, https://arxiv.org/abs/2110.13985) и S4 многократно лучше, и c эффективными трансформерами (сравнима с Performer или Linear Transformer).

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

Среди прочего S4 решил задачу Path-X, которую до него не решали. В этой задаче надо определять, соединены ли две точки путём на картинке 128x128, что приводит после разворачивания картинки к последовательности длины 16384. В свёртках при этом выучиваются какие-то интересные паттерны с “пониманием” двумерных данных.

Также проверялись на подмножестве задач SC10 из Speech Commands dataset. Фич хитрых при этом не использовали, работали с raw speech длины 16k и достигли 98.3% accuracy и побили методы использующие MFCC фичи.

Среди других задач был бенчмарк WikiText-103, там рулили трансформеры, и S4 их не обогнала, но зато при замене self-attention на S4 разница в perplexity получается всего 0.8, а скорость инференса при этом в 60 раз выше. Сейчас в моменте, кстати, на этом бенчмарке лидер H3 от этих же авторов или “Hungry Hungry Hippos: Towards Language Modeling with State Space Models” (https://arxiv.org/abs/2212.14052), принятая на ICLR 2023.

На задачах предсказания временных рядов сравнивались с Informer (специальный трансформер для time-series, про него тоже так и не успел написать, но может быть …) и другими бейзлайнами. S4 рулит вообще.

Провели интересные абляции, показали, что инициализация HiPPO очень важна, сильно бьёт гауссовую и по скорости обучения, и по финальному качеству.

В общем, среди SSM сейчас полно очень сильных представителей, тема достойна широкого внимания.

Другие ссылки в тему:
- “The Annotated S4” с кодом на JAX: https://srush.github.io/annotated-s4/
- Рассказ от одного из авторов: https://www.youtube.com/watch?v=EvQ3ncuriCM
- Ещё один разбор с фокусом на JAX: https://www.youtube.com/watch?v=GqwhkbrWDOI
- Код с имплементациями разных SSSM: https://github.com/HazyResearch/state-spaces
👍142🔥2