A Visual Guide to Quantization
На днях Maarten Grootendorst опубликовал шикарный гайд по квантизации. В нём раскрывает темы:
• что такое квантизация и зачем она нужна
• symmetric vs asymmentric quantization
• post-training quantization
• quantization aware training
Всё это с качественными пояснениями и отличными визуализациями. Рекомендую почитать тем, кто давно хотел разобраться в квантизации, но не доходили руки. Или для того, чтобы обновить знания.
Link
#datascience
На днях Maarten Grootendorst опубликовал шикарный гайд по квантизации. В нём раскрывает темы:
• что такое квантизация и зачем она нужна
• symmetric vs asymmentric quantization
• post-training quantization
• quantization aware training
Всё это с качественными пояснениями и отличными визуализациями. Рекомендую почитать тем, кто давно хотел разобраться в квантизации, но не доходили руки. Или для того, чтобы обновить знания.
Link
#datascience
Maartengrootendorst
A Visual Guide to Quantization
Exploring memory-efficient techniques for LLMs
🔥10👍2❤1
torchchat: Accelerating Local LLM Inference on Laptop, Desktop and Mobile
Новая библиотека от разработчиков PyTorch - на этот раз для запуска LLM на ноутах, телефонах и десктопах.
https://pytorch.org/blog/torchchat-local-llm-inference/
#datascience
Новая библиотека от разработчиков PyTorch - на этот раз для запуска LLM на ноутах, телефонах и десктопах.
https://pytorch.org/blog/torchchat-local-llm-inference/
#datascience
🔥15👍1
Announcing the results of the inaugural AlgoPerf: Training Algorithms benchmark competition
Какое-то время назад объявили соревнование с целью найти алгоритмы тренировки, которые бы могли ускорять разные модели.
https://mlcommons.org/2024/08/mlc-algoperf-benchmark-competition/
"""The AlgoPerf: Training Algorithms benchmark evaluates the time training required for different training algorithms across multiple realistic deep learning workloads when running on a fixed hardware configuration.
Scoring involved over 4000 individual training runs across the 14 workloads used in the benchmark."""
Было два бенчмарка.
Первый - с возможностью external tuning. Победила команда с сабмитом "Distributed Shampoo" из Meta и Samsung AI.
Второй - чисто self-tuning. Из всех сабмитов только один побил бейзлайн - "Schedule Free AdamW" от Meta.
По факту это звучит довольно круто - оптимизатор, который можно успешно использовать без scheduler. [Код](https://github.com/facebookresearch/schedule_free) доступен. Дефолтная реализация на PyTorch, но есть и вариант на Jax.
#datascience
Какое-то время назад объявили соревнование с целью найти алгоритмы тренировки, которые бы могли ускорять разные модели.
https://mlcommons.org/2024/08/mlc-algoperf-benchmark-competition/
"""The AlgoPerf: Training Algorithms benchmark evaluates the time training required for different training algorithms across multiple realistic deep learning workloads when running on a fixed hardware configuration.
Scoring involved over 4000 individual training runs across the 14 workloads used in the benchmark."""
Было два бенчмарка.
Первый - с возможностью external tuning. Победила команда с сабмитом "Distributed Shampoo" из Meta и Samsung AI.
Второй - чисто self-tuning. Из всех сабмитов только один побил бейзлайн - "Schedule Free AdamW" от Meta.
По факту это звучит довольно круто - оптимизатор, который можно успешно использовать без scheduler. [Код](https://github.com/facebookresearch/schedule_free) доступен. Дефолтная реализация на PyTorch, но есть и вариант на Jax.
#datascience
🔥6❤2
Повседневные вещи в иностранных языках
При изучении иностранных языков, иногда забывается, что это процесс постоянный, а не что-то с чёткими границами. Бывает так, что легко можешь говорить на рабочие темы, болтать с незнакомцами о жизни, а потом спотыкаешься на том, что не можешь вспомнить, как называется какой-то очень простой объект.
Вчера на reddit я увидел такую забавную картинку. Соотношение между словами и уровнями не особо хорошее, но в целом даёт понимание сложности слов. На английском и испанском я не знал всего несколько слов, на немецком около четверти, на японском больше половины.
А насколько хорошо вы знаете эти слова?
#languages
При изучении иностранных языков, иногда забывается, что это процесс постоянный, а не что-то с чёткими границами. Бывает так, что легко можешь говорить на рабочие темы, болтать с незнакомцами о жизни, а потом спотыкаешься на том, что не можешь вспомнить, как называется какой-то очень простой объект.
Вчера на reddit я увидел такую забавную картинку. Соотношение между словами и уровнями не особо хорошее, но в целом даёт понимание сложности слов. На английском и испанском я не знал всего несколько слов, на немецком около четверти, на японском больше половины.
А насколько хорошо вы знаете эти слова?
#languages
👍6😁2🫡1
Diffusion Feedback Helps CLIP See Better
CLIP, при всех его достоинствах, имеет некоторые недостатки, включающие в себя плохое различение ориентации, количеств, цвета и структуры. Эти недостатки ограничивают возможности мультимодальных моделей, построенных на нём. Основная причина этого - такая информация отсутствует в оригинальном датасете для тренировки.
Авторы предлагают метод DIVA, использующий модель диффузии для оптимизации представлений CLIP без использования текста. DIVA улучшает производительность CLIP на MMVP-VLM на 3-7% и повышает эффективность мультимодальных моделей и моделей зрения в задачах multimodal understanding и сегментации. При этом качество zero-shot не страдает.
Выглядит просто и эффективно.
Paper link
Code link
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
CLIP, при всех его достоинствах, имеет некоторые недостатки, включающие в себя плохое различение ориентации, количеств, цвета и структуры. Эти недостатки ограничивают возможности мультимодальных моделей, построенных на нём. Основная причина этого - такая информация отсутствует в оригинальном датасете для тренировки.
Авторы предлагают метод DIVA, использующий модель диффузии для оптимизации представлений CLIP без использования текста. DIVA улучшает производительность CLIP на MMVP-VLM на 3-7% и повышает эффективность мультимодальных моделей и моделей зрения в задачах multimodal understanding и сегментации. При этом качество zero-shot не страдает.
Выглядит просто и эффективно.
Paper link
Code link
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
👍3🔥1
BRAG: High Performance RAG Model Trained in $25
Авторы знают толк в названиях :) Взяли пару вариантов Qwen2 и Llama-3 (+3.1), аккуратно подбирали датасеты (походу просто выбрали те, тренировка на которых давала лучшее качество на бенчмарках), дальше тюнили. Тренировали на 4 H100 один час.
https://themaximalists.substack.com/p/brag
#datascience
Авторы знают толк в названиях :) Взяли пару вариантов Qwen2 и Llama-3 (+3.1), аккуратно подбирали датасеты (походу просто выбрали те, тренировка на которых давала лучшее качество на бенчмарках), дальше тюнили. Тренировали на 4 H100 один час.
https://themaximalists.substack.com/p/brag
#datascience
Maximalists
Introducing BRAG: High Performance RAG Model Trained in $25
Cost effective family of SLMs(small language models)
😁4🔥2
Praise your GitHub vs Roast your GitHub
Люди делают прикольные вещи с помощью LLM-ок. Например, есть два противоположных сайта:
• https://github-roast.pages.dev/ - спарсит инфу о юзере с GitHub и устроит полный roast
• https://praise-me.fly.dev/ - тоже спарсит инфу, но похвалит. (работает намного медленнее)
Иногда получается вполне годно.
Люди делают прикольные вещи с помощью LLM-ок. Например, есть два противоположных сайта:
• https://github-roast.pages.dev/ - спарсит инфу о юзере с GitHub и устроит полный roast
• https://praise-me.fly.dev/ - тоже спарсит инфу, но похвалит. (работает намного медленнее)
Иногда получается вполне годно.
🔥4🤣4😁2
Ко мне тут обратились с просьбой - распространить информацию об новом опросе про текущее состояние ML/DS:
Ребята из DevCrowd впервые проводят большое исследование специалистов, работающих в направлениях DS/ML/AI:
• что входит в обязанности той или иной профессии
• какие навыки наиболее важны и каких знаний не хватает
• сколько зарабатывают специалисты в зависимости от опыта и грейда
• а так же полезные для развития каналы, курсы и книги
Проходите опрос, рассказывайте про ваш опыт и помогите сделать исследование максимально охватным. Его результаты появятся в открытом доступе в конце сентября, и помогут вам сравнить свои ожидания с рыночными, построить план своего развития, и просто понять, что происходит с индустрией!
👉Пройти опрос
Посмотреть другие исследования проекта
Ребята из DevCrowd впервые проводят большое исследование специалистов, работающих в направлениях DS/ML/AI:
• что входит в обязанности той или иной профессии
• какие навыки наиболее важны и каких знаний не хватает
• сколько зарабатывают специалисты в зависимости от опыта и грейда
• а так же полезные для развития каналы, курсы и книги
Проходите опрос, рассказывайте про ваш опыт и помогите сделать исследование максимально охватным. Его результаты появятся в открытом доступе в конце сентября, и помогут вам сравнить свои ожидания с рыночными, построить план своего развития, и просто понять, что происходит с индустрией!
👉Пройти опрос
Посмотреть другие исследования проекта
DevCrowd
Недушные рисерчи российского IT. Мы опросили уже 10000+ айтишников
👍5❤1
Karpathy: RLHF is just barely RL
Karpathy выкатил длинный твит с размышлениями о RLHF:
• RL - мощно, RLHF - не так мощно
• он приводит в пример AlphaGo - модель тренировалась с RL, и в итоге научилась обыгрывать людей. Если бы её тренировали на RLHF, то люди бы оценивали какое состояние доски или какая последовательность действий лучше - по факту модель, аппроксимировала бы среднее поведение людей. И это не смогло бы привести к модели, которая превосходила бы людей
• Причины две - "какой вариант тебе больше нравится" не всегда коррелирует с вариантом, который ведёт к победе в игре; и модель может поломаться на ранее невиданных вариантах
• Его в целом удивляет/впечатляет то, что RLHF работает - ибо по факту оптимизируется на правильное/лучшее решение, а которое больше нравится асессорам. И в целом модель может быстро научиться эксплойтить.
• При всем при этом, RLHF работает и является полезным. Как минимум потому, что людям не надо создавать вариант с нуля - они выбивают что-то из предложенного.
• И есть большой аргумент в пользу RLHF - использовать его для оценочных задач типа "хорошая ли шутка, хорошо ли суммаризирован текст" легко. А вот для RL не понятно, как дизайнить reward function.
И в целом он называет RLHF "vibe check" :)
Tweet
#datascience
Karpathy выкатил длинный твит с размышлениями о RLHF:
• RL - мощно, RLHF - не так мощно
• он приводит в пример AlphaGo - модель тренировалась с RL, и в итоге научилась обыгрывать людей. Если бы её тренировали на RLHF, то люди бы оценивали какое состояние доски или какая последовательность действий лучше - по факту модель, аппроксимировала бы среднее поведение людей. И это не смогло бы привести к модели, которая превосходила бы людей
• Причины две - "какой вариант тебе больше нравится" не всегда коррелирует с вариантом, который ведёт к победе в игре; и модель может поломаться на ранее невиданных вариантах
• Его в целом удивляет/впечатляет то, что RLHF работает - ибо по факту оптимизируется на правильное/лучшее решение, а которое больше нравится асессорам. И в целом модель может быстро научиться эксплойтить.
• При всем при этом, RLHF работает и является полезным. Как минимум потому, что людям не надо создавать вариант с нуля - они выбивают что-то из предложенного.
• И есть большой аргумент в пользу RLHF - использовать его для оценочных задач типа "хорошая ли шутка, хорошо ли суммаризирован текст" легко. А вот для RL не понятно, как дизайнить reward function.
И в целом он называет RLHF "vibe check" :)
Tweet
#datascience
🔥13👍1
Facial recognition to detect duplicate Captain accounts
Сегодня в корпоративном блоге моей компании опубликовали блогпост, который я начал писать два месяца назад о проекте, который был сделал в прошлом году (двигался так быстро, как мог).
По ссылке можно почитать официальный вариант. Если стиль или тон текста покажутся странными - не удивляйтесь, оригинальный текст переписывали два-три раза для соответствия корпоративным стандартам, не всегда с моего согласия :)
Суть такая - иногда капитаны (так называют водителей такси в Careem) создают больше одного аккаунта для фрода: создают новый аккаунт после блокировки прошлого, для получения бонусов или для других способов получения преимущества. Таких случаев не то чтобы много, но они есть.
Корпоративная риторика: мы любим и уважаем наших ценных капитанов, бывает что они случайно создают дополнительные аккаунты, но иногда это происходит злоумышленно.
В идеале это должно выявляться на стадии регистрации, но в некоторых странах проверки очень поверхностные, поэтому мошенники их легко проходят. Мы решили попробовать находить такие случаи с помощью face recognition - брать фото капитанов и сравнивать их для поисков похожих.
Сам подход довольно простой - собираем все фотографии капитанов (лежат у нас на S3), извлекаем эмбеддинги и сравниваем. Фоток было 2-3 миллиона. Для извлечения эмбеддингов я использовал либу face_recognition - можно использовать для коммерческих целей, работает шустро и достаточно хорошо. Эмбеддинги хранил и сравнивал с помощью Faiss-GPU. Индексирование и поиск топ-5 схожих эмбеддингов заняло около часа.
Были интересные фейлы модели - о них можно почитать в самой статье. Плюс, нужно было делать дополнительный пост-процессинг бизнес-правилами. Сложность добавляло то, что у нас очень не любят совершать ошибки в блокировках капитанов - поэтому требовали держать False Positives около нуля. После нескольких итераций обсуждений, в сумме заблокировали около 2к мошенников. Могли бы заблокировать на порядки больше - но никто не был готов делать ручные проверки, поэтому остановились на этом.
В прод для регулярных проверок не выкатывали по вышеописанной причине. И потом, через полгодика проверки при регистрации улучшили.
Для меня проект был довольно интересным, несмотря на то, что в чисто техническом смысле он был прост :) Из запоминающегося - некоторые мошенники брали свои фотки, вырезали лица и (явно в фотошопе) переносили их на яркий фон.
Ссылка
#datascience
Сегодня в корпоративном блоге моей компании опубликовали блогпост, который я начал писать два месяца назад о проекте, который был сделал в прошлом году (двигался так быстро, как мог).
По ссылке можно почитать официальный вариант. Если стиль или тон текста покажутся странными - не удивляйтесь, оригинальный текст переписывали два-три раза для соответствия корпоративным стандартам, не всегда с моего согласия :)
Суть такая - иногда капитаны (так называют водителей такси в Careem) создают больше одного аккаунта для фрода: создают новый аккаунт после блокировки прошлого, для получения бонусов или для других способов получения преимущества. Таких случаев не то чтобы много, но они есть.
Корпоративная риторика: мы любим и уважаем наших ценных капитанов, бывает что они случайно создают дополнительные аккаунты, но иногда это происходит злоумышленно.
В идеале это должно выявляться на стадии регистрации, но в некоторых странах проверки очень поверхностные, поэтому мошенники их легко проходят. Мы решили попробовать находить такие случаи с помощью face recognition - брать фото капитанов и сравнивать их для поисков похожих.
Сам подход довольно простой - собираем все фотографии капитанов (лежат у нас на S3), извлекаем эмбеддинги и сравниваем. Фоток было 2-3 миллиона. Для извлечения эмбеддингов я использовал либу face_recognition - можно использовать для коммерческих целей, работает шустро и достаточно хорошо. Эмбеддинги хранил и сравнивал с помощью Faiss-GPU. Индексирование и поиск топ-5 схожих эмбеддингов заняло около часа.
Были интересные фейлы модели - о них можно почитать в самой статье. Плюс, нужно было делать дополнительный пост-процессинг бизнес-правилами. Сложность добавляло то, что у нас очень не любят совершать ошибки в блокировках капитанов - поэтому требовали держать False Positives около нуля. После нескольких итераций обсуждений, в сумме заблокировали около 2к мошенников. Могли бы заблокировать на порядки больше - но никто не был готов делать ручные проверки, поэтому остановились на этом.
В прод для регулярных проверок не выкатывали по вышеописанной причине. И потом, через полгодика проверки при регистрации улучшили.
Для меня проект был довольно интересным, несмотря на то, что в чисто техническом смысле он был прост :) Из запоминающегося - некоторые мошенники брали свои фотки, вырезали лица и (явно в фотошопе) переносили их на яркий фон.
Ссылка
#datascience
GitHub
GitHub - ageitgey/face_recognition: The world's simplest facial recognition api for Python and the command line
The world's simplest facial recognition api for Python and the command line - ageitgey/face_recognition
👍9🔥4❤1😁1
Forwarded from Айра Монгуш — AI, tech & math (Aira)
нужна ваша помощь в опенсорс-переводе 🧑💻
так получилось, что машинный перевод с русского языка на другие далек от идеала, несмотря на очевидные прорывы в сфере перевода
то же касается переводов между другими неангл языками
для улучшения перевода между англ и ру, нам нужно за следующие пару недель добить датасет с переводами — хотим дальше успеть до обучить модельки и опубликовать статью в одном журнале
Давид запилил бота для перевода — а я прошу вас помочь с оценкой существующих переводов и улучшением качества
@crowd_translate_bot
будем благодарны за участие!💛
так получилось, что машинный перевод с русского языка на другие далек от идеала, несмотря на очевидные прорывы в сфере перевода
то же касается переводов между другими неангл языками
для улучшения перевода между англ и ру, нам нужно за следующие пару недель добить датасет с переводами — хотим дальше успеть до обучить модельки и опубликовать статью в одном журнале
Давид запилил бота для перевода — а я прошу вас помочь с оценкой существующих переводов и улучшением качества
@crowd_translate_bot
будем благодарны за участие!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🤡2
Wolf: Captioning Everything with a World Summarization Framework
Статья от NVIDIA с красочным названием WOrLd summarization Framework. Авторы задались вопросом "что может быть лучше, чем суммаризировать видео с помощью VLM?" и дали простой ответ - суммаризировать видео с помощью нескольких VLM!
Выглядит это так: вначале разбивают видео на кадры и просят одну модель суммаризировать кадры (подают текущий кадр и предыдущий caption). Потом просят GPT-4 суммаризировать все captions в один. Затем берут видео целиком и просят модель описать его. И, наконец, суммаризируют все вместе.
Получается, конечно, лучше, чем просто использовать одну модель. Дополнительно авторы выложили несколько датасетов и создали новый leaderboard, где их подход на первом месте.
Paper link
Leaderboard
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
Статья от NVIDIA с красочным названием WOrLd summarization Framework. Авторы задались вопросом "что может быть лучше, чем суммаризировать видео с помощью VLM?" и дали простой ответ - суммаризировать видео с помощью нескольких VLM!
Выглядит это так: вначале разбивают видео на кадры и просят одну модель суммаризировать кадры (подают текущий кадр и предыдущий caption). Потом просят GPT-4 суммаризировать все captions в один. Затем берут видео целиком и просят модель описать его. И, наконец, суммаризируют все вместе.
Получается, конечно, лучше, чем просто использовать одну модель. Дополнительно авторы выложили несколько датасетов и создали новый leaderboard, где их подход на первом месте.
Paper link
Leaderboard
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
👍3🔥1😁1
The AI Scientist: Fully Automated Scientific Discovery или буллшит
Несколько дней назад была опубликована громкая статья The AI Scientist: Towards Fully Automated Open-Ended Scientific Discovery, в которой авторы уверяют, что создали решение для автоматической генерации новых идей, написания кода, визуализации результатов и так далее.
В репозитории лежат 10 сгенеренных статей с кодом для них. Я решил прочитать их и сравнить с полноценными статьями, которые я читал ранее. Результаты не особо позитивные.
У меня есть три основных пункта критики:
• Все эти статьи сводятся к оптимизации гиперпараметров или архитектуры
• Предложенные подходы сравниваются только с бейзлайном - нет сравнения с подходами других авторов
• Пункт, связанный с предыдущим, - у всех этих статей список литературы состоит из 6-11 пунктов
Теперь сами статьи:
1. Accelerating Mathematical Insight: Boosting Grokking Through Strategic Data Augmentation Учат модель складывать, вычитать и делить числа. Экспериментируют с аугментациями типа вместо
2. Grokking Through Compression: Unveiling Sudden Generalization via Minimal Description Length Та же самая задача (складывать, вычитать и делить числа), добавили ещё датасет с пермутациями.
Хотят проверить когда может начаться grokking - идея в том, что он внезапно происходит при определенном MDL. По факту тренируют трансформер, вклад статьи - новая метрика: количество ненулевых весов модели после применения pruning threshold. И замеряют как эта метрика меняется во время тренировки.
3. Grokking Accelerated: Layer-wise Learning Rates for Transformer Generalization "Оказывается", если разным слоям трансформера поставить разный learning rate, это может улучшить метрики. На Kaggle, помнится, такие подходы использовали годы назад.
4. Unlocking Grokking: A Comparative Study of Weight Initialization Strategies in Transformer Models Сравнение стандартных подходов к инициализации весов сетки.
5. Adaptive Learning Rates for Transformers via Q-Learning Обновляют lr с помощью q-learning на основе валидационного лосса. Ну хоть датасеты взяли поинтереснее - shakespeare char, enwik8, text8.
6. StyleFusion: Adaptive Multi-style Generation in Character-Level Language Models Единственная статья, которая мне показалась интересной. Авторы хотят сделать стиль сгенерированного текста консистентным - чтобы он не менялся для разных кусков текста. Суть - просто после каждого слоя трансформера добавляют новый модуль и к обычному лоссу добавляют ошибку классификации стиля. Но по факту это подбор архитектуры. И вполне возможно, что в существующих статьях что-то подобное пробовали.
7. DualDiff: Enhancing Mode Capture in Low-dimensional Diffusion Models via Dual-expert Denoising Запускают эксперименты на 2D датасетах по генерации circle, moon, line - это прям несерьёзно (данные генерятся на sklearn). Это точно статья по подбору архитектуры - вместо тренировки одной диффузионной модели берут две (обе MLP + residual) и добавляют gating mechanism.
8. GAN-Enhanced Diffusion: Boosting Sample Quality and Diversity Если честно, не понял, что это было. Берут модель diffusion и добавляют GAN - типа тренируют на reconstruction + adversarial loss. Тот же синтетический датасет, что из прошлой статьи.
9. Multi-scale Grid Noise Adaptation: Enhancing Diffusion Models For Low-dimensional Data Экспериментируют с вариантами добавления шума - размерами 5х5 и 20х20.
10. DualScale Diffusion: Adaptive Feature Balancing for Low-Dimensional Generative Models По факту - добавили "local branch" - типа residual внутри сетки: мини-сетка, которая работает с upscaled images.
В общем, я ожидал хоть один серьёзный пример в сгенеренных статьях - и не увидел ни одного.
Справедливости ради стоит признать, что эксперименты с оптимизацией архитектуры - это тема многих статей. Но в них, хотя бы, сравнивают с другими подходами и используют нормальные датасеты.
#paperreview #datascience
Несколько дней назад была опубликована громкая статья The AI Scientist: Towards Fully Automated Open-Ended Scientific Discovery, в которой авторы уверяют, что создали решение для автоматической генерации новых идей, написания кода, визуализации результатов и так далее.
В репозитории лежат 10 сгенеренных статей с кодом для них. Я решил прочитать их и сравнить с полноценными статьями, которые я читал ранее. Результаты не особо позитивные.
У меня есть три основных пункта критики:
• Все эти статьи сводятся к оптимизации гиперпараметров или архитектуры
• Предложенные подходы сравниваются только с бейзлайном - нет сравнения с подходами других авторов
• Пункт, связанный с предыдущим, - у всех этих статей список литературы состоит из 6-11 пунктов
Теперь сами статьи:
1. Accelerating Mathematical Insight: Boosting Grokking Through Strategic Data Augmentation Учат модель складывать, вычитать и делить числа. Экспериментируют с аугментациями типа вместо
a + b сделать b + a или слегка изменить значения a, b = (self.p - a) % self.p, (self.p - b) % self.p2. Grokking Through Compression: Unveiling Sudden Generalization via Minimal Description Length Та же самая задача (складывать, вычитать и делить числа), добавили ещё датасет с пермутациями.
Хотят проверить когда может начаться grokking - идея в том, что он внезапно происходит при определенном MDL. По факту тренируют трансформер, вклад статьи - новая метрика: количество ненулевых весов модели после применения pruning threshold. И замеряют как эта метрика меняется во время тренировки.
3. Grokking Accelerated: Layer-wise Learning Rates for Transformer Generalization "Оказывается", если разным слоям трансформера поставить разный learning rate, это может улучшить метрики. На Kaggle, помнится, такие подходы использовали годы назад.
4. Unlocking Grokking: A Comparative Study of Weight Initialization Strategies in Transformer Models Сравнение стандартных подходов к инициализации весов сетки.
5. Adaptive Learning Rates for Transformers via Q-Learning Обновляют lr с помощью q-learning на основе валидационного лосса. Ну хоть датасеты взяли поинтереснее - shakespeare char, enwik8, text8.
6. StyleFusion: Adaptive Multi-style Generation in Character-Level Language Models Единственная статья, которая мне показалась интересной. Авторы хотят сделать стиль сгенерированного текста консистентным - чтобы он не менялся для разных кусков текста. Суть - просто после каждого слоя трансформера добавляют новый модуль и к обычному лоссу добавляют ошибку классификации стиля. Но по факту это подбор архитектуры. И вполне возможно, что в существующих статьях что-то подобное пробовали.
7. DualDiff: Enhancing Mode Capture in Low-dimensional Diffusion Models via Dual-expert Denoising Запускают эксперименты на 2D датасетах по генерации circle, moon, line - это прям несерьёзно (данные генерятся на sklearn). Это точно статья по подбору архитектуры - вместо тренировки одной диффузионной модели берут две (обе MLP + residual) и добавляют gating mechanism.
8. GAN-Enhanced Diffusion: Boosting Sample Quality and Diversity Если честно, не понял, что это было. Берут модель diffusion и добавляют GAN - типа тренируют на reconstruction + adversarial loss. Тот же синтетический датасет, что из прошлой статьи.
9. Multi-scale Grid Noise Adaptation: Enhancing Diffusion Models For Low-dimensional Data Экспериментируют с вариантами добавления шума - размерами 5х5 и 20х20.
10. DualScale Diffusion: Adaptive Feature Balancing for Low-Dimensional Generative Models По факту - добавили "local branch" - типа residual внутри сетки: мини-сетка, которая работает с upscaled images.
В общем, я ожидал хоть один серьёзный пример в сгенеренных статьях - и не увидел ни одного.
Справедливости ради стоит признать, что эксперименты с оптимизацией архитектуры - это тема многих статей. Но в них, хотя бы, сравнивают с другими подходами и используют нормальные датасеты.
#paperreview #datascience
sakana.ai
Sakana AI
The AI Scientist: Towards Fully Automated Open-Ended Scientific Discovery
👍7🔥1
Winning Amazon KDD Cup24
В этот раз не совсем статья - это техническое описание победившего решения в соревновании от Amazon. Команда Kaggle грандмастеров от NVIDIA заняла в нём первое место. Надо было создать ассистента для онлайн-шоппинга с использованием LLM. Участникам предлагалось решить 57 задач 5 типов, разделённых на 4 трека.
Авторы использовали модель Qwen2-72B-Instruct, которую дообучили на собственном датасете, созданном с помощью публичных данных и синтетической генерации. Для борьбы с distribution shifts применили wise-ft; использовали несколько LoRA адаптеров, добавили Logits Processors для ограничения вывода модели. Для инференса сделали 4-bit quantization и использовали vLLM - ибо были ограничения на размер моделей и на продолжительности инференса.
Мне было любопытно, что сейчас используют в соревнованиях для подобных задач. В целом получилось ожидаемо - собрали огромный датасет (500к), усреднили 4 fine-tuned модели (кстати, тренировали 1 день на 8 A100), добавили постпроценнинг и прочие трюки и получили SOTA.
Paper link
Competition link
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
В этот раз не совсем статья - это техническое описание победившего решения в соревновании от Amazon. Команда Kaggle грандмастеров от NVIDIA заняла в нём первое место. Надо было создать ассистента для онлайн-шоппинга с использованием LLM. Участникам предлагалось решить 57 задач 5 типов, разделённых на 4 трека.
Авторы использовали модель Qwen2-72B-Instruct, которую дообучили на собственном датасете, созданном с помощью публичных данных и синтетической генерации. Для борьбы с distribution shifts применили wise-ft; использовали несколько LoRA адаптеров, добавили Logits Processors для ограничения вывода модели. Для инференса сделали 4-bit quantization и использовали vLLM - ибо были ограничения на размер моделей и на продолжительности инференса.
Мне было любопытно, что сейчас используют в соревнованиях для подобных задач. В целом получилось ожидаемо - собрали огромный датасет (500к), усреднили 4 fine-tuned модели (кстати, тренировали 1 день на 8 A100), добавили постпроценнинг и прочие трюки и получили SOTA.
Paper link
Competition link
Мои обзоры:
Personal blog
Medium
Linkedin Pulse
#paperreview
👍10🤯3🔥2
On the speed of ViTs and CNNs
Lucas Beyer опубликовал блогпост на тему сравнения скорости инференса ViT и CNN. Обсуждение в твиттере тут. Обычно говорят, что из-за attention трансформеры работают медленно, и он хотел показать, что это нет так. Код выложен. Кстати, он на PyTorch.
Сравнивал ConvNeXt-B, NFNet-F0, NFNet-F1 и ViT-B/16 из timm на рандомно сгенеренных тензорах.
Выводы: скорость вполне хорошая минимум до разрешения 1024х1024 (дальше не проверялось), а иногда ViT даже быстрее CNN.
Правда есть нюанс - Ross Wightman прокомментировал, что это во многом благодаря fused F.sdpa / flash attn - без этого скорость была бы намного ниже.
#datascience
Lucas Beyer опубликовал блогпост на тему сравнения скорости инференса ViT и CNN. Обсуждение в твиттере тут. Обычно говорят, что из-за attention трансформеры работают медленно, и он хотел показать, что это нет так. Код выложен. Кстати, он на PyTorch.
Сравнивал ConvNeXt-B, NFNet-F0, NFNet-F1 и ViT-B/16 из timm на рандомно сгенеренных тензорах.
Выводы: скорость вполне хорошая минимум до разрешения 1024х1024 (дальше не проверялось), а иногда ViT даже быстрее CNN.
Правда есть нюанс - Ross Wightman прокомментировал, что это во многом благодаря fused F.sdpa / flash attn - без этого скорость была бы намного ниже.
#datascience
50🔥3
https://x.com/Altimor/status/1825659507617460439
Эпичный пример фейла чат-ботов:
У компании нет видео-туториалов своего продукта.
Юзеры просят чат-бота дать ссылку на видео-туториал.
Чат-бот высылает ссылку на rickroll
Эпичный пример фейла чат-ботов:
У компании нет видео-туториалов своего продукта.
Юзеры просят чат-бота дать ссылку на видео-туториал.
Чат-бот высылает ссылку на rickroll
50😁26