Forwarded from Жёлтый AI
ICML День #2: Туториалы
(Прим. редакции – @vkurenkov ушел спать прежде чем выдал нам впечатления о втором дне, видимо очень устал тусить на ICML. Поэтому пост с запозданием. Он предупредил нас, что на третий день пойдет кутить на вечеринку WandB, поэтому третий день конференции тоже ждем завтра).
Основная часть конференции с постерными сессиями начинается завтра (самое интересное!), а сегодня был день туториалов. Это в целом мало чем отличается от первого дня, только вместо того, что приходят компании и рассказывают про то как они применяют крутые технологии у себя, тут приходят рисерчеры и инженеры и делают интро в какую-то конкретную хайповую технологию.
В этот раз были — RLHF от HuggingFace + доклад по сбору данных от Toloka AI; графовые нейронные сети на TensorFlow (туда я не пошел); последние достижения в теории нейронных сетей; и обучение agent-centric латентных репрезентаций динамики в RL’e (сюда я пошел).
Скажу честно, если хоть сколько-то читали про эти штуки, то на докладе будет турбо-скучно, потому что никаких деталей там особо не раскрывается, но из плюсов — можно задать сразу интересующие вопросы. Вот, например, что Nathan Lambert из HuggingFace рассказывал про RLHF:
(1) Модель награды не тренируют больше одной эпохи, потому что оно дико оверфитится.
(2) Существующие трюки из RL’я далеко не всегда переносятся на RLHF, поэтому выдумывают новые.
(3) Хороший бейзлайн — вместо PPO использовать Best-of-N или Rejection Sampling.
P.S. в нулевой день мне понравилось больше, там я постучал в гонг и увидел 5 морских черепах на берегу — лучше всяких RLHF 🤙️️
(Прим. редакции – @vkurenkov ушел спать прежде чем выдал нам впечатления о втором дне, видимо очень устал тусить на ICML. Поэтому пост с запозданием. Он предупредил нас, что на третий день пойдет кутить на вечеринку WandB, поэтому третий день конференции тоже ждем завтра).
Основная часть конференции с постерными сессиями начинается завтра (самое интересное!), а сегодня был день туториалов. Это в целом мало чем отличается от первого дня, только вместо того, что приходят компании и рассказывают про то как они применяют крутые технологии у себя, тут приходят рисерчеры и инженеры и делают интро в какую-то конкретную хайповую технологию.
В этот раз были — RLHF от HuggingFace + доклад по сбору данных от Toloka AI; графовые нейронные сети на TensorFlow (туда я не пошел); последние достижения в теории нейронных сетей; и обучение agent-centric латентных репрезентаций динамики в RL’e (сюда я пошел).
Скажу честно, если хоть сколько-то читали про эти штуки, то на докладе будет турбо-скучно, потому что никаких деталей там особо не раскрывается, но из плюсов — можно задать сразу интересующие вопросы. Вот, например, что Nathan Lambert из HuggingFace рассказывал про RLHF:
(1) Модель награды не тренируют больше одной эпохи, потому что оно дико оверфитится.
(2) Существующие трюки из RL’я далеко не всегда переносятся на RLHF, поэтому выдумывают новые.
(3) Хороший бейзлайн — вместо PPO использовать Best-of-N или Rejection Sampling.
P.S. в нулевой день мне понравилось больше, там я постучал в гонг и увидел 5 морских черепах на берегу — лучше всяких RLHF 🤙️️
👍8
Forwarded from ds girl
через неделю после релиза я полезла читать технический репорт по второй ламе 👍 много уже было сказано в первые 10 минут с момента ее публикации, но самое интересное кмк не осветили, а именно, как получилось завести рлхф в чатбот версии. в отличие от папиры OpenAI, где все легко и просто, у команды GenAI было примерно 5 версий RLHF с разными конфигурациями (под конец они как будто уже все, что можно закидывали в пайплайн лишь бы работало). мои заметки:
🥖 при сборе данных для reward модели было использовано несколько вариантов лламы с разными параметрами температуры. далее в репорте они также говорят, что на самом деле нет доказательств, что нужно семплить только от текущей модели, потенциально можно брать другие пригодные чекпоинты, а можно и открытые preference датасеты.
🥖 дополнительно в разметке preference датасета использовалась шкала, насколько ответ лучше (significantly, better, slightly, negligibly, unsure). из-за ее введения немного модифицировалась функция потерь для ранжирования - из награды за выбранный ответ вычитается награда отклоненного ответа (как обычно) и дополнительная погрешность в зависимости от близости этих ответов по шкале (большая погрешность для значительно разных ответов и маленькая для похожих).
🥖 reward модели на самом деле было две - Helpfulness и Safety. обучались они на разных данных, где-то могли быть пересечения (т. к. датасеты миксовались в разных пропорциях). далее результаты этих моделей объединялись
🥖 на этапе непосредственного RLHF использовали сразу два алгоритма - сначала Rejection Sampling, затем PPO. с помощью RS выбирали лучшего кандидата из K примеров, затем применяли РРО
🥖 как научить модель не забывать промпт (веди себя как …, отвечай только эмодзи и тд)? к уже имеющимся диалогам добавляем системный промпт в виде инструкции, как модель должна себя вести, к каждой реплике. затем с помощью полиси модели (из последнего шага RLHF) генерируем ответы, опять же, к каждой реплике. а теперь убираем системный промпт везде, кроме самого первого запроса пользователя. на всякий случай, дообучая модель в режиме sft, лосс на все предыдущие токены (включая системный промпт), кроме текущей реплики, зануляется. идея одолжена из context distillation и называется ghost attention
🥖 ну и самое важное, если не хотите часто упоминать своих конкурентов, ссылайтесь на них как closed-source models
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍3❤2
Неделя начинается с идей. Heroes of Might and Magic NLP.
Как-то после диалога в одном AI чатике, возникла мысля про насмотренность reward моделей.
В чем суть? Фишка в том, что количество качественных оценок preferences , т.е. размера сета для обучения reward не так уж и много. Всё-таки, это люди метят,а это дорого, долго, мало.
Возникает вопрос, а что делать если у фразы генерации есть несколько хороших парафраз которые reward не видел и не понимает, что в принципе такое возможно? На таких примерах для других хороших генераций мы будем получать рост ошибки, хотя по идее его и быть не должно.
Мне пришла идея (напишите в комментариях не huinэ ли это):
А давайте будем брать сразу для одного backbone сразу две головы. Одна будет учить preferences, а другая будет брать условные парафразы и в contrastive формате учить задачу сведения embeddings фраз с одним смыслом, разным написанием и разведением фраз про разное.
При этом этот же embeddings head от backbone наш reward берёт для принятия решения задачи ranking preferences. Т.е. у нас задача с двумя тасками и shared weights.
После обучения, мы откидываем голову парафразинга, а оставляем только reward. Т.к. это всё училось одновременно, то моделька теперь как SBERT или LaBSE понимает за то, что у нас бывают в языке фразы схожие по смыслу, но разные по написанию. Т.е. мы так работаем в ту самую насмотренность. Причём брать в качестве таких парафраз не обязательно именно генерации, достаточно брать general сеты а-ля SNLI, MNLI, XNLI. Но, конечно, если у вас есть возможность с генераций майнить норм парафразы надежные - ещё лучше.
Внизу разумеется накаляканная от руки схема.
Как-то после диалога в одном AI чатике, возникла мысля про насмотренность reward моделей.
В чем суть? Фишка в том, что количество качественных оценок preferences , т.е. размера сета для обучения reward не так уж и много. Всё-таки, это люди метят,а это дорого, долго, мало.
Возникает вопрос, а что делать если у фразы генерации есть несколько хороших парафраз которые reward не видел и не понимает, что в принципе такое возможно? На таких примерах для других хороших генераций мы будем получать рост ошибки, хотя по идее его и быть не должно.
Мне пришла идея (напишите в комментариях не huinэ ли это):
А давайте будем брать сразу для одного backbone сразу две головы. Одна будет учить preferences, а другая будет брать условные парафразы и в contrastive формате учить задачу сведения embeddings фраз с одним смыслом, разным написанием и разведением фраз про разное.
При этом этот же embeddings head от backbone наш reward берёт для принятия решения задачи ranking preferences. Т.е. у нас задача с двумя тасками и shared weights.
После обучения, мы откидываем голову парафразинга, а оставляем только reward. Т.к. это всё училось одновременно, то моделька теперь как SBERT или LaBSE понимает за то, что у нас бывают в языке фразы схожие по смыслу, но разные по написанию. Т.е. мы так работаем в ту самую насмотренность. Причём брать в качестве таких парафраз не обязательно именно генерации, достаточно брать general сеты а-ля SNLI, MNLI, XNLI. Но, конечно, если у вас есть возможность с генераций майнить норм парафразы надежные - ещё лучше.
Внизу разумеется накаляканная от руки схема.
👍9
Forwarded from MarksRemarks (Mark Baushenko)
This media is not supported in your browser
VIEW IN TELEGRAM
Кому знакомо?) Сам лично с таким сталкивался 😃
😁21💯6
Ничоси, а робототехники тут есть? 😳🦾🤖
UPD. Вот вам ещё ссылку https://t.me/tinkoffai/262?single
https://www.tinkoff.ru/about/news/03082023-scientists-from-tinkoff-research-have-discovered-algorithm-to-increase-learning-rate-artificial-intelligence-by-20-times/
UPD. Вот вам ещё ссылку https://t.me/tinkoffai/262?single
https://www.tinkoff.ru/about/news/03082023-scientists-from-tinkoff-research-have-discovered-algorithm-to-increase-learning-rate-artificial-intelligence-by-20-times/
Telegram
Жёлтый AI
🤡9🔥5🥴3❤2👍2👎2
Славный друже по ML/DL цеху пояснил на "пальцах" за text2image историю. Сам я , конечно, дальше CLIP туда не лазил, поэтому читаю и вам советую 👇
Forwarded from Love. Death. Transformers.
#чтивонаночь
Давно обещал разогнать про t2i, поэтому разбил текст на несколько частей.
почитать можно тут
Давно обещал разогнать про t2i, поэтому разбил текст на несколько частей.
почитать можно тут
Teletype
состояние t2i на aug23(1/X)
Дифузионки в их текущем виде существуют с нами около года, примерно в августе 22 года вышла Stable Diffusion 1.* и попала ко мне в руки...
❤10
Неделя начинается с побед.
Наши ребята: @qwertysobaka (мой падаван), @danasone. Затащили сорев по NLP от Альфы. На нашей модельке FRED-T5.
UPD. Не стоит забывать и тиммейта ребят @vadimirtlach, нашего подписчика.
Поздравляем! 🦾🤖🕺💃
P.S. если хотите создавать новые версии FRED-T5 или решения на их базе, пишите @DmitryZmitrovich или @nlpcoreteam.
Источник: https://t.me/kaggle_fucker/84
Сорев: https://ods.ai/competitions/nlp-receipts
Наши ребята: @qwertysobaka (мой падаван), @danasone. Затащили сорев по NLP от Альфы. На нашей модельке FRED-T5.
UPD. Не стоит забывать и тиммейта ребят @vadimirtlach, нашего подписчика.
Поздравляем! 🦾🤖🕺💃
P.S. если хотите создавать новые версии FRED-T5 или решения на их базе, пишите @DmitryZmitrovich или @nlpcoreteam.
Источник: https://t.me/kaggle_fucker/84
Сорев: https://ods.ai/competitions/nlp-receipts
🔥20👍5❤4🤡2
Други, @cointegrated, выпустил фикс+обновление encodechka теперь можно смело выбирать лучший энкодер для себя и бенчить свои.
Появился новый лидер multilingual-e5. Кстати, у нас тоже данная модель показывает топ результаты. Если говорить вкратце, me5 это LAbSE на максималках, особенности обучения:
- чистка всякого разного а-ля reddit, CCrwal, stackexchange и др.
- предобучение в контрастив режиме на CCPairs.
- файнтюн MS-MMARCO.
- за основу взята XLM-RoBERTA (с неё заинитили веса).
- меры качества конечно retrieval'ные.
P. S. Сори за душность, @cointegrated.
Про бенч тут: https://t.me/izolenta_mebiusa/252
Появился новый лидер multilingual-e5. Кстати, у нас тоже данная модель показывает топ результаты. Если говорить вкратце, me5 это LAbSE на максималках, особенности обучения:
- чистка всякого разного а-ля reddit, CCrwal, stackexchange и др.
- предобучение в контрастив режиме на CCPairs.
- файнтюн MS-MMARCO.
- за основу взята XLM-RoBERTA (с неё заинитили веса).
- меры качества конечно retrieval'ные.
P. S. Сори за душность, @cointegrated.
Про бенч тут: https://t.me/izolenta_mebiusa/252
GitHub
GitHub - avidale/encodechka: The tiniest sentence encoder for Russian language
The tiniest sentence encoder for Russian language. Contribute to avidale/encodechka development by creating an account on GitHub.
❤14❤🔥4
https://t.me/betterdatacommunity
Тут в better data community Илья Гусев читает лекцию про закат трансформеров!
Ребят прям сейчас!
Тут в better data community Илья Гусев читает лекцию про закат трансформеров!
Ребят прям сейчас!
Telegram
better data community
Сообщество фанатов градиентов
@maxalekv
Хочешь задать вопрос? Зайди на nometa.xyz и задавай сразу.
@maxalekv
Хочешь задать вопрос? Зайди на nometa.xyz и задавай сразу.
🔥5🤡1
Для тех, кто послушал доклад выше.
Конец transformersблизко киско
Спасибо @rybolos за идею, @bogdanisssimo за реализацию
Конец transformers
Спасибо @rybolos за идею, @bogdanisssimo за реализацию
😁22🤔2
Forwarded from Machinelearning
Family of fine-tuned and merged LLMs that achieves the strongest performance and currently stands at first place in HuggingFace's
Cемейство точно настроенных больших языковых моделей (LLM), которое достигло самой высокой производительности и в настоящее время занимает первое место в открытой таблице лидеров LLM HuggingFace на момент выхода этой статьи
Модель 13B Platypus может быть обучена на одном GPU A100 на 25 тыс. вопросов за 5 часов!
git clone https://github.com/lm-sys/FastChat.git
cd FastChatai_machinelearning_big_data
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🔥3👍2
Ночной сеанс NLP.
Всем доброй ночи. И в эту добрую ночь, хотел бы поделиться с моими подписчиками видео про LLM и векторные БД в виде ботса. А как мы знаем (или узнаем), если подружить между собой LLM и retrieval based векторные БД, можно улучшить качество генерации по open domain запросам. При этом лекция непростая и с непростым человеком. Знаю, что среди нас есть не только опытные MLщики в NLP,но и люди,желающие вкатиться в это направление и быть в курсе про новомодные ChatGPT и это всё. Именно таким ребятам будет полезно. Да и помимо интеллектуальной мотивации, думаю появится и другая.
Всем хорошего просмотра.
Спикер: Сергей Христолюбов
Контакты: @tom_leto
Видео: https://youtu.be/8IRKx3d7tZY
Всем доброй ночи. И в эту добрую ночь, хотел бы поделиться с моими подписчиками видео про LLM и векторные БД в виде ботса. А как мы знаем (или узнаем), если подружить между собой LLM и retrieval based векторные БД, можно улучшить качество генерации по open domain запросам. При этом лекция непростая и с непростым человеком. Знаю, что среди нас есть не только опытные MLщики в NLP,но и люди,желающие вкатиться в это направление и быть в курсе про новомодные ChatGPT и это всё. Именно таким ребятам будет полезно. Да и помимо интеллектуальной мотивации, думаю появится и другая.
Всем хорошего просмотра.
Спикер: Сергей Христолюбов
Контакты: @tom_leto
Видео: https://youtu.be/8IRKx3d7tZY
👍18❤🔥1🔥1👏1🆒1
Forwarded from Записки C3PO
Увидел в последнем посте Данилова ссылку на очень прикольный онлайн симулятор запуска A/B экспериментов и работы с приоритезацией беклога.
https://www.lukasvermeer.nl/confidence/
Можете попробовать применить правила управления экспериментами, про которые я рассказывал в недавнем цикле постов: 1, 2, 3.
https://www.lukasvermeer.nl/confidence/
Можете попробовать применить правила управления экспериментами, про которые я рассказывал в недавнем цикле постов: 1, 2, 3.
👍3
Улучшенный метод RL для выравнивания LLM от DeepMind.
Reinforced Self-Training (ReST): A Simple algorithm for Aligning LLMs with Human Preferences Inspired by Growing Batch.
Данный метод посвящён проблеме онлайн обучения, а именно требованиям к данным для этого.
ReST состоит из двух циклов:
1. Внутренний цикл (Improve) улучшает политику для данного набора данных.
2. Внешний круг (Grow) расширяет набор данных, беря образцы из самой последней политики.
Grow: Чтобы дополнить обучающий набор данных, для каждого сценария создаются многочисленные выходные прогнозы с использованием политики языковой модели. Improve: тут ранжируют и фильтруют обогащенный набор данных, используя формулу оценки. В качестве функции оценки в своих исследованиях они используют модель вознаграждения за обучение, основанную на предпочтениях людей. Отфильтрованный набор данных корректирует языковую модель, используя целевую функцию offline RL. При увеличении порога фильтрации процесс повторяется. После этого на следующем шаге Grow используется окончательная внешняя политика.
При этом, авторы выделяют возможность в каждом круге политик использовать разнообразные и главное различные losses.
Также, можно назвать ряд других преимуществ, по сравнению с classic RLHF:
• Поскольку новые обучающие данные отбираются из улучшенной политики на этапе Grow, качество политики не ограничено качеством исходного набора данных (в отличие от автономного RL).
• Легко проверить качество данных и потенциально диагностировать проблемы с согласованием, такие как взлом вознаграждения, поскольку этапы роста и улучшения не связаны.
В качестве примера REST+ LLM выбрана задача машинного перевода. Подробнее можно почитать в статье.
Reinforced Self-Training (ReST): A Simple algorithm for Aligning LLMs with Human Preferences Inspired by Growing Batch.
Данный метод посвящён проблеме онлайн обучения, а именно требованиям к данным для этого.
ReST состоит из двух циклов:
1. Внутренний цикл (Improve) улучшает политику для данного набора данных.
2. Внешний круг (Grow) расширяет набор данных, беря образцы из самой последней политики.
Grow: Чтобы дополнить обучающий набор данных, для каждого сценария создаются многочисленные выходные прогнозы с использованием политики языковой модели. Improve: тут ранжируют и фильтруют обогащенный набор данных, используя формулу оценки. В качестве функции оценки в своих исследованиях они используют модель вознаграждения за обучение, основанную на предпочтениях людей. Отфильтрованный набор данных корректирует языковую модель, используя целевую функцию offline RL. При увеличении порога фильтрации процесс повторяется. После этого на следующем шаге Grow используется окончательная внешняя политика.
При этом, авторы выделяют возможность в каждом круге политик использовать разнообразные и главное различные losses.
Также, можно назвать ряд других преимуществ, по сравнению с classic RLHF:
• Поскольку новые обучающие данные отбираются из улучшенной политики на этапе Grow, качество политики не ограничено качеством исходного набора данных (в отличие от автономного RL).
• Легко проверить качество данных и потенциально диагностировать проблемы с согласованием, такие как взлом вознаграждения, поскольку этапы роста и улучшения не связаны.
В качестве примера REST+ LLM выбрана задача машинного перевода. Подробнее можно почитать в статье.
👍7❤2