Подборка каналов
Ребята предложили залететь в подборку каналов, я согласился, потому что ребята — топ! Так что про всех понемногу:
• Захар — человеку 18 лет, а ведет один из немногих каналов по аудио и делает уже свой стартап
• Антон — руководитель OCR команды в яндексе и делает прикольные посты про то как быть руководителем (мне сейчас актуально)
• Дэнчик — легенда в 15 лет статья на А* делает офигенные модельки на аудио
• Андрей — уважаемый человек, прошли одну школу жизни МФТИ + Сколтех. Мне нравятся его лайфхаки
• Никиты — прикольный посты про систем дизайну и его путь в ML
• Коля — постит полезное, но в основном мемы (иногда и отдохнуть хочется).
• Дима — офигенно пишет про ML, есть подборка с материалами, а также пишет много про основы ML и системный дизайн, что я считаю важным знать, но самому уже не интересно про это писать :(
• Александр — придумал интересный для меня формат обзоров на посты других людей), что уже за гранью моего понимания, но думаю мега эффективным людям будет полезно
• Сергей Николенко — уважаемый человек, поднимал ML, еще когда я был ребёнком. Тут просто человеку респект.
Ребята предложили залететь в подборку каналов, я согласился, потому что ребята — топ! Так что про всех понемногу:
• Захар — человеку 18 лет, а ведет один из немногих каналов по аудио и делает уже свой стартап
• Антон — руководитель OCR команды в яндексе и делает прикольные посты про то как быть руководителем (мне сейчас актуально)
• Дэнчик — легенда в 15 лет статья на А* делает офигенные модельки на аудио
• Андрей — уважаемый человек, прошли одну школу жизни МФТИ + Сколтех. Мне нравятся его лайфхаки
• Никиты — прикольный посты про систем дизайну и его путь в ML
• Коля — постит полезное, но в основном мемы (иногда и отдохнуть хочется).
• Дима — офигенно пишет про ML, есть подборка с материалами, а также пишет много про основы ML и системный дизайн, что я считаю важным знать, но самому уже не интересно про это писать :(
• Александр — придумал интересный для меня формат обзоров на посты других людей), что уже за гранью моего понимания, но думаю мега эффективным людям будет полезно
• Сергей Николенко — уважаемый человек, поднимал ML, еще когда я был ребёнком. Тут просто человеку респект.
🔥9👍2 2🤯1
«Вы открываете изображения неправильно!»
В современных архитектурах машинного обучения загрузка изображений из файлов часто становится узким местом из-за ограничений CPU. Каждая миллисекунда на подготовку данных имеет значение, особенно при работе с большими датасетами и сложными моделями.
Я решил проверить эффективность стандартных инструментов и сравнил производительность Pytorch DataLoader с NVIDIA DALI — библиотекой, специально разработанной для ускорения загрузки и предварительной обработки изображений.
Результаты эксперимента:
• JPEG: За 10 эпох обработки 1000 изображений NVIDIA DALI справился за 4 секунды, в то время как Pytorch потребовал 55 секунд — разница более чем в 15 раз!
• PNG: Для изображений в формате PNG разница также заметна: 16 секунд против 55 секунд.
Код
Потыкаться в код можно тут
оставил в комментариях версию поста от MrBeast для более расслабленного чтения
В современных архитектурах машинного обучения загрузка изображений из файлов часто становится узким местом из-за ограничений CPU. Каждая миллисекунда на подготовку данных имеет значение, особенно при работе с большими датасетами и сложными моделями.
Я решил проверить эффективность стандартных инструментов и сравнил производительность Pytorch DataLoader с NVIDIA DALI — библиотекой, специально разработанной для ускорения загрузки и предварительной обработки изображений.
Результаты эксперимента:
• JPEG: За 10 эпох обработки 1000 изображений NVIDIA DALI справился за 4 секунды, в то время как Pytorch потребовал 55 секунд — разница более чем в 15 раз!
• PNG: Для изображений в формате PNG разница также заметна: 16 секунд против 55 секунд.
Код
Потыкаться в код можно тут
👍14🔥6
⚡️SageAttention — brand new attention
Flash Attention бустит классический attention по скорости, но что если я скажу, что можно еще быстрее, если правильно квантизовать Flash Attention. Sage Attention за счёт умной квантизации + понимании CUDA ускоряют Flash Attention 2 от 2x до 5x раз.
Небольшое введение в квантизацию.
Допустим, у нас есть матрица A, которую мы хотим перевести из формата FP16 в INT8. Для этого:
1. Сначала находим максимальное абсолютное значение элементов матрицы и вычисляем коэффициент скейлинга (scale factor):
δA = max(|A|) / 127
2. Делим исходную матрицу на этот коэффициент и округляем, получая матрицу низкой точности \hat{A} (например, INT8):
 = round(A / δA)
3. После вычислений в низкой точности (например, произведения матриц AB), получаем итоговый результат, снова умножая на коэффициенты скейлинга:
C ≈ (Â × B̂) × (δA × δB)
Здесь приведен простой пример квантизации — на самом деле, факторы скейлинга можно выбирать для каждой строчки отдельно, что улучшить качество за счёт бОльшего числа факторов. В статье SageAttention про это подробно рассказано, рекомендую ознакомиться.
Основной проблемой данного подхода является то, что могут возникать выбросы:
Например, если в исходной матрице A:
A = [0.1, 0.2, 0.15, 1000]
То коэффициент скейлинга будет:
δA = 1000 / 127 ≈ 7.87
И после квантизации получится:
A_quant = round(A / δA) = [0, 0, 0, 127]
Поэтому залог успешной квантизации, подумать головой и разобраться с выбросами, что и сделали в SageAttention.
Небольшое введение в формулы и погнали:
➤ P = Attention = Softmax(QK^T / \sqrt{d})
➤ V - value -> V* = PV
SageAttention:
➤ Переводим вычисление QK^T в INT8 и стабилизируем выбросы с помощью нормализации матрицы K (это стандартная техника для борьбы с выбросами, берите на вооружение!). Дополнительно оптимально подбираем стратегию квантизации, глядя на структуру самих матриц.
➤ Делаем фьюзинг (объединение) операций скейлинга и анскейлинга с соседними слоями.
➤ Вычисление PV делаем в FP16 — так стабильнее, потому что FP8 слишком сильно теряет точность.
SageAttention2:
➤ Современные GPU (например, Nvidia H100) поддерживают не только INT8, но и INT4. Поэтому теперь делаем квантизацию матриц Q и K в INT4, а также дополнительно нормализуем матрицу Q, чтобы не искажать итоговый результат attention.
➤ Реализуем глубокие CUDA-оптимизации. Например, оказывается, что масштабирование при квантизации можно параллельно применять сразу к элементам векторов по специальной формуле (каждый 8i + 2k + 1-й элемент). Жёсткая оптимизация на низком уровне GPU 🔥
➤ Вычисления PV делаем в FP8, так как теперь нашли способ стабилизировать результат при помощи двойной буферизации с FP32
SpargeAttention:
➤ FlashAttention работает с матрицами поблочно. Если какой-то блок attention заполнен нулями, то считать его нет смысла — результат не изменится.
➤ Авторы придумали механизм, как быстро находить и пропускать такие блоки на основе похожести матриц Q и K.
➤ Дополнительно, в процессе вычисления attention можно пропускать отдельные блоки, основываясь на пороге.
➤ Поверх этой разреженности используется подход из SageAttention2 (с INT4-квантизацией и CUDA-оптимизациями).
Результат
🔥 SageAttention уже быстрее, чем FlashAttention2 примерно в 2.1 раза (на RTX4090), а также на 2.7 раза быстрее xformers. При этом точность моделей практически не страдает.
🔥 SageAttention2 ускоряет attention примерно в 3 раза по сравнению с FlashAttention2 и в 4.5 раза быстрее xformers на RTX4090.
🔥 SpargeAttn ускоряет inference дополнительно, обеспечивая от 2.5 до 5 раз быстрее по сравнению с другими методами attention.
Как применить у себя.
Устанавливаем библиотеку и дальше делаем вот так
Flash Attention бустит классический attention по скорости, но что если я скажу, что можно еще быстрее, если правильно квантизовать Flash Attention. Sage Attention за счёт умной квантизации + понимании CUDA ускоряют Flash Attention 2 от 2x до 5x раз.
Небольшое введение в квантизацию.
1. Сначала находим максимальное абсолютное значение элементов матрицы и вычисляем коэффициент скейлинга (scale factor):
δA = max(|A|) / 127
2. Делим исходную матрицу на этот коэффициент и округляем, получая матрицу низкой точности \hat{A} (например, INT8):
 = round(A / δA)
3. После вычислений в низкой точности (например, произведения матриц AB), получаем итоговый результат, снова умножая на коэффициенты скейлинга:
C ≈ (Â × B̂) × (δA × δB)
Здесь приведен простой пример квантизации — на самом деле, факторы скейлинга можно выбирать для каждой строчки отдельно, что улучшить качество за счёт бОльшего числа факторов. В статье
Основной проблемой данного подхода является то, что могут возникать выбросы:
Например, если в исходной матрице A:
A = [0.1, 0.2, 0.15, 1000]
То коэффициент скейлинга будет:
δA = 1000 / 127 ≈ 7.87
И после квантизации получится:
A_quant = round(A / δA) = [0, 0, 0, 127]
Поэтому залог успешной квантизации, подумать головой и разобраться с выбросами, что и сделали в SageAttention.
Небольшое введение в формулы и погнали:
➤ P = Attention = Softmax(QK^T / \sqrt{d})
➤ V - value -> V* = PV
SageAttention:
➤ Переводим вычисление QK^T в INT8 и стабилизируем выбросы с помощью нормализации матрицы K (это стандартная техника для борьбы с выбросами, берите на вооружение!). Дополнительно оптимально подбираем стратегию квантизации, глядя на структуру самих матриц.
➤ Делаем фьюзинг (объединение) операций скейлинга и анскейлинга с соседними слоями.
➤ Вычисление PV делаем в FP16 — так стабильнее, потому что FP8 слишком сильно теряет точность.
SageAttention2:
➤ Современные GPU (например, Nvidia H100) поддерживают не только INT8, но и INT4. Поэтому теперь делаем квантизацию матриц Q и K в INT4, а также дополнительно нормализуем матрицу Q, чтобы не искажать итоговый результат attention.
➤ Реализуем глубокие CUDA-оптимизации. Например, оказывается, что масштабирование при квантизации можно параллельно применять сразу к элементам векторов по специальной формуле (каждый 8i + 2k + 1-й элемент). Жёсткая оптимизация на низком уровне GPU 🔥
➤ Вычисления PV делаем в FP8, так как теперь нашли способ стабилизировать результат при помощи двойной буферизации с FP32
SpargeAttention:
➤ FlashAttention работает с матрицами поблочно. Если какой-то блок attention заполнен нулями, то считать его нет смысла — результат не изменится.
➤ Авторы придумали механизм, как быстро находить и пропускать такие блоки на основе похожести матриц Q и K.
➤ Дополнительно, в процессе вычисления attention можно пропускать отдельные блоки, основываясь на пороге.
➤ Поверх этой разреженности используется подход из SageAttention2 (с INT4-квантизацией и CUDA-оптимизациями).
Результат
🔥 SageAttention уже быстрее, чем FlashAttention2 примерно в 2.1 раза (на RTX4090), а также на 2.7 раза быстрее xformers. При этом точность моделей практически не страдает.
🔥 SageAttention2 ускоряет attention примерно в 3 раза по сравнению с FlashAttention2 и в 4.5 раза быстрее xformers на RTX4090.
🔥 SpargeAttn ускоряет inference дополнительно, обеспечивая от 2.5 до 5 раз быстрее по сравнению с другими методами attention.
Как применить у себя.
Устанавливаем библиотеку и дальше делаем вот так
import torch.nn.functional as F
from sageattention import sageattn
F.scaled_dot_product_attention = sageattn
🔥13❤3
🛠 Опыт is a key to success
Последний год работы в стартапе сильно изменил моё отношение к тому, что такое опыт.
Раньше мне казалось, что опыт — это просто накопленные знания и навыки. Но теперь я вижу, что настоящая сила опыта в другом: это грамотное распределение ресурсов на долгосрочной перспективе.
Когда общался с автором xformers, он сказал, что одна из главных проблем стартапов (от себя добавлю, что и больших компаний в России) в гонке AI — понять, куда направить ресурсы. Вложиться в создание собственной технологии или подождать, когда кто-то другой выпустит уже готовое решение? И ответа на это нет, кроме одного — собственного опыта.
Опыт — это искусство принимать грамотные решения, чтобы не тратить самый ценный ресурс — время — впустую. Если идёшь не туда, ты не просто теряешь время сейчас, ты ещё и теряешь время, возвращаясь назад.
Самые дорогие ошибки — те, что происходят из-за недостатка опыта. Ты можешь даже не понять, что идёшь в тупик, пока не окажешься в начальной точке снова.
Что изменилось в моём подходе сейчас?
1️⃣ Я перестал гоняться за самыми крутыми решениями просто потому, что они крутые. Теперь для меня важно видеть общую картину. Я выбираю простоту и устойчивость, потому что за такими решениями будущее. Подумайте, какие решения обеспечат стабильность вашего проекта в будущем.
2️⃣ Опыт даёт возможность видеть картину целиком — именно поэтому опытные руководители бесценны. Ты можешь делать всё правильно в моменте, но без общей стратегии через пару лет всё просто развалится. Есть ли у вас человек, который может помочь вам своим опытом?
3️⃣ Если вам интересно узнать больше о грамотном принятии решений, рекомендую почитать вот этот пост. А также рекомендую самый простой способ начать собирать опыт — это набивать шишки и двигаться дальше самостоятельно. Не бойтесь экспериментировать и набираться опыта самостоятельно.
Последний год работы в стартапе сильно изменил моё отношение к тому, что такое опыт.
Раньше мне казалось, что опыт — это просто накопленные знания и навыки. Но теперь я вижу, что настоящая сила опыта в другом: это грамотное распределение ресурсов на долгосрочной перспективе.
Когда общался с автором xformers, он сказал, что одна из главных проблем стартапов (от себя добавлю, что и больших компаний в России) в гонке AI — понять, куда направить ресурсы. Вложиться в создание собственной технологии или подождать, когда кто-то другой выпустит уже готовое решение? И ответа на это нет, кроме одного — собственного опыта.
Опыт — это искусство принимать грамотные решения, чтобы не тратить самый ценный ресурс — время — впустую. Если идёшь не туда, ты не просто теряешь время сейчас, ты ещё и теряешь время, возвращаясь назад.
Самые дорогие ошибки — те, что происходят из-за недостатка опыта. Ты можешь даже не понять, что идёшь в тупик, пока не окажешься в начальной точке снова.
Что изменилось в моём подходе сейчас?
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥13❤1
o4-mini-high is AGI?
Короче, решил потестить o4-mini-high на проге. Это жесть.
‣ По сравнению с o3, намного быстрее скорость инференса, вообще не приходится ждать.
‣ C точки зрения идей и решений — мама дорогая. Я где-то пару недель спрашивал людей как ускорять модели, она выдала все идеи после одного запроса и сразу же имплементировала. Для меня взрыв мозга.
Конечно, если говорить о нишевых задачах — например, вырезание фона — тут всё ещё мимо: выдаёт фигню, потому что нужно реально видеть картинку и оценивать результат визуально. Но качество идей и решений — это просто взрыв мозга.
Я в комментах приложил сравнение: простая реализация vs. реализация после нескольких уточнений. Раньше, чтобы просто понять, как это сделать, ушло бы недели две. А теперь — один запрос, и всё готово.
Короче, решил потестить o4-mini-high на проге. Это жесть.
‣ По сравнению с o3, намного быстрее скорость инференса, вообще не приходится ждать.
‣ C точки зрения идей и решений — мама дорогая. Я где-то пару недель спрашивал людей как ускорять модели, она выдала все идеи после одного запроса и сразу же имплементировала. Для меня взрыв мозга.
Конечно, если говорить о нишевых задачах — например, вырезание фона — тут всё ещё мимо: выдаёт фигню, потому что нужно реально видеть картинку и оценивать результат визуально. Но качество идей и решений — это просто взрыв мозга.
Я в комментах приложил сравнение: простая реализация vs. реализация после нескольких уточнений. Раньше, чтобы просто понять, как это сделать, ушло бы недели две. А теперь — один запрос, и всё готово.
🔥5🗿1
Автоматизация контента в соцсетях
У меня всегда была идея, что круто писать на зарубежную аудиторию. Там и охваты выше, и расти можно быстрее, потому что международный рынок контента более конкурентный — сразу видно, работает твой контент или нет.
💡 Поэтому я решил выйти в открытый океан и попробовать писать туда. Но как человек ленивый, быстро понял, что самому что-то новое сочинять влом. Решил переписать свои старые посты. Потом стало влом и это — и я сделал бота, который сам конвертирует посты из телеги в формат для других соцсетей ( с переводом и форматированием).
С фидбэком от @fminxyz удалось довести первую версию до вменяемого состояния (пример на картинке это — https://t.me/fminxyz/30). Хотел уже выложить и дать всем попробовать, но Telegram внезапно выдал три бана на ботов и столько же раз выкинул из аккаунтов. Стало немного стрёмно.
Так что пока не выкладываю публично. Но если хочется потестить — просто скиньте ссылку на пост в личку, и я покажу, как он может выглядеть после конвертации. Пока что так, по-тихому 🙃.
P.S. В комментариях накинул еще примеров
У меня всегда была идея, что круто писать на зарубежную аудиторию. Там и охваты выше, и расти можно быстрее, потому что международный рынок контента более конкурентный — сразу видно, работает твой контент или нет.
💡 Поэтому я решил выйти в открытый океан и попробовать писать туда. Но как человек ленивый, быстро понял, что самому что-то новое сочинять влом. Решил переписать свои старые посты. Потом стало влом и это — и я сделал бота, который сам конвертирует посты из телеги в формат для других соцсетей ( с переводом и форматированием).
С фидбэком от @fminxyz удалось довести первую версию до вменяемого состояния (пример на картинке это — https://t.me/fminxyz/30). Хотел уже выложить и дать всем попробовать, но Telegram внезапно выдал три бана на ботов и столько же раз выкинул из аккаунтов. Стало немного стрёмно.
Так что пока не выкладываю публично. Но если хочется потестить — просто скиньте ссылку на пост в личку, и я покажу, как он может выглядеть после конвертации. Пока что так, по-тихому 🙃.
P.S. В комментариях накинул еще примеров
🔥11
Создал агента для ответов на вопросы
В рамках своего вайб-кодинга я начал делать мини-демки, чтобы понять, какие полезные штуки можно собрать и параллельно своими действиями вдохновить людей создавать интересные вещи самостоятельно.
Сейчас на хайпе — агенты: те самые, которые должны решать за вас задачи, работать быстро и эффективно и вообще сильно упрощать жизнь.
В полноценную замену человека я пока не верю, но понимаю, что на API можно сделать много прикольных и реально полезных штук. Поэтому я провёл небольшой ресерч и пришёл к выводу:
Логика очень простая:
- собираешь базу знаний,
- делаешь по ней быстрый поиск,
- и вуаля — можно разгрузить себе голову от однотипных ответов.
Так как я техлид по курсу «Диффузионные модели», я решил в рамках курса собрать MVP-бота, который будет отвечать на вопросы по материалам. Результатом стал бот: https://t.me/ImpressiveNameBot
Пока это базовая версия, которая может отвечать на ваши вопросы по диффузионным моделям и помогать в сложных терминах, но следующим шагом планирую добавить память.
За основу взял LangChain (от которого потом отказался из-за хостинга), к которому подключил OpenAI API. Код тут:
Я планирую дальше развивать бота (основное, что хочется сделать это добавить ему память), и тут мне очень помог пост о том, как можно работать с векторными индексами в LLM.
Как появится свободное время, думаю, допилю бота, чтобы можно было использовать его не только как Q&A, но и как полноценного ассистента.
P.S. Если у вас есть идеи как улучшить бота / добавить супер RAG, то буду рад любой помощи!)
В рамках своего вайб-кодинга я начал делать мини-демки, чтобы понять, какие полезные штуки можно собрать и параллельно своими действиями вдохновить людей создавать интересные вещи самостоятельно.
Сейчас на хайпе — агенты: те самые, которые должны решать за вас задачи, работать быстро и эффективно и вообще сильно упрощать жизнь.
В полноценную замену человека я пока не верю, но понимаю, что на API можно сделать много прикольных и реально полезных штук. Поэтому я провёл небольшой ресерч и пришёл к выводу:
Самое простое и полезное применение агентов — это работа с большими материалами в формате Q&A.
Логика очень простая:
- собираешь базу знаний,
- делаешь по ней быстрый поиск,
- и вуаля — можно разгрузить себе голову от однотипных ответов.
Так как я техлид по курсу «Диффузионные модели», я решил в рамках курса собрать MVP-бота, который будет отвечать на вопросы по материалам. Результатом стал бот: https://t.me/ImpressiveNameBot
Пока это базовая версия, которая может отвечать на ваши вопросы по диффузионным моделям и помогать в сложных терминах, но следующим шагом планирую добавить память.
За основу взял LangChain (от которого потом отказался из-за хостинга), к которому подключил OpenAI API. Код тут:
Я планирую дальше развивать бота (основное, что хочется сделать это добавить ему память), и тут мне очень помог пост о том, как можно работать с векторными индексами в LLM.
Помимо памяти, на Канале Доброго Вани ещё можно прочитать про технологическое предпринимательство, разного уровня материалы для Data Science, хакатоны — и много чего другого.
Как появится свободное время, думаю, допилю бота, чтобы можно было использовать его не только как Q&A, но и как полноценного ассистента.
P.S. Если у вас есть идеи как улучшить бота / добавить супер RAG, то буду рад любой помощи!)
Langchain
LangChain provides the engineering platform and open source frameworks developers use to build, test, and deploy reliable AI agents.
Хочу рассказать про канал моего друга Саида.
Саид уже сделал одну из топовых моделей на HF, а сейчас полностью ушёл в работу над своим стартапом AnyAgent. Немного завидую — он выбрал идею и просто пошёл её делать — человек пошел за мечтой.
AnyAgent — это ассистент, через который можно обновить календарь, запланировать встречу или распланировать день. Я попробовал сам — понравилось, как он помогает с микроменеджментом, особенно с календарём. Это то, что обычно забивает голову. Сейчас продукт находится в стадии бета тестировании и активно двигается к тому, чтобы создать единый портал для вашей жизни!
Если интересно смотреть, как продукт строится с нуля, или просто хочется попробовать такого “джарвиса” — советую подписаться на канал Саида
Саид уже сделал одну из топовых моделей на HF, а сейчас полностью ушёл в работу над своим стартапом AnyAgent. Немного завидую — он выбрал идею и просто пошёл её делать — человек пошел за мечтой.
AnyAgent — это ассистент, через который можно обновить календарь, запланировать встречу или распланировать день. Я попробовал сам — понравилось, как он помогает с микроменеджментом, особенно с календарём. Это то, что обычно забивает голову. Сейчас продукт находится в стадии бета тестировании и активно двигается к тому, чтобы создать единый портал для вашей жизни!
Если интересно смотреть, как продукт строится с нуля, или просто хочется попробовать такого “джарвиса” — советую подписаться на канал Саида
10❤6🔥3
Пост знакомство
Я Андрей Филатов – Team Lead Gen AI CV в стартапе, занимаюсь применением генеративных моделей для создания визуального контента: создание изображений/видео, редактирования изображений/видео, создание персонализированных генераций.
В ML/DL уже более 6 лет – с момента стажировки в Тинькоффе в 2019 году, где работал почти по соседству с Олегом Тиньковым и сохранил пару историй о нём. Затем был EPFL (где публиковался на NeurIPS) и работа в команде Kandinsky Sber AI.
Параллельно мне нравится делиться знаниями. Вёл курсы в МФТИ (DL), в HSE/Sber/Сколтехе (CV), сейчас техлид курса по диффузионным моделям. А ещё иногда помогаю студентам с научным руководством.
Философия канала
ML-контент в телеграм часто повторяется поэтому моё желание писать на аутентичные темы, что внести вклад в общее ML знание русскоязычного коммунити. А с дальнейшим развитием вещать и на международную аудиторию
📌 Ключевая идея: объяснять сложное просто, писать аутентично.
Что можно найти в канале?
🔹 Гайдбуки :
• Диффузионные модели
• Видео-диффузионные модели
🔹 Выступления и подкасты:
• Генеративные аугментации, ещё один
• Подкаст про искусство и ИИ
🔹 Разбор интересных тем:
• Табличные данные в ML
• Робототехника + ML (совместно с @TimeEscaper, он пишет в своём канале)
• Kandinsky и важность синтетики
• Синтетические данные в ML
💡 Если вам интересно сотрудничество, нужно консультация или просто интересно пообщаться, то пишите сюда @anvilarth
Я Андрей Филатов – Team Lead Gen AI CV в стартапе, занимаюсь применением генеративных моделей для создания визуального контента: создание изображений/видео, редактирования изображений/видео, создание персонализированных генераций.
В ML/DL уже более 6 лет – с момента стажировки в Тинькоффе в 2019 году, где работал почти по соседству с Олегом Тиньковым и сохранил пару историй о нём. Затем был EPFL (где публиковался на NeurIPS) и работа в команде Kandinsky Sber AI.
Параллельно мне нравится делиться знаниями. Вёл курсы в МФТИ (DL), в HSE/Sber/Сколтехе (CV), сейчас техлид курса по диффузионным моделям. А ещё иногда помогаю студентам с научным руководством.
Философия канала
ML-контент в телеграм часто повторяется поэтому моё желание писать на аутентичные темы, что внести вклад в общее ML знание русскоязычного коммунити. А с дальнейшим развитием вещать и на международную аудиторию
📌 Ключевая идея: объяснять сложное просто, писать аутентично.
Что можно найти в канале?
🔹 Гайдбуки :
• Диффузионные модели
• Видео-диффузионные модели
🔹 Выступления и подкасты:
• Генеративные аугментации, ещё один
• Подкаст про искусство и ИИ
🔹 Разбор интересных тем:
• Табличные данные в ML
• Робототехника + ML (совместно с @TimeEscaper, он пишет в своём канале)
• Kandinsky и важность синтетики
• Синтетические данные в ML
💡 Если вам интересно сотрудничество, нужно консультация или просто интересно пообщаться, то пишите сюда @anvilarth
taskdiscovery.epfl.ch
Task Discovery: Finding the Tasks that Neural Networks Generalize on
Deformable Neural Radiance Fields creates free-viewpoint portraits (nerfies) from casually captured videos.
6❤45😎4 3 2
Awesome DL pinned «Пост знакомство Я Андрей Филатов – Team Lead Gen AI CV в стартапе, занимаюсь применением генеративных моделей для создания визуального контента: создание изображений/видео, редактирования изображений/видео, создание персонализированных генераций. В ML/DL…»
Пока я путешествую по разным странам и набираюсь опыта, у меня не всегда остаётся время писать в канал. Хотя идей накопилось немало — год назад я о многих из них даже не думал. Чтобы заполнить паузу и заодно набраться мотивации через новых подписчиков, решил поучаствовать в папке.
Я честно рекомендую ребят, которых приведу ниже — уделил время просмотру их контента:
- Тимлид и работа руками — про то, как совмещать управление и свои задачи от друга Сани, у которого еще есть офигенный канал про то как стать тимлидом.
- Коммуникация с бизнесом и умение говорить "НЕТ. Андрей круто рассказывает про то важно говорить, на желание построить космолёт.
- Путь Арины — Арина ведет канал уже долго и мне понравилось, что можно посмотреть на путь развитие в DS/ML человека, и найти себя в этом пути.
- Мотивация от Тани — Таня тоже рассказывает свой путь, но больше уделяет внимания внутренним переживаниям лично мне этого не хватает, часто контент это просто разбор статей+материалы, за которыми теряется реальный человек.
- Длинный опыт в DS — тут из подборки один из самых опытных челов. Тут вы узнаете больше про решение реальных кейсов и проблем. Мне такое часто помогает — я раньше писал, что 30 минутный разговор может спасти вам месяцы работы
Сама папка тут — уверен, каждому приглянётся хотя бы один канал.
А я продолжаю путешествовать 🚶♂️🌍
https://t.me/addlist/v5lLkN7LNPQ4MmJi
Я честно рекомендую ребят, которых приведу ниже — уделил время просмотру их контента:
- Тимлид и работа руками — про то, как совмещать управление и свои задачи от друга Сани, у которого еще есть офигенный канал про то как стать тимлидом.
- Коммуникация с бизнесом и умение говорить "НЕТ. Андрей круто рассказывает про то важно говорить, на желание построить космолёт.
- Путь Арины — Арина ведет канал уже долго и мне понравилось, что можно посмотреть на путь развитие в DS/ML человека, и найти себя в этом пути.
- Мотивация от Тани — Таня тоже рассказывает свой путь, но больше уделяет внимания внутренним переживаниям лично мне этого не хватает, часто контент это просто разбор статей+материалы, за которыми теряется реальный человек.
- Длинный опыт в DS — тут из подборки один из самых опытных челов. Тут вы узнаете больше про решение реальных кейсов и проблем. Мне такое часто помогает — я раньше писал, что 30 минутный разговор может спасти вам месяцы работы
Сама папка тут — уверен, каждому приглянётся хотя бы один канал.
А я продолжаю путешествовать 🚶♂️🌍
https://t.me/addlist/v5lLkN7LNPQ4MmJi
Telegram
DS/DA
Andrei Filatov invites you to add the folder “DS/DA”, which includes 16 chats.
❤14🔥10👏4🗿3😎3 2🆒1 1
Привет! Меня зовут Олег, я исследую, как оптимально скейлить языковые модели в Jülich Supercomputing Centre. Пока Андрей подзаряжается энергией для будущих постов, с его позволения поделюсь тут нашей новой работой — “Optimal Scaling Needs Optimal Norm”. Всем, кто задумывался о правильном тюнинге гиперпараметров — будет интересно!
Главная проблема в скейлинге — как подбирать гиперпараметры (learning rate, batch size и т.д.) на масштабе >1B параметров и >100B токенов, когда перебор брутфорсом уже не вариант. Известные подходы вроде muP и других параметризаций гарантируют оптимальность при скейлинге модели, но не объясняют, что делать при увеличении размера датасета — скажем, с 1B до 1T токенов. Эмпирические scaling laws (пример или наша прошлая работа) помогают, но теории объединяющей всё вместе пока не существует.
Мы подошли к этой проблеме со стороны norm-based optimization. Сейчас на хайпе Muon, который бьёт Adam, а в основе всего лежит теория Jeremy Bernstein (Modular Duality) — очень советую глянуть, это прям база. Также этот подход позволяет отслеживать эволюцию норм по слоям, и именно в них оказывается кроется секрет оптимального скейлинга!
С Scion (улучшенная версия Muon) мы показали: чтобы достичь оптимального скейлинга одновременно модели и(!) датасета, нужно удерживать веса на одном и том же manifold’е — то есть сохранять норму весов постоянной при любом масштабе. Кроме того, мы вывели, как оптимально подбирать batch size и learning rate в этом сэтапе, выпустили Distributed Scion для тренировки на множестве GPU + открыли логи 2000+ экспериментов.
В общем, всех инсайтов вкратце не описать, так что гляньте статью — буду рад обсудить идеи и услышать ваши мысли в комментах 😌
И апвоутните нас на Hugging Face! Было бы круто попасть в топ Daily Papers, мы уже очень близко 🚀
Главная проблема в скейлинге — как подбирать гиперпараметры (learning rate, batch size и т.д.) на масштабе >1B параметров и >100B токенов, когда перебор брутфорсом уже не вариант. Известные подходы вроде muP и других параметризаций гарантируют оптимальность при скейлинге модели, но не объясняют, что делать при увеличении размера датасета — скажем, с 1B до 1T токенов. Эмпирические scaling laws (пример или наша прошлая работа) помогают, но теории объединяющей всё вместе пока не существует.
Мы подошли к этой проблеме со стороны norm-based optimization. Сейчас на хайпе Muon, который бьёт Adam, а в основе всего лежит теория Jeremy Bernstein (Modular Duality) — очень советую глянуть, это прям база. Также этот подход позволяет отслеживать эволюцию норм по слоям, и именно в них оказывается кроется секрет оптимального скейлинга!
С Scion (улучшенная версия Muon) мы показали: чтобы достичь оптимального скейлинга одновременно модели и(!) датасета, нужно удерживать веса на одном и том же manifold’е — то есть сохранять норму весов постоянной при любом масштабе. Кроме того, мы вывели, как оптимально подбирать batch size и learning rate в этом сэтапе, выпустили Distributed Scion для тренировки на множестве GPU + открыли логи 2000+ экспериментов.
В общем, всех инсайтов вкратце не описать, так что гляньте статью — буду рад обсудить идеи и услышать ваши мысли в комментах 😌
И апвоутните нас на Hugging Face! Было бы круто попасть в топ Daily Papers, мы уже очень близко 🚀
arXiv.org
Optimal Scaling Needs Optimal Norm
Despite recent progress in optimal hyperparameter transfer under model and dataset scaling, no unifying explanatory principle has been established. Using the Scion optimizer, we discover that...
1🔥12❤1👏1
