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
[CMU] Unlimiformer: Long-Range Transformers with Unlimited Length Input
Amanda Bertsch, Uri Alon, Graham Neubig, Matthew R. Gormley
Статья: https://arxiv.org/abs/2305.01625
Код: https://github.com/abertsch72/unlimiformer

Делу борьбы с limited attention span трансформеров посвящается!

Как известно, ограничение стандартного трансформера на размер контекста связано с квадратичной сложностью механизма внимания. И типичные трансформеры имеют размер контекста порядка 512-2048 токенов, в редких случаях побольше. У GPT-4 он 8192 токена, и есть пока не доступная массово версия на 32k (но вряд ли это классический механизм внимания). Для многих реальных датасетов этого недостаточно.

Было много подходов увеличить размер этого контекста и понизить вычислительную сложность трансформеров, про многие такие решения мы в своё время писали: Performer (https://news.1rj.ru/str/gonzo_ML/404), Longformer (https://news.1rj.ru/str/gonzo_ML/292), Big Bird (https://news.1rj.ru/str/gonzo_ML/381) и многое другое. В массы, правда, почему-то эти решения не пошли.

Очередное решение радикально решает вопрос увеличения attention span, теперь он “бесконечный”. Это достигается за счёт использования retrieval-based механизма, который можно добавить к уже обученному трансформеру.

Работает это так для архитектуры encoder-decoder.

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

Полученные эмбеддинги отправляются во внешнее векторное хранилище, например, типа FAISS (https://engineering.fb.com/2017/03/29/data-infrastructure/faiss-a-library-for-efficient-similarity-search/, https://github.com/facebookresearch/faiss).

В декодере перед cross-attention делается k-nearest neighbor (kNN) search во внешнем хранилище и для каждой головы каждого слоя внимания выбирается набор токенов, которые надо учесть. Таким образом вместо того, чтобы в декодере смотреть на все N (=размер контекста) токенов из энкодера, мы смотрим на N “лучших” токенов входной последовательности, поднятой из базы. А декодер всё так же имеет техническое ограничение на размер контекста в N токенов.

Никаких обучаемых параметров в kNN-search нету, и этот механизм можно встроить в любой уже обученный трансформер.

Это всё в каком-то смысле развитие идеи Memorizing Transformers (https://arxiv.org/abs/2203.08913), но там хранилища эмбеддингов подразумевались для каждой головы каждого слоя, и это было слишком много, поэтому в той работе ограничились одним слоем энкодера. Работа про Memorizing Transformers отличалась также и наличием обучаемых весов для гейта, который комбинировал локальное и kNN внимание, поэтому его нельзя было легко применить к уже обученной LM.

В текущей работе переформулировали механизм внимания так, что по новой формуле с другим порядком вычисления достаточно одного хранилища для всех голов и слоёв. В новой формулировке QK^T = (h_d * W_q * W^T_k) * h^T_e, имея скрытое состояние декодера h_d и сделав его проекцию в новое пространство под каждый слой и голову внимания (умножив на W_q и W^T_k), можно довольно просто поднять из векторного хранилища соответствующие скрытые состояние энкодера h_e. Вроде как такая формулировка встречается впервые в retrieval-based моделях.

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

Потестили на датасетах для суммаризации длинных документов. Добавляли Unlimiformer к BART_base (https://news.1rj.ru/str/gonzo_ML/153) с контекстом 1024 токена и PRIMERA (https://aclanthology.org/2022.acl-long.360/) с контекстом 4096 токенов.

Подход работает и улучшает результат. Файнтюнинг добавляет качества и бьёт альтернативные улучшалки базовых моделей на Memorizing Transformers и SLED (https://arxiv.org/abs/2208.00748).
🔥38👍115
Интересный в общем подход, их серии “дёшёво и сердито”. Он добавляет вычислений на инференсе, к тому же надо сначала обработать всю длинную последовательность, но качество тоже заметно повышается.

Код на гитхабе позволяет просто использовать Unlimiformer с моделями Hugging Face.
“Human Compatible”, Stuart Russell
https://people.eecs.berkeley.edu/~russell/hc.html

Снова про книги.

Добрался до “Human Compatible” Стюарта Расселла, профессора из Беркли, известного в том числе соавторством вместе с Питером Норвигом общеизвестной книги по ИИ “Artificial Intelligence: A Modern Approach” (http://aima.cs.berkeley.edu/), которая ныне существует уже в 4-м издании.

Текущая книга (2019 года) посвящена вопросу что будет, когда мы достигнем своей цели в ИИ? Как сделать так, чтобы это не было последним событием человеческой истории? Как нам жить в будущем, где способности машин будут многократно превосходить человеческие?

В книге три части. В первой обсуждается интеллект людей и машин, как всё шло и куда всё идёт. Во второй части обсуждаются возможные проблемы, с фокусом на проблему контроля машин мощнее нас. В последней части Расселл продвигает свой взгляд на как добиться того, чтобы машины оставались полезными (beneficial) для человечества. Расскажу пока про первую часть.

Главный вопрос автора: что если у нас получится? Почему про это никто не думает? Что было бы, если бы мы получили послание от инопланетян о том, что они прибудут на Землю через 30-50 лет? Почему в случае ИИ реакция иная? Расселл придерживается взгляда, что это потенциальный риск для нашего вида. Напомню ещё раз, это не какой-то левый человек, это один из крутейших людей области, на учебниках которого выросло не одно поколение.

В истории ИИ с самого её основания было много примеров чрезмерно оптимистичных обещаний. Почему в этот раз будет не так? Никто достоверно не знает, но совсем недавно были и примеры чрезмерно пессимистичных обещаний относительно сроков достижения, например, победы в го. С приручением энергии распада атома было так же: Резерфорд (крутейший человек в области) в докладе 11 сентября 1933 года объявил вздором обещания ядерной энергии, а на следующий день Лео Сцилард, прочитав за завтраком заметку о речи Резерфорда, придумал на прогулке как это сделать через цепную реакцию. Прошло меньше 24-х часов.

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

Среди этих прорывов овладение здравым смыслом для которого единого понятного решения нет, но может быть можно прийти туда бутстрапом. Также там кумулятивное обучение концептам и теориям и дотуда, кажется, ещё далеко. Хотя успехи deep learning’а в этом месте выглядят привлекательно. Есть discovering actions и иерархическое планирование действий, здесь пока непонятно как конструировать иерархию абстрактных действий, в идеале когда робот ещё и открывает для себя полезные новые действия на разных уровнях иерархии, от способности стоять до открытия дверей, завязывания узлов, строительства домов и т.д. По мнению Расселла, это наиболее важный шаг на пути к ИИ уровня человека. И здесь же управление ментальными активностями, где агент должен не просто решать определённую задачу, а “быть”, выбирая из кучи разнородных активностей. В сочетании с открытием новых высокоуровневых действий может получиться крутой decision maker для реального мира. Неочевидно, забыто ли что-то ещё важное за пределами этого списка

Суперинтеллектуальная машина подразумевается что более способна, чем отдельный человек. А объединение n таких машин более способно чем объединение n людей. При этом такой мультиагентный дизайн скорее всего не самый эффективный, будут и лучше с меньшей стоимостью коммуникации.

Агент может больше всего просмотреть, прочитать и прослушать. Он может контролировать миллионы тел. А также он будет иметь доступ к миллионам экранов смартфонов (да уже). Вероятно, он будет способен лучше заглядывать в будущее.
👍296❤‍🔥5🤡3😁1
С другой стороны есть и ограничения. Какие-то аспекты реальности предсказать нельзя. Какое-то знание нельзя получать быстро (но что-то зато можно параллелить). И отдельное важное ограничение в том, что машины это не люди. Это мы можем “бесплатно” понимать других людей и предсказывать их действия. Машинам в чём-то будет сложнее (но они зато могут запускать код друг друга). По мнению Расселла, получение человеческих или выше способностей понимать человеков потребует большего времени, чем для других способностей.

Универсальный интеллект может стать Everything-as-a-service (EaaS). И каждый сможет иметь в своём распоряжении целую организацию агентов-помощников. Это вероятно значительно увеличит ВВП, да и изменит ход истории. При этом остаются ограничения на землю и материалы. В общем потенциальное будущее может быть хорошим и богатым, но можно и всё испортить. И следующая часть книги посвящена этому.

Продолжение: https://news.1rj.ru/str/gonzo_ML/2232

#books #AGI
🔥249👍4😁1
❤‍🔥82
[China] Phoenix: Democratizing ChatGPT across Languages
Zhihong Chen, Feng Jiang, Junying Chen, Tiannan Wang, Fei Yu, Guiming Chen, Hongbo Zhang, Juhao Liang, Chen Zhang, Zhiyi Zhang, Jianquan Li, Xiang Wan, Benyou Wang, Haizhou Li
Статья: https://arxiv.org/abs/2304.10453
Код: https://github.com/FreedomIntelligence/LLMZoo

Прогресс за последние полгода-год прямо существенный (https://news.1rj.ru/str/gonzo_ML/1467). Я бы выделил три момента:
1) Запуск ChatGPT (https://news.1rj.ru/str/gonzo_ML/1140) на публику, он впервые дал огромный охват и принёс популярность теме и OpenAI лично;
2) Анонс GPT-4 (https://news.1rj.ru/str/gonzo_ML/1383) с существенно более высокими способностями, чем у предыдущих моделей, так что тестирование теперь идёт на человеческих датасетах и заговорили про sparks of intelligence (https://news.1rj.ru/str/gonzo_ML/1418) и рисках вообще;
3) Утекание в паблик (https://news.1rj.ru/str/gonzo_ML/1346) непубличных весов от “как бы опенсорсной” модели LLaMA (https://news.1rj.ru/str/gonzo_ML/1324). Это запустило массовое народное экспериментирование вокруг LLM с запуском на ноутбуках, телефонах и Raspberry PI; устранение токсичных элементов лицензий чтобы можно было безопасно применять в коммерческих приложениях, и т.п.

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

Хостит проект команда под названием FreedomIntelligence (https://github.com/FreedomIntelligence) с фото Мела Гибсона, борца за независимость Шотландии :) Целью заявляется также большая доступность ChatGPT, ограниченная самими OpenAI или локальными правительствами (картинка в тему: https://i.imgur.com/2fF3Xlh.png, но там что-то Италии не видно), и уход от ‘AI supremacy’ этой компании с отсылкой к Асиломарским принципам (https://futureoflife.org/open-letter/ai-principles/). Соответственно данные, код и веса моделей доступны. Вообще в работе много лозунгов и читать её прикольно, отличается от типичной американской работы и замыкается туда же через “Make AI open again”.

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

В общем работа про демократизацию, в первую очередь относительно языков. Текущие опенсорсные альтернативы явно выпиливают нелатинские и некириллические языки, и феникс призван восстановить справедливость.

Модель стартует с предобученного мультиязычного BLOOM и работа идёт сразу по двум направлениям обучения моделей: instruction tuning и conversation tuning, эти данные тоже мультиязычные. Предыдущие опенсорс альтернативы обычно выбирали одно из этих направлений, либо инструкции, либо разговор.

Для инструкций берут language-agnostic data (видимо, в основном это имеется в виду английский) и переводят на другие языки, сохраняя реальные пропорции между языками. Был вариант как с переводом всего сразу (инструкции и вывод), так и с переводом только инструкций и генерации вывода по инструкциям на новом языке через GPT-3.5. Были также сгенерированные user-centered instructions с ролями, их тоже перевели в пропорциях соответствующих количеству носителей.

Для разговорных данных собирают пользовательские разговоры на разных языках из разных источников.

Поскольку мультиязычность обычно не даётся даром, и есть понятие curse of multilinguality (https://docs.google.com/presentation/d/1m7Wpzaowbvi2je6nQERXyfQ0bzzS0dD0OArWznfOjHE/edit#slide=id.g21224696c1e_0_309), которое здесь называют multilingual tax, мультиязычная модель запросто может на отдельных языках быть хуже специализированных того же размера. Поэтому обучают специальную безналоговую латинскую версию феникса, названную химерой (Chimera), на бэкбоне LLaMA.

Всё обучали пайторчом с хаггинфейсом. 3 эпохи, батч 256, размер контекста 2048. Моделька Phoenix (совсем мультиязычная) размера 7B, Chimera (латинская) 7B и 13B.
14👍10
По аналогии с викуной сравнивали на 80 вопросах в 8 категориях + добавили от себя категории про reasoning и grammar и получилось 100 по 10. Делали попарное сравнение строго по протоколам викуны.

Для оценки использовали GPT-4 для получения абсолютных значений скоров для английских и китайских результатов. На остальные языки квот OpenAI не хватило и использовали более быструю и дешёвую GPT-3.5 Turbo. Этой модели было довольно сложно выдавать скоры для ответов, которые крайне мало отличаются по качеству. Поэтому альтернативный подход был в том, чтобы спросить какой результат лучше и дать аргументацию почему. Такие подходы к оценке называются соответственно absolute performance и beat rate. Метод не бесспорный и наверняка со своими особенностями, но тем не менее.

По перформансу на китайском Феникс был похуже GPT-3.5 Turbo и ChatGLM-6b, примерно сравним с Baidu-Wenxin и лучше опенсорс альтернатив.

На английском был лучше Vicuna-7b и ChatGLM6b, но хуже Vicuna-13b и ChatGPT. В свою очередь Chimera, которая tax-free Phoenix, установила новую SoTA для опенсорсных LLM с 96.6% качества от ChatGPT.

На других языках хуже ChatGPT, но лучше Guanaco.

Была также человеческая оценка волонтёрами, она на китайском показала примерно такой же результат феникса относительно других моделей.

Как резюме, опенсорс несётся с сумасшедшей скоростью. Как Stable Diffusion и Midjourney в своё время (блин, ещё совсем недавно, но по ощущению уже в прошлой эре) переформатировали игровое поле (https://news.1rj.ru/str/gonzo_ML/1062), и теперь, например, про DALLE-2 уже мало кто вспоминает, она сейчас не очень игрок. Так и новые языковые модели могут реально подвинуть разных коммерческих игроков, про что как раз был недавний пост кого-то из Гугла (https://news.1rj.ru/str/gonzo_ML/1515). Похоже, у нас правда очень скоро будут мультиязычные модели вполне достойного качества, которые можно запускать у себя на ноутбуке (а может и даже на телефоне) и локально решать большой спектр задач, где такого pseudocognition вполне достаточно. Даёшь маленькие коробочки с LLM для домохозяйств!
🔥185👍1🤮1