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
Hot news: https://ai.facebook.com/blog/large-language-model-llama-meta-ai/

Training smaller foundation models like LLaMA is desirable in the large language model space because it requires far less computing power and resources to test new approaches, validate others’ work, and explore new use cases. Foundation models train on a large set of unlabeled data, which makes them ideal for fine-tuning for a variety of tasks. We are making LLaMA available at several sizes (7B, 13B, 33B, and 65B parameters) and also sharing a LLAMA model card that details how we built the model in keeping with our approach to Responsible AI practices.

In particular, LLaMA-13B outperforms GPT-3 (175B) on most benchmarks, and LLaMA-65B is competitive with the best models, Chinchilla70B and PaLM-540B. We release all our models to the research community.

Model card: https://github.com/facebookresearch/llama/blob/main/MODEL_CARD.md

Paper: https://research.facebook.com/publications/llama-open-and-efficient-foundation-language-models/

Form to apply: https://docs.google.com/forms/d/e/1FAIpQLSfqNECQnMkycAp2jP4Z9TFX0cGR4uf7b_fBxjY_OjhJILlKGA/viewform

Unfortunately, it's only for non-commercial purposes :(

"You will not, and will not permit, assist or cause any third party to:

a. use, modify, copy, reproduce, create derivative works of, or distribute the Software Products (or any derivative works thereof, works incorporating the Software Products, or any data produced by the Software), in whole or in part, for (i) any commercial or production purposes ... "
🔥15👍41
Ну и примерно в эту же тему, но с другой стороны:
👍1
😁36🤡53🥰1
И последний пост на сегодня, заканчивая тему про AGI, LLM и прочее очередным коротким рассказом от qntm

https://qntm.org/differenc
👍4😴1
Но есть и хорошие новости:
11🤡2🍌2
[Meta AI] LLaMA: Open and Efficient Foundation Language Models
Hugo Touvron, Thibaut Lavril, Gautier Izacard, Xavier Martinet, Marie-Anne Lachaux, Timothée Lacroix, Baptiste Rozière, Naman Goyal, Eric Hambro, Faisal Azhar, Aurelien Rodriguez, Armand Joulin, Edouard Grave, Guillaume Lample
Статья: https://research.facebook.com/publications/llama-open-and-efficient-foundation-language-models/
Пост в блоге: https://ai.facebook.com/blog/large-language-model-llama-meta-ai/
Код (ничего интересного, только структура модели и инференс): https://github.com/facebookresearch/llama

Надо по горячим следам разобрать свежую модель LLaMA.

Сразу стоит отметить, что хоть она и заявляется Лекуном как open-source (https://www.facebook.com/yann.lecun/posts/pfbid027jeALGKiUcDZLLcfDA4smA3z9wJKUyBKogSo6EiuKz3PPNpBkskixSzoiY6b56Cql), это конечно безумно далеко от реальности. Опенсорс только структура модели и код для инференса, а код для обучения, датасеты и конечно же веса нифига не опенсорс. Так и я могу сказать, что я AlphaGo Zero заопенсорсил (https://github.com/che-shr-cat/alphago), но каждый же понимает насколько это далеко от реальности. Про веса ещё и сказано, что обученную модель (буде вам соизволят выдать к ней доступ, форма для заполнения в посте) нельзя использовать в коммерческих целях. В общем, конечно, лучше, чем с совсем закрытой Шиншиллой (https://news.1rj.ru/str/gonzo_ML/1216), но всё равно называть это опенсорсом too much.

Что можно сказать про модель?

Это снова декодер трансформера в стиле GPT-3 (https://news.1rj.ru/str/gonzo_ML/305), но более релевантный референс пойнт всё же Шиншилла (https://news.1rj.ru/str/gonzo_ML/1216), потому что LLaMA обучена с учётом оптимального соотношения между размером модели и количеством токенов в обучении, найденного в той работе. И они в этом смысле сравнимы.

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

Датасеты используются только публичные, чтобы можно было воспроизвести, это хорошо. В этом смысле вопрос про датасет в значительной мере снимается, хотя наверняка всё равно было много своего кода для его подготовки. Больше всего в данных содержится CommonCrawl (67%), потом C4 (15%), далее GitHub, Wikipedia (на 20 языках), Books, ArXiv и StackExchange (я не понял, это какой-то понятный датасет, который можно взять, или их собственный дамп, по описанию которого фиг воспроизведёшь работу).

Токенизатор BPE (от кстати тоже отсутствует в “опенсорсе”), все числа разбиваются на отдельные цифры, есть фолбэк на байты в случае незнакомых UTF-8 символов.

Обучено четыре модели: 6.7B, 13B, 32.5B, 65.2B. Первые две на 1T токенов, вторые на 1.4T.

Для сравнения:
- GPT-3, N=175B, D=300B
- Gopher, N=280B, D=300B (https://news.1rj.ru/str/gonzo_ML/742)
- Chinchilla, N=70B, D=1.4T
- LLaMA, N=65B, D=1.4T

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

Изменения в трансформере относительно классического трансформера Васвани:
- пренормализация как в GPT-3
- SwiGLU активация как в PaLM, но с чуть другой размерностью
- Rotary Embeddings (RoPE) как в GPTNeo

Оптимизатор AdamW с обычными гиперпараметрами, cosine learning rate schedule с финальным learning rate в 10% от максимального, 2 тысячи шагов прогрева.

Использовали эффективную имплементацию causal multi-head attention (экономит вычисления и память, не считая, что не нужно для замаскированных токенов), доступную в библиотеке xformers (https://github.com/facebookresearch/xformers).

Использовали чекпойнтинг, чтобы не пересчитывать активации на обратном проходе (сохраняли те, что дорого считать, типа выходов линейных слоёв). Для этого написали свой код для функции backward() трансформерных слоёв, не полагаясь на autograd пайторча (но этот код, конечно, тоже не входит в “опенсорс”).

Использовали model и sequence parallelism (как в работе Нвидии “Reducing Activation Recomputation in Large Transformer Models” https://arxiv.org/abs/2205.05198).
👍203🔥3
Также старались максимизировать перекрытие операций вычисления активаций и all-reduce коммуникации между GPU.

65B модель обучалась на 2048 A100/80Gb, что для 1.4T токенов требует 21 день. В ценах Ажура это было бы примерно $3.5M если ориентироваться на машины ND96asr A100 v4 с 8x A100 (https://azure.microsoft.com/en-gb/pricing/details/virtual-machines/linux/).

Судя по картинке лосса, кстати, ещё есть куда обучать.

Проверяли на zero-shot и few-shot на 20 бенчмарках.

Сравнивали с GPT-3 (175B), Gopher (280B), Chinchilla (70B), PaLM (8B, 62B, 540B), OPT(30B, 175B), GPT-J (6B, но в таблицах не фигурирует), GPTNeo (20B).

На Common Sense Reasoning бьёт соразмерную Шиншиллу (в тексте написано, что кроме BoolQ, но в таблице по цифрам её тоже), бьёт также намного более крупный PaLM540B везде кроме BoolQ и Winogrande, а 13B модель много где бьёт в 10 раз более крупную GPT-3, и с ней можно делать инференс на одном GPU V100.

На NaturalQuestions и TriviaQA новая SoTA в zero/few-shot, а LLaMA-13B хороша даже в сравнении с сильно большими GPT-3 и Шиншиллой.

На RACE reading comprehension LLaMA-65B сравнима с PaLM-540B, а LLaMA-13B бьёт GPT-3.

На Mathematical reasoning бьёт сравнимый по размеру PaLM (а иногда и самый большой), но обеим далеко до специализированной Минервы (файнтюненный PaLM), хотя на GSM8k близко.

На кодогенерации в целом лучше, чем LaMDA и PaLM.

На Massive Multitask Language Understanding (MMLU) похуже Шиншиллы и PaLM в 5-shot. Считают, что потому что книг в обучении было сильно меньше (177Gb << 2Tb).

Сделали Instruction finetuning, получили модель LLaMA-I. Хорошо улучшилась на MMLU, почти достала большой PaLM. В целом это был не фокус, поэтому ограничились одним экспериментом.

По токсичности вроде похоже на другие модели. Что интересно, токсичность растёт с увеличением размера модели.

По bias’ам в среднем слегка лучше GPT-3 175B, OPT 175B, но по отдельным темам и ощутимо хуже (например, по религии). Валят на CommonCrawl.

По truthful и truthful*informative лучше, чем GPT-3, но всё равно доля корректных ответов довольно низка, так что модель вероятно неплохо галлюцинирует.

Carbon footprint на все работы по модели (5 месяцев) оценили примерно в 1015 tCO2e. На самую большую 65B Ламу ушло 173 tCO2e, а для сравнения у самой большой LaMDA (https://news.1rj.ru/str/gonzo_ML/1230) было 25.2 tCO2e.

Ну в общем в целом хорошая получилась модель, примерно аналог Шиншиллы и даже более открытый, чем она. Уже хороший шаг. Но жаль всё-таки, что это полушаг, и открыто оно не до конца и всё ещё non-commercial. BERT в своё время офигенно область продвинул, и академическую и коммерческо-продуктовую. Могли бы и тут продвинуть и даже OpenAI потеснить на пьедестале.
👍102🔥2