DarkBERT: A Language Model for the Dark Side of the Internet
Пока в EU пытаются зарегулировать AI вусмерть — в Южной Корее учат DarkBERT.
Ничего особенного, просто берт, обученный на дарквебе (наркоторговля, оружие, etc.). Якобы, такая модель нужна чтобы лучше классифицировать нелегальный контент и специфичный язык пользователей тёмной стороны интернета 🌚
P.S. Саму модель пока не выложили, поэтому можно проходить мимо.
Статья
Пока в EU пытаются зарегулировать AI вусмерть — в Южной Корее учат DarkBERT.
Ничего особенного, просто берт, обученный на дарквебе (наркоторговля, оружие, etc.). Якобы, такая модель нужна чтобы лучше классифицировать нелегальный контент и специфичный язык пользователей тёмной стороны интернета 🌚
P.S. Саму модель пока не выложили, поэтому можно проходить мимо.
Статья
TinyStories: The Smallest GPT with Coherent English (by Microsoft)
Как думаете, с какого размера у LM появляется возможность писать связный текст? Оказалось, что и 2.5M параметров достаточно!
Главное препятствие для полноценного понимания языка у трансформеров — огромное количество редких слов (длинный хвост распределения). Но если составить обучающий датасет из 1.5к наиболее частотных корней (словарный запас 5-летнего ребёнка), то даже однослойную GPT можно будет обучить так, что она обойдёт GPT2-XL!
Этот чудесный датасет, написанный руками GPT-4, отлично подходит для валидации новых архитектур, на нём даже скейлинг Шиншиллы подтверждается. Так что если хотите изобрести свою «SuperGPT» архитектуру, то рекомендую экспериментировать на этом сете. Его размер всего 3 Гб.
P.S. Из интересных выводов — лучше масштабировать GPT в глубину, чем в ширину.
Статья, датасет, модель
Как думаете, с какого размера у LM появляется возможность писать связный текст? Оказалось, что и 2.5M параметров достаточно!
Главное препятствие для полноценного понимания языка у трансформеров — огромное количество редких слов (длинный хвост распределения). Но если составить обучающий датасет из 1.5к наиболее частотных корней (словарный запас 5-летнего ребёнка), то даже однослойную GPT можно будет обучить так, что она обойдёт GPT2-XL!
Этот чудесный датасет, написанный руками GPT-4, отлично подходит для валидации новых архитектур, на нём даже скейлинг Шиншиллы подтверждается. Так что если хотите изобрести свою «SuperGPT» архитектуру, то рекомендую экспериментировать на этом сете. Его размер всего 3 Гб.
P.S. Из интересных выводов — лучше масштабировать GPT в глубину, чем в ширину.
Статья, датасет, модель
🔥QLoRA: Зафайнтюнить 30B модель в колабе? Легко!
Гениальная и удивительно простая идея лежит в основе этого подхода. Если мы тюним только LoRA адаптеры, а основная модель заморожена, то почему-бы не заквантовать её до предела?
Квантуется модель в новый 4-bit NormalFloat, который отлично подходит для normally distributed активаций. При этом все операции с LoRA остаются в bf16. Самое удивительное — такой подход не отстаёт от полного 16-bit файнтюнига базовой модели — авторы проверили на 1000(!) разных LM.
Всё это уже интегрировано в HuggingFace, а как бонус — авторы обучили нового SOTA чатбота (Guanaco + OASST1 + QLoRA).
Статья, GitHub, colab, модель
Гениальная и удивительно простая идея лежит в основе этого подхода. Если мы тюним только LoRA адаптеры, а основная модель заморожена, то почему-бы не заквантовать её до предела?
Квантуется модель в новый 4-bit NormalFloat, который отлично подходит для normally distributed активаций. При этом все операции с LoRA остаются в bf16. Самое удивительное — такой подход не отстаёт от полного 16-bit файнтюнига базовой модели — авторы проверили на 1000(!) разных LM.
Всё это уже интегрировано в HuggingFace, а как бонус — авторы обучили нового SOTA чатбота (Guanaco + OASST1 + QLoRA).
Статья, GitHub, colab, модель
Skoltech
Три года назад я закончил Сколтех, и поступить туда — было лучшим решением в моей жизни. Настолько захватывающее и современное обучение стало для меня шоком, особенно после МГУ.
Так что, если кто-то из подписчиков думает про IT магистратуру — обязательно посмотрите в сторону Skoltech, дедлайн 10 июля.
Три года назад я закончил Сколтех, и поступить туда — было лучшим решением в моей жизни. Настолько захватывающее и современное обучение стало для меня шоком, особенно после МГУ.
Так что, если кто-то из подписчиков думает про IT магистратуру — обязательно посмотрите в сторону Skoltech, дедлайн 10 июля.
This media is not supported in your browser
VIEW IN TELEGRAM
MEMIT: Где именно GPT хранит свои знания? (by MIT)
Оказалось, что память у трансформеров находится в feed-forward части, а точнее в последнем слое некоторых MLP. При этом все факты можно довольно легко изменять без вреда для остальных знаний и навыков модели.
Авторы придумали хитрый способ как определить место внутри модели, связанное с отдельной ассоциацией. Для этого они берут текст нужного факта, зашумляют эмбеддинги его токенов и смотрят какой фрагмент модели наиболее подвержен влиянию такого искажения — всегда оказывается, что это один из feed-forward слоёв.
А для подмены факта необходимо внести небольшие изменения в выходную матрицу найденного MLP (rank-one modification), основываясь на желаемом аутпуте для этого слоя. Такой подход работает надёжнее, чем файнтюнинг, ведь если долго учить GPT тексту «Лувр находится в Париже» — то она может начать говорить, что и Статуя Свободы, и Кремль, и вообще всё остальное тоже находится в Париже.
Авторы смогли запихнуть десятки тысяч фактов из Wikidata внутрь GPT-J и подготовили демо, где можно наблюдать за внутренним «развитием» ассоциаций в модели от слоя к слою.
Статья, GitHub, демо, colab
Оказалось, что память у трансформеров находится в feed-forward части, а точнее в последнем слое некоторых MLP. При этом все факты можно довольно легко изменять без вреда для остальных знаний и навыков модели.
Авторы придумали хитрый способ как определить место внутри модели, связанное с отдельной ассоциацией. Для этого они берут текст нужного факта, зашумляют эмбеддинги его токенов и смотрят какой фрагмент модели наиболее подвержен влиянию такого искажения — всегда оказывается, что это один из feed-forward слоёв.
А для подмены факта необходимо внести небольшие изменения в выходную матрицу найденного MLP (rank-one modification), основываясь на желаемом аутпуте для этого слоя. Такой подход работает надёжнее, чем файнтюнинг, ведь если долго учить GPT тексту «Лувр находится в Париже» — то она может начать говорить, что и Статуя Свободы, и Кремль, и вообще всё остальное тоже находится в Париже.
Авторы смогли запихнуть десятки тысяч фактов из Wikidata внутрь GPT-J и подготовили демо, где можно наблюдать за внутренним «развитием» ассоциаций в модели от слоя к слою.
Статья, GitHub, демо, colab
Understanding Optimization of Deep Learning
Крутой обзор всех аспектов и методов оптимизации нейронных сетей. Тут описано как бороться с возникающими проблемами, в чём отличия оптимизаторов, почему трансформеры капризнее резнетов (сильная кривизна лосса → большое значение константы Липшица) и ещё много всего интересного на 50 страниц.
P.S. На картинке показано как можно справиться с взрывающимися градиентами.
Статья
Крутой обзор всех аспектов и методов оптимизации нейронных сетей. Тут описано как бороться с возникающими проблемами, в чём отличия оптимизаторов, почему трансформеры капризнее резнетов (сильная кривизна лосса → большое значение константы Липшица) и ещё много всего интересного на 50 страниц.
P.S. На картинке показано как можно справиться с взрывающимися градиентами.
Статья
Forwarded from DL in NLP (Vlad Lialin)
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 или лучше.
arxiv.org/abs/2305.18290
Интересная статья, которая предлагает делать RLHF без RL. Используя пару математических трюков, можно показать что при модели Bradley-Terry человеческих предпочтений (которая похожа на то как моделируется reward в RLHF) можно вывести определённый лосс L который нам надо минимизировать.
Таким образом мы сводим RL задачу которая оптимизирует выученный (произвольный) reward к прямой задачи оптимизации на нашем датасете человеческих предпочтений. На практике это означает, что вам больше не надо страдать с PPO, не нужно генерировать текст во время обучения, и можно просто напрямую оптимизировать L. Экспериментальные результаты показывают что DPO работает так же как RLHF или лучше.
LightGlue: Local Feature Matching at Light Speed (by Microsoft)
Появилась новая SOTA по качеству и скорости для сопоставления изображений.
Выравнивание происходит при помощи трансформера, который матчит эмбеддинги ключевых точек (SuperPoint, DISK). А высокая скорость достигается «ранним выходом» из модели — на лёгких изображениях инференс завершается на начальных слоях трансформера (очень похоже на CALM).
Код и веса выложены в открытый доступ.
Статья, GitHub
Появилась новая SOTA по качеству и скорости для сопоставления изображений.
Выравнивание происходит при помощи трансформера, который матчит эмбеддинги ключевых точек (SuperPoint, DISK). А высокая скорость достигается «ранним выходом» из модели — на лёгких изображениях инференс завершается на начальных слоях трансформера (очень похоже на CALM).
Код и веса выложены в открытый доступ.
Статья, GitHub
Forwarded from эйай ньюз
The Little Book of Deep Learning
Карманная книга по DL от профессора из Женевского Университета François Fleuret. Всего 160 страниц размером с экран телефона, где очень ёмко описываются основные принципы Глубокого Обучения с отличными иллюстрациями.
Классно подойдёт для того чтобы освежить знания перед собеседованиями либо для быстрого входа в DL (желательно, конечно, пользоваться и другими источниками параллельно).
• По ссылке можно бесплатно скачать PDF, отформатированную специально для удобного чтения на мобильных телефонах.
• Либо можно заказать бумажный вариант. #books
@ai_newz
Карманная книга по DL от профессора из Женевского Университета François Fleuret. Всего 160 страниц размером с экран телефона, где очень ёмко описываются основные принципы Глубокого Обучения с отличными иллюстрациями.
Классно подойдёт для того чтобы освежить знания перед собеседованиями либо для быстрого входа в DL (желательно, конечно, пользоваться и другими источниками параллельно).
• По ссылке можно бесплатно скачать PDF, отформатированную специально для удобного чтения на мобильных телефонах.
• Либо можно заказать бумажный вариант. #books
@ai_newz
Найдена причина всплесков в активациях трансформеров (by Qualcomm)
Как же тяжело квантовать трансформеры (fp32→int8). Столько всего придумали, лишь бы спастись от аутлаеров в активациях, которые принимают огромные значения, выходя за пределы машинной точности.
В статье Quantizable Transformers наконец нашли причину этих магических всплесков, которые даже начинали оправдывать "искрами сознания". Всю вину возложили на софтмакс этэншна — когда модель хочет занулить вклад каких-нибудь токенов (или патчей), голове внимания приходится выдавать огромные (по модулю) значения логитов, чтобы получить ~0 после софтмакса. Авторы попробовали добавить clipped softmax и gated attention, после чего все трансформеры стали не только легко квантоваться, но и даже чуть-чуть выиграли в точности.
Главная улика, которая навела авторов на софтмакс — аутлаеры всегда соответствовали "бесполезным" токенам или патчам (см. картинку). Статья очень легко читается и вообще похожа на детектив, всем рекомендую 💁♂️
Статья
Как же тяжело квантовать трансформеры (fp32→int8). Столько всего придумали, лишь бы спастись от аутлаеров в активациях, которые принимают огромные значения, выходя за пределы машинной точности.
В статье Quantizable Transformers наконец нашли причину этих магических всплесков, которые даже начинали оправдывать "искрами сознания". Всю вину возложили на софтмакс этэншна — когда модель хочет занулить вклад каких-нибудь токенов (или патчей), голове внимания приходится выдавать огромные (по модулю) значения логитов, чтобы получить ~0 после софтмакса. Авторы попробовали добавить clipped softmax и gated attention, после чего все трансформеры стали не только легко квантоваться, но и даже чуть-чуть выиграли в точности.
Главная улика, которая навела авторов на софтмакс — аутлаеры всегда соответствовали "бесполезным" токенам или патчам (см. картинку). Статья очень легко читается и вообще похожа на детектив, всем рекомендую 💁♂️
Статья
LongNet: Scaling Transformers to 1,000,000,000 Tokens (by Microsoft)
Тут придумали новый sparse attention, который позволил обучить трансформер с длиной контекста в МИЛЛИАРД токенов. А ведь совсем недавно мы считали, что 256к — это много 😂
На самом деле, тут нет ничего хитрого или супер нового, всего-лишь dilated attention, который экспоненциально расширяется с увеличением длины текста, причём для каждой головы внимания добавляется свой сдвиг окна. Это позволило получить честную линейную сложность внимания (см. график). Но самое главное — авторы показали, что такое увеличение длины контекста действительно помогает и приводит к снижению перплексии.
Статья
Тут придумали новый sparse attention, который позволил обучить трансформер с длиной контекста в МИЛЛИАРД токенов. А ведь совсем недавно мы считали, что 256к — это много 😂
На самом деле, тут нет ничего хитрого или супер нового, всего-лишь dilated attention, который экспоненциально расширяется с увеличением длины текста, причём для каждой головы внимания добавляется свой сдвиг окна. Это позволило получить честную линейную сложность внимания (см. график). Но самое главное — авторы показали, что такое увеличение длины контекста действительно помогает и приводит к снижению перплексии.
Статья
ChatGPT Fails on Simple Questions (by Skoltech & Me)
Есть такой старенький бенчмарк с простыми вопросами по википедии (так и называется Simple Questions), и, оказывается, ChatGPT с ним справляется очень плохо, даже хуже, чем GPT-3. А лучший результат вообще достигается решением с эмбеддингами графов знаний (BERT + PTBG).
Похоже, всё дело в том, что RLHF вынуждает модель отказываться от ответа, если она в нём не уверена. А GPT-3 просто тычет пальцем в небо и часто угадывает.
Статья, GitHub
Есть такой старенький бенчмарк с простыми вопросами по википедии (так и называется Simple Questions), и, оказывается, ChatGPT с ним справляется очень плохо, даже хуже, чем GPT-3. А лучший результат вообще достигается решением с эмбеддингами графов знаний (BERT + PTBG).
Похоже, всё дело в том, что RLHF вынуждает модель отказываться от ответа, если она в нём не уверена. А GPT-3 просто тычет пальцем в небо и часто угадывает.
Статья, GitHub
LLaMa-2: лучшая опенсорсная языковая модель (by Meta)
Авторы обновили обучающий датасет, сделав его чище и больше (2T токенов), добавили более быстрый grouped-query attention, удлинили контекст до 4k токенов и учили в несколько этапов: pretraining, supervised fine-tuning, RLHF.
Из интересных наблюдений — RL не просто портит калибровку вероятностей (что первыми заметили openAI), а на самом деле корректирует температуру, балансируя между фактологической точностью и креативностью, в зависимости от промпта.
Статья, GitHub, HuggingFace
Авторы обновили обучающий датасет, сделав его чище и больше (2T токенов), добавили более быстрый grouped-query attention, удлинили контекст до 4k токенов и учили в несколько этапов: pretraining, supervised fine-tuning, RLHF.
Из интересных наблюдений — RL не просто портит калибровку вероятностей (что первыми заметили openAI), а на самом деле корректирует температуру, балансируя между фактологической точностью и креативностью, в зависимости от промпта.
Статья, GitHub, HuggingFace
Forwarded from Градиент обреченный (Sergei Averkiev)
🔺 ruGPT-3.5. Открытая русскоязычная LLM от Сбера
Друзья, мы выложили в open source нашу языковую модель (pretrain), на основе которой обучали GigaChat!
🔸 Претрейн довольно большой — 13B (13 миллиардов параметров). Модель видела много разнообразного текста (книги, статьи, чаты и т.д.), в основном на русском языке, а также на английском (около10%). Дополнительно дообучали на коде.
🔸 ruGPT-3.5 13B можно дообучать на инструктивных датасетах и получать свои версии ChatGPT, которые бы хорошо понимали русский язык.
🔸 Решили выложить с открытой лицензией (MIT), так что каких-либо ограничений в этом плане в отличии от LLaMA нет.
Написали небольшой пост про это, прошу поддержать, кому интересно.
👉 Хабр | Hugging Face
Друзья, мы выложили в open source нашу языковую модель (pretrain), на основе которой обучали GigaChat!
🔸 Претрейн довольно большой — 13B (13 миллиардов параметров). Модель видела много разнообразного текста (книги, статьи, чаты и т.д.), в основном на русском языке, а также на английском (около10%). Дополнительно дообучали на коде.
🔸 ruGPT-3.5 13B можно дообучать на инструктивных датасетах и получать свои версии ChatGPT, которые бы хорошо понимали русский язык.
🔸 Решили выложить с открытой лицензией (MIT), так что каких-либо ограничений в этом плане в отличии от LLaMA нет.
Написали небольшой пост про это, прошу поддержать, кому интересно.
👉 Хабр | Hugging Face
Универсальные адверсариал атаки на LLM (by Carnegie Mellon)
Авторы предложили рабочий способ атаки закрытых языковых моделей — у них получилось заставить их выдать рецепты бомб и алгоритм уничтожения человечества с одной и той же текстовой инъекцией в промпт. Оказалось, что уязвимости у открытых моделей (LLaMa, Vicuna) и закрытых (ChatGPT, Bard) совпадают, предположительно, из-за пересечения обучающих данных. То есть, атакуя в режиме whitebox опенсорсные модели, можно получить универсальные инъекции для blackbox систем!
Идея атаки довольно простая — нужно взять открытую модель (Vicuna) и применить Greedy Coordinate Gradient алгоритм (умный перебор) для поиска инъекции в промпт, которая заставляет модель начинать свой ответ со слов
P.S. Примеры из статьи уже заблокировали в OpenAI, но никто не мешает сгенерировать новые 💁♂️
Статья, GitHub
Авторы предложили рабочий способ атаки закрытых языковых моделей — у них получилось заставить их выдать рецепты бомб и алгоритм уничтожения человечества с одной и той же текстовой инъекцией в промпт. Оказалось, что уязвимости у открытых моделей (LLaMa, Vicuna) и закрытых (ChatGPT, Bard) совпадают, предположительно, из-за пересечения обучающих данных. То есть, атакуя в режиме whitebox опенсорсные модели, можно получить универсальные инъекции для blackbox систем!
Идея атаки довольно простая — нужно взять открытую модель (Vicuna) и применить Greedy Coordinate Gradient алгоритм (умный перебор) для поиска инъекции в промпт, которая заставляет модель начинать свой ответ со слов
"Sure, here is how to"
. И вуаля! Данная атака работает в т.ч. для ChatGPT, Claude, Bard etc. P.S. Примеры из статьи уже заблокировали в OpenAI, но никто не мешает сгенерировать новые 💁♂️
Статья, GitHub
CausalLM is not optimal for in-context learning (by Google)
Довольно претенциозная статья про недостатки causal attention и, следовательно, превосходство PaLM над GPT.
Авторам удалось экспериментально и теоретически показать, что префиксные языковые модели (T5, PaLM, UL-2) лучше понимают few-shot демонстрации и даже могут находить оптимальное (по MSE) решение задач регрессии, в отличие от каузальных языковых моделей (GPT, LLaMa). Похоже, что треугольное маскирование внимания (causal attention) сильно ограничивает сложность операций с внутренними представлениями.
Статья
Довольно претенциозная статья про недостатки causal attention и, следовательно, превосходство PaLM над GPT.
Авторам удалось экспериментально и теоретически показать, что префиксные языковые модели (T5, PaLM, UL-2) лучше понимают few-shot демонстрации и даже могут находить оптимальное (по MSE) решение задач регрессии, в отличие от каузальных языковых моделей (GPT, LLaMa). Похоже, что треугольное маскирование внимания (causal attention) сильно ограничивает сложность операций с внутренними представлениями.
Статья
Qwen-VL: вероятно лучшая мультимодальная языковая модель (by Alibaba)
Мало того, что по текстовым метрикам Qwen-7b превосходит LlaMa2-13b, так ещё и картинки теперь понимает!
Правда архитектурно ничего нового тут нет:
По точности она бьёт всё, что было до неё, причём с запасом (см. картинку). Модель обучается в 3 этапа: сначала размораживаются ViT и адаптер, затем размораживается LLM, а в конце тюнится одна только LLM (уже на самых чистых диалогах). Модель получилась мультиязычной, поэтому русский язык она тоже понимает.
Статья, GitHub
Мало того, что по текстовым метрикам Qwen-7b превосходит LlaMa2-13b, так ещё и картинки теперь понимает!
Правда архитектурно ничего нового тут нет:
ViT-G + однослойный Q-former + LLMИзображения сжимаются в 256 эмбеддингов, которые идут прямо в контекст языковой модели (как во FROMAGe). Дополнительно Qwen-VL умеет в object detection — bbox'ы подаются и генерируются как обычный текст.
По точности она бьёт всё, что было до неё, причём с запасом (см. картинку). Модель обучается в 3 этапа: сначала размораживаются ViT и адаптер, затем размораживается LLM, а в конце тюнится одна только LLM (уже на самых чистых диалогах). Модель получилась мультиязычной, поэтому русский язык она тоже понимает.
Статья, GitHub