dlinnlp | Unsorted

Telegram-канал dlinnlp - DL in NLP

12571

Новости и обзоры статей на тему обработки естественного языка, нейросетей и всего такого. Связь: @dropout05 (рекламы нет)

Subscribe to a channel

DL in NLP

Сделал свой небольшой тред: https://twitter.com/guitaricet/status/1678589577148153856

Там те же идеи что и тут, но на английском.

Читать полностью…

DL in NLP

Подробности, а вернее спекуляции о деталях GPT4

Коротко в цифрах:
1. 1.8T параметров, 13T токенов, батч 60 миллионов токенов
1. MoE, 16 экспертов, 2 на каждый инференс
1. Мультимодальная GPT4 сделана аналогично Flamingo, затюнена на 2Т токенов
1. Тренировали на 25 тысячах A100 в течение 90-100 дней, ~2.15e25 FLOPs
1. Условная стоимость тренировки $63M (но в реальности нельзя арендовать 25K A100)
1. Tensor parallel = 8, pipeline parallel = 15, zero stage = 1
1. Две эпохи по текстовой части датасета, четыре — по кодовой (13Т токенов это умноженные на эпохи)
1. MultiQuery Attention — очень помогает в инференсе, тк сокращает размер KV cache
1. Инферится на нескольких независимых кластерах из 128GPU

Источник: Semianalysis (пейвол на $500, я не готов столько платить), но добрые люди суммаризировали статью в твиттере
В эти спекуляции легко поверить — OpenAI всегда были известны тем что они берут простые идеи и пишут очень эффективный код который эти идеи выполняет.

Теперь немного своих мыслей. Действительно кажется что сейчас для больших компаний стоимость тренировки абсолютно не важна, но что важно — это стоимость инференса. Она уже сильно влияет на архитектуру GPT4, например небольшое число экспертов, MQA. Очень забавно что вся история про спарсовые модели пошла от философско-биологичских аналогий, а в конце-концов реально нужна по инженерным причинам.

Кроме этого, заметили, что GPT4 недотренирована по Шиншилле? Если в модели 1.8T параметров, то chinchilla-optimal будет 36T токенов. Это намекает на:
1. OpenAI играет в долгую и они будут дотренировывать GPT4 ещё много раз
1. Полезные токены в интернете начали заканчиваться. Sam Altman говорил про эту проблему, и оказалось мы её уже достигли.
1. Модели перестанут расти (?)

Я немного удивлён относительно низкой эквивалентной стоимости A100-часов. В мире очень много компаний которые могут позволить себе потратить $100M на важный продукт. Ждём анонса мега-кластеров в AWS?

Читать полностью…

DL in NLP

KOSMOS-2: Grounding Multimodal Large Language Models to the World
arxiv.org/abs/2306.14824

Кажется проблема работы с текстом близка к решению: отдельные downstream задачи стали прерогативой продуктовых команд, почти всё можно решить подходом BERT/ChatGPT + labelled data. Аналогичная ситуация обстоит с многими задачами CV.

Но в мультимодальных сетях всё ещё есть открытые исследовательские вопросы. Команда Microsoft разработала новую модель Kosmos-2, которая умеет в mixed-modality language modeling, но в отличие от Flamingo, где в качестве инпута используется только текст и изображение, тут модель умеет принимать на вход (и генерировать) bounding boxes. То есть можно например спросить, куда смотрить этот[bbox] человек и модель ответит вам туда[bbox]. Кроме новых возможностей это также позволяет улушать интерпретируемость модели и снижать галлюцинации, тк модель сильнее обсуславливается на объекты в изображении.

Для тренировки использовали довольно хитрый пайплайн похожий на MDETR, где текст изначально парсился на группы существительных с помощью spaCy которым находили bbox с помощью GLIP (не путать с CLIP).

Результаты — новый датасет GrIT на 90M изображений и 137M bbox-text pairs, сильные результаты на RefCOCO, VQA, и Flickr.

Модель, код и датасет доступны на гитхабе.

Читать полностью…

DL in NLP

Очередная модель без статьи (пока что): AudioPALM
Тык

Языковая моделька которая принимает на вход текстовые и/или аудио токены и генерирует текстовые и/или аудио токены. Построена с помощью файтнюнинга чисто языковой модели PALM во время которого к ней прикручивали аудио токены. Для того чтобы превратить сгенерированные хиддены в аудио, их детокенизируют через AudioLM stage 2 и 3.

Модель умеет очень неплохо переводить язык с аудио в аудио на другом языке, сохраняя голос и эмоции человека. Интересно что с несколькими языками (итальянский, немецкий) модель переводит с заметным акцентом, а с другими (французский) переводит с чистым американским акцентов.

(смотрите видео обязательно со звуком)

Читать полностью…

DL in NLP

Direct Preference Optimization: Your Language Model is Secretly a Reward Model
arxiv.org/abs/2305.18290

Интересная статья, которая предлагает делать RLHF без RL. Используя пару математических трюков, можно показать что при модели Bradley-Terry человеческих предпочтений (которая похожа на то как моделируется reward в RLHF) можно вывести определённый лосс L который нам надо минимизировать.

Таким образом мы сводим RL задачу которая оптимизирует выученный (произвольный) reward к прямой задачи оптимизации на нашем датасете человеческих предпочтений. На практике это означает, что вам больше не надо страдать с PPO, не нужно генерировать текст во время обучения, и можно просто напрямую оптимизировать L. Экспериментальные результаты показывают что DPO работает так же как RLHF или лучше.

Читать полностью…

DL in NLP

Тем временем где-то в Стэнфорде

Читать полностью…

DL in NLP

Deploying Transformers on the Apple Neural Engine
https://machinelearning.apple.com/research/neural-engine-transformers

Под шумок WWDC вышел отличный пост о том как гонять трансформеры на ANE (Apple Neural Engine) который есть во всех современных iOS и MacOS девайсах. На секундочку ANE в iPhone 14 Pro может в 17 fp16-TFlops, что близко к RTX 3070 (20 TFlops). Неплохо для телефона.

Очень короткое содержание статьи:
1. Picking the Right Data Format — use (B, C, 1, S) tensors
1. Chunking Large Intermediate Tensors — считайте головы attention последовательно а не параллельно, что увеличит вероятность L2 cache residency
1. Minimizing Memory Copies — избегайте reshape и transpose
1. Handling Bandwidth-Boundness — батчуйте если можете

On-device LLM весьма возможны, например на iPhone 14 можно запускать 7B модель со скоростью генерации 6 токенов/секунду, и конкретно с железом Apple это делать очень просто потому что один и тот же код может работать и на куче айфонов и на маках и на apple vision. Поэтому очень интересно наблюдать за тем что происходит в opensource и гадать о следующей WWDC.

Несколько предсказаний которые будут неправильными и вы мне про это припомните:
1. LLM API от Apple на следующей WWDC
1. Одна централизованная небольшая (~7B) модель которая всегда бежит на вашем афоне и приложения могут к ней обращаться за генерациями
1. Большие модели бегут на серверах Apple и доступны аналогично OpenAI API
1. Скорее всего нет, но Apple было бы логично купить кого-нибудь типа Cohere, тк судя по слухам от The Information внутри у них так себе с большими языковыми моделями.

Читать полностью…

DL in NLP

The Falcon has landed in the Hugging Face ecosystem
huggingface.co/blog/falcon

Хороший блогпост от 🤗 в который рассказывает про Falcon-40B — полностью опенсорсную модель (теперь веса тоже распространяются под Apache 2.0) от, внезапно, Technology Innovation Institute in Abu Dhabi.

Что классно, в посте не только говорят про то что модель есть, сколько её тренировали и какие метрики, но и рассказывает про:

1. Multi-Query Attention — разные головы используют одни и те же K и V, что сильно сокращает потребление памяти на длинных последовательностях (см картинку)
1. 8-bit и 4-bit inference — поддержка 4-bit уже есть в Transformers на main branch на гитхабе и наверное скоро зарелизится
1. 🤗 Text Generation Inference — готовый и обернутый в Docker сервер для инференса больших моделей
1. Файнтюнинг через PEFT и конкретно через QLoRA

Очень рекомедую почитать и поиграться всем кому интересна работа с большими моделями. Тут прямо всё самое свежее.

Читать полностью…

DL in NLP

Как LLMs могут принимать сразу 100К токенов на вход?

Недавно несколько компаний объявили о возможности своих LLMs брать на вход аж до 100K токенов. Это промпт размером с книгу!
Для примера, OpenAI GPT-4 может брать 8-32K, а опен-сорсные модели всего 2K.

В новой статье Галя, выпускница нашего курса, разобрала техническую сторону вопроса и постаралась включить все основыне трюки, используемые MosaicML, Anthropic и Google.

В статье описаны:
- подробный вывод вычислительной сложности трансформера и ее влияние на стоимость обучения
- хитрые вычисления на GPU и Flash Attention, который недавно стал частью PyTorch
- нестандартный позиционный эмбеддинг ALiBi и почему нельзя было использовать оригинальный
- Multi-Query Attention, Sparse Attention и Условные вычисления

Читайте статью по ссылке и поддерживайте Галю 👏🏻 на Medium:
https://medium.com/gopenai/how-to-speed-up-llms-and-use-100k-context-window-all-tricks-in-one-place-ffd40577b4c

Задавайте вопросы Гале в комментариях к этому посту 👇

Читать полностью…

DL in NLP

Подъехал свежий видео-мем про очередную ML-конференцию. Ссылка: https://fxtwitter.com/postrat_dril/status/1663177876605206528
Имхо в этот раз не так смешно, но с выпуска прошлого года я умирал со смеху (ознакомиться можно тут).
Пишите, сколько мемов и отсылок поняли!


Спасибо автору @j_links за наводку.

Читать полностью…

DL in NLP

Наконец-то нормальный доклад про тренировку ChatGPT. Карпатый сделал вчера презу в Microsoft и хорошо раскидал.

От токенизации, до претрейна, supervised файнтюнинга и RLHF. И все это за 40 минут.

Доклад

@ai_newz

Читать полностью…

DL in NLP

Просто 7b модель которую вы можете запустить локально на айфоне со скоростью 6 токенов/секунду. Ничего особенно, проходим дальше.

https://github.com/mlc-ai/mlc-llm/blob/main/ios/README.md

Читать полностью…

DL in NLP

LIMA: Less Is More for Alignment
arxiv.org/abs/2305.11206

Внезапно в "давайте покажем что мы момжем так же как и GPT4 на 10 тестовых примерах" включились и серьёзные люди из META.
Показали что если зафайнтюнить LLaMA 65B на 1000 хорошо отобранных примеров, даже без RLHF, валидируясь на отложенных 50, можно получить модель сопоставимую с GPT4 на их 300 тестовых примерах.

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

Из интересного, посмотрите на графики выше — GPT4 вроде бы весьма может выполнять функцию автоматической оценки качества моделей заметно хуже себя. А вот когда качество становится ближе (Claude) уже появляется сильный bias к предпочтению своих ответов.

Читать полностью…

DL in NLP

Neeva.com — платный поисковик без рекламы c фокусом на приватность — закрывается 😥
neeva.com/blog/may-announcement

Neeva появилась несколько лет назад, ещё до you.com и задолго до нового AI-поколения поисковиков. Я пользовался ими около полугода и был готов платить, но не был удовлетворён качеством поиска.

После начала ChatGPT-хайпа они были одними из первых кто внедрил LLM в поиск, после чего они заслуженно тролили гугл. Однако на фоне текущей рецессии neeva.com решил закрыться over the next few weeks.

Причины объясняют следующим образом:
We’ve discovered that it is one thing to build a search engine, and an entirely different thing to convince regular users of the need to switch to a better choice. ... Contrary to popular belief, convincing users to pay for a better experience was actually a less difficult problem compared to getting them to try a new search engine in the first place.

Все кто оплатили подписку получат рефанд, все пользовательские данные будут удалены.

Но в этой новости есть и немного позитива. Команда не распущена, она будет сконцентрирована на новых (неанонсированных) продуктах и направлениях развития на основе поиска + LLM + эффективного инференса.

RIP

Читать полностью…

DL in NLP

Prompts is the new “stack more layers”. Change my mind 🤡

Читать полностью…

DL in NLP

OMG, тот твиттер тред удалили из-за копирайта (Semianalysis). Но мы всё помним.
Продолжение скринов в комментариях к этому посту.

Читать полностью…

DL in NLP

Long Sequence Modeling with XGen: A 7B LLM Trained on 8K Input Sequence Length
blog.salesforceairesearch.com/xgen/

Команда Salesforce выпустила новую серию опенсорсных моделей модель: XGen.

XGen-7B-4K-base натренирована на 800B токенах с длинной текста 2К, после чего ещё на 400B токенах с длинной 4К

XGen-7B-8K-base — дополнительно натренирована на 300B токенах при длине 8К.

В блогпосте также описывают data mixture: Redpajama (включая статьи с Arxiv) + Wikipedia (оверсемпл x4) + C4 (undersample x0.2) + The Pile (mathematics) + StarCoder.

Другие оперсорсные модели тоже могут обрабатывать последовательности длины 8К, но они никогда не были тренированы на таких длинных текстах. Обычно модельки тренируются на 1К-2К и дальше просто экстраполируют. Но из-за этого страдает качество моделей на текстах длиннее 2К. На проприетарных моделях хорошо видеть этот эффект в ChatGPT-16К, который почти гарантированно забывает все после 8К токенов.

В результате XGen-7B-8K на MMLU обходит LLaMA, OpenLLaMA, Falcon, Redpajama того же размера и Cerebras-13B, Dolly-12B, OPT-13b. Посмотрев на лидербоард MMLU добавлю что также обходит OPT-175B и Bloom, но заметно хуже оригинального GPT-3, CohereCommand-52B и CohereCommand-6B. Хорошо было бы ещё сравниться с недавней MPT-30B которая может быть одной из лучших опенсорсных моделей доступных сейчас.

Но самые интересные результаты конечно на более длинных задачах: на SCROLLS (суммаризация) разрыв между XGen и другими 8B моделями становится очень большим: 5+ поинтов.

Модели доступны на 🤗

Читать полностью…

DL in NLP

Главный RL-ивент Тинькофф + Петербург + Июль = 💛

Этот идеальный комбо AI-команда Тинькофф хочет разделить с комьюнити. Поэтому ребята приглашают на Tinkoff.AI Saint Reinforcenburg 6 июля в Санкт-Петербурге.

Будут говорить о новых исследованиях, которые делали сами и вместе с InstaDeep, а еще о будущем RL. Подробнее на странице митапа. Там же можно зарегистрироваться.

И не забудьте позвать с собой RL-друзей!

#промо

Читать полностью…

DL in NLP

List of Fast Attention Implementations
Тык

Классный блогпост о методах эффективного attention с имплементациями. Рассказывает о

1. Linformer
1. Performer — может быть теперь я пойму как он работает
1. Linear Transformer
1. Attention-Free Transformer
1. RWKV — рекуррентная сетка, которая хорошо скейлится и работает на уровне трансформера протестирована вплоть до 13B параметров
1. Flash Attention
1. Memory Efficient Attention — в отличие от Flash Attention он не привязан к CUDA cores

Читать полностью…

DL in NLP

И последнее по теме. С выходом всех этих Vicuna, Koala, Dolly и других обитателей зоопарка стало модным производить сравнение между моделями с помощью...GPT-4 (как и в примере выше).

Дается специальный промпт, в него вставляются два ответа на один и тот же вопрос — от модели A и от модели B, а затем просят дать оценку по шкале от 1 до 8. 1 - это модель А сильно лучше, 8 - модель Б сильно лучше, 4-5 это ничья, ну и 2-3 и 6-7 понятно дело "модель получше".

Кажется логичным, что если модели А и Б поменять местами, то оценка по факту не поменяется (7 станет 2, 8 станет 1), и если модель стабильно лучше, то она и будет выгрывать. А вот нет! Проявляется так называемое "позиционное смещение", где модель чаще выдает оценку выше для модели А (единицу). Посмотрите на график - он должен быть почти симметричен относительно 4-5 (так как модели перемешиваются случайно). Для оценки людьми, например, это выполняется.

А что если попросить модель учесть это, чтобы она не разбрасывалась единицами? Это частично сработает...перекосив график в другую сторону (но уже менее критично).

Господа из HuggingFace 🤗 сделали исследование, разметив ответы 4 моделей на 329 разных вопросов. В целом, там много интересного написано, но из интреесного:
— для 4 моделей ранжирование моделей по парным сравнениям совпало между человеческим и GPT-4, но разные зазоры по Эло-рейтингу. То есть плохое от хорошего модель отличит, а вот пограничные случаи уже менее похожи на людские
— при этом модель выше оценивает ответы...других моделей (обученных на ответах GPT-4, лол 👍), нежели реальные человеческие ответы
— оценка GPT-4 очень сильно коррелирует (Pearson=0.96) с количеством уникальных токенов в ответе. Что, опять же, указывает на то, что модель не оценивает качество ответа - поэтому нужно быть максимально осторожным.

Читать полностью…

DL in NLP

Simple and Controllable Music Generation
arxiv.org/abs/2306.05284
Код
Демо

Свежая статья Мета о генерации музыки.
Основная идея: просто языковая моделька, но с хитро построенными аудио токенами от аудиотокенизатора EnCodec.
Код и модель доступны!

Читать полностью…

DL in NLP

LLM.university

Хороший бесплатный миникурс от Cohere о том как работают word embeddings, attention, трансформеры, генерация текста и как всё это применять для реальных задач.

В курсе также обсуждают промптинг, prompt chaining и дают несколько аннотированных примеров того как все это применять к задачам вроде document QA, semantic search (w Langchain) и так далее.

Местами high-level, но множество хороших иллюстраций. Рекомендую показывать это вашим студентам / джунам (если их ещё не заменил GPT4)

Читать полностью…

DL in NLP

Rack-mount MacPro и M2 Ultra с 198Gb unified RAM...

Кажется кто-то вспомнил что они умеют делать железо и Mac Server is back. Вангую на то что Apple уже эспериментирует с датацентрами на M2 Ultra вместо NVIDIA. Про примерение M2 Ultra к тренировке LLM сказали прямо на конференции. Интересно как они будут впихивать несколько M2 в один сервер и коммуникацию между серверами.

Unified RAM == GPU, CPU и Neural Engine используют одну и ту же память

Читать полностью…

DL in NLP

А теперь коротко о последних двух днях

Читать полностью…

DL in NLP

Current Best Practices for Training LLMs from Scratch

Забавный документ от Wandb в котором описывают важные вещи для тренировки LLM:
1. Scaling laws, compute-optimal training
1. Data Parallelism, Tensor Parallelism, Pipeline parallelism
1. Data clearning, deduplication, and upsampling
1. Hyperparameters (high-level)
1. Evaluation
1. Instruction tuning, RLHF

Гайд оч классный, местами немного устаревший, например не обсуждает zero-redundancy opitmizers (DeepSpeed) или Chinchilla trap — если вам надо деплоить, модели выгодно тренировать на большем числе токенов чем оптимально. В общем даёт неплохой high-level overview.

Читать полностью…

DL in NLP

Sounds good

MMS: Massively Multilingual Speech.
- Can do speech2text and text2speech in 1100 languages.
- Can recognize 4000 spoken languages.
- Code and models available under the CC-BY-NC 4.0 license.
- half the word error rate of Whisper.

Code+Models: https://github.com/facebookresearch/fairseq/tree/main/examples/mms
Paper:
https://scontent-lga3-2.xx.fbcdn.net/v/t39.8562-6/348836647_265923086001014_6878005808275791319_n.pdf?_nc_cat=104&ccb=1-7&_nc_sid=ae5e01&_nc_ohc=5exJiCqt0Y4AX9NNLzC&_nc_ht=scontent-lga3-2.xx&oh=00_AfDZGkLV3haLgAXkFFhYmxMG8D9J2WV1hKDqYAQNPW4-4g&oe=6471ACCF
Blog: https://ai.facebook.com/blog/multilingual-model-speech-recognition/

Читать полностью…

DL in NLP

Восстание AI начинается (или нет?)

Читать полностью…

DL in NLP

Intel 64-bit only architecture
intel.com/content/www/us/en/developer/articles/technical/envisioning-future-simplified-architecture.html

Кажется гигант задергался и после откровенно неудачных последних поколений процессоров, ухода Apple на свои ARM процессоры и слухов что другие сделают так же они решили убрать 40-летнее легаси из X86.

Новая архитектура называется X86S (Simplified) и в ней отказываются от поддержки 16-битных процессоров, промежуточных уровней доступа (ring1 и ring2), которые не используются современным hardware от слова совсем, 8259-прерывания и some unused operating system mode bits.

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

Читать полностью…

DL in NLP

Очень странная новость от The Information о том что OpenAI планирует выпустить open-source LLM. К сожалению оригинальная новость за пейволом и тк я не готов платить $500 за чтение новостей будем читать перепечатки и гадать.

Зачем им может это быть нужно?
<натягиваем сову на глобус>
OpenAI всё-таки часть community и одна из их задач, в соответствии с OpenAI Charter это "create a global community working together to address AGI’s global challenges". Несмотря на мемы про ClosedAI часть проектов OpenAI всё-таки были заопенсоршены: PPO, gym, GPT2, Jukebox, CLIP, Tiktoken, Whisper, Shap-E, Point-E, пара датасетов для RLHF, Triton.

Кроме этого, LLaMA и другие сильные модели зарелижены без alignment и их можно использовать для генерации чего угодно. Я бы предположил что они будут релизить уже aligned модель, тк это больше согласуется с их подходом. Возможно хайп который поднимает вокруг себя OpenAI позволит сфокусировать внимание на этой модели и сделать так что больше людей будут использовать их модельку.
</натягиваем сову на глобус>

Новость звучит очень сас и я не готов ей прямо верить на 100%, но было бы интересно посмотреть на что-нибудь такое. Всё-таки конкуренция полезна не только для коммерческих компаний, но и для opensource решений.

UPD: саммари статьи

Читать полностью…

DL in NLP

Получил доступ к Claude и попробовал запрос который пробую со всеми новыми модельками: минималистичный DDP для тренировки LM.

И получилось относительно неплохо, хотя и не полностью то что я хочу. Пока что никто из моделей GPT4/PALM2/gpt4all-snoozy не справился и в общем кажется неплохим тестовым кейсом, тк в интернете нету нормальных туториалов по DDP с препроцессингом для LM (если знаете — кидайте в коменты).

В общем мне кажется что на фоне хайпа GPT4/PALM2 Claude недооценён. С учётом 100K context length я прямо смогу сделать новые проекты которые было сложнее сделать с GPT4.

Читать полностью…
Subscribe to a channel