Интересное что-то
517 subscribers
2.72K photos
253 videos
139 files
4.52K links
Материалы и мысли, понадерганные отовсюду
Блог: https://t.me/asisakov_channel
Чат: https://t.me/youknowds_chat
Download Telegram
Forwarded from КПД
Scale-wise Distillation of Diffusion Models
[Статья] [Демка] [Код soon]

Введение

Диффузионные модели на протяжении последних несколько лет удерживают пальму первенства среди семейств генеративных моделей во многих приложениях. Однако их фундаментальным ограничением является многошаговое сэмплирование, из-за чего генерация занимает много времени.

Научное сообщество предложило вагон и маленькую тележку различных процедур дистилляции многошаговых моделей в малошаговые. Но при приближении количества шагов к 1-му качество неизбежно просаживается даже для самых продвинутых подходов.

Отсюда мысль 🤔 - а что если ускорить генерацию за счет удешевления шагов сэмплирования?

Мы с коллегами из Yandex Research предложили метод дистилляции в несколько-шаговую генерацию, где разрешение изображения увеличивается постепенно, на каждом шаге генерации (SwD). За счет этого удается достичь более чем 2х кратного ускорения по сравнению с эквивалентной дистилляцией в фиксированном разрешении.
Forwarded from КПД
Метод

На первых шагах расшумления изображение представляет собой почти полный шум, где сложно что-либо различить, а не последних - почти сформированную картинку. Ранее была установлена связь между спектральной авторегрессией и процессом диффузии - первые шаги соответствуют низким частотам, а в самом конце формируются высокие частоты. То есть вначале мелкие и тонкие детали все равно неразличимы поверх шума.

Можно попробовать генерировать сначала в низком разрешении, а потом постепенно повышать интерполяцией. Но как 🤔?

Исходная модель может быть не адаптирована под малогашовую генерацию (SDXL в 256x256 выдает безумный поп-арт на любой запрос), да и процедура интерполяции зашумленного латента плохо определена. Наивный upsampling латентов приводит к сильные дефектам. Несколько лучше работает upsampling x0 оценки из предсказанного латента с последующим зашумлением назад, но все равно не здорово.

Потому дообучение неизбежно. При этом дистиллированные модели выполняют две роли одновременно - уменьшение количества шагов сэмплирования и super-resolution в латентном пространстве.

В качестве основы для процедуры дистилляции берется DMD2 как все еще state-of-the-art метод дистилляции. Дополнительно к нему навешивается предложенный Patch Distribution Matching (PDM) лосс, который стремится уравнять прогнанные через исходную диффузионную модель генерации модели-учителя и студента на уровне отдельных токенов.

Итоговый лосс содержит в себе:
🎯обратную KL-дивергенцию
🎯GAN лосс
🎯PDM лосс

В качестве данных для обучения используется синтетика, сгенерированная моделью-учителем (примерно 500к сэмплов).
#database #interview

Варианты партиционирования и секционирования таблиц и какой способ при каких обстоятельствах лично я бы выбирал

Какие индексы могут применяться в секционировании таблиц (два типа всего) и чем отличаются, какие преимущества

Виды физических соединений и чем отличаются Merge Join от Hash Join. Когда что использовать.

Чем отличается нативный динамический sql от какого-то ещё динамического типа. Когда какой применять.

В чем отличие использования пакетов с функциями и процедурами от обычных процедур и функций.

Функция пайплайна и её особенности, назначения.

В целом назвать отличия конвейерной функции от скалярного чего-то там.

Отличия коллекции от массива данных (это в Oracle pl/sql)
Forwarded from Никита ©️
Варианты партиционирования и секционирования таблиц и какой способ при каких обстоятельствах лично я бы выбирал

Какие индексы могут применяться в секционировании таблиц (два типа всего) и чем отличаются, какие преимущества

Виды физических соединений и чем отличаются Merge Join от Hash Join. Когда что использовать.

Чем отличается нативный динамический sql от какого-то ещё динамического типа. Когда какой применять.

В чем отличие использования пакетов с функциями и процедурами от обычных процедур и функций.

Функция пайплайна и её особенности, назначения.

В целом назвать отличия конвейерной функции от скалярного чего-то там.

Отличия коллекции от массива данных (это в Oracle pl/sql)
Алгоритмическое собеседование в Data Science | симметрия деревьев | поиск кратчайшего пути | BFS

Алгоритмы стали базой для собеседований по Data Science, поэтому к ним точно нужно быть готовым, чтобы получить большой и жирный оффер 😘

Поэтому сегодня разбираем задачи с собеседований, которые задают в Российском бигтехе:
- симметрия деревьев , рекурсия
- поиск кратчайшего пути , BFS , поиск в ширину
- оценка сложности алгоритма по времени и по памяти

Новый дроп смотрим здесь 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
Жестко понимаем базу Classic ML на картинках

Я расцелую ноги, руки, пальцы ног и даже пальцы рук тому человеку, который сделал mlu-explain 😍
Если ты посмотрел уже 5 лекций по деревьям, бустингу или другой теме по ML и всё равно ничего не понимаешь, то руки в ноги и бегом на этот сайт. Там настолько просто, понятно и интерактивно в иллюстрациях объясняют темы в ML, что даже самый прожжённый гуманитарий поймёт 🗣

Там есть множество тем, в который ты можешь покрутить разные гиперпараметры, чтобы понять, как работает алгоритм в ClassicML, также это всё заправляется стеной объяснения.

Сам по нему делаю видосы и кидаю своим ученикам на менторстве. Поэтому залетай и пойми же уже наконец градиентный бустинг 💃
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Sinекура
Сегодняшние лекции начались с MCMC-сэмплирования (Markov chain Monte Carlo); это один из главных инструментов приближённого вывода в сложных вероятностных моделях, очень красивая идея, которая известна как алгоритм Метрополиса-Гастингса. В детали вдаваться не буду, но любопытно, что придумали его физики ещё в 1953 году, в статье "Equation of State Calculations by Fast Computing Machines"; первым автором был действительно Николас Метрополис, а вот последним — Эдвард Теллер, тот самый, участник Манхэттенского проекта и отец водородной бомбы. Так что Метрополису (и позже обобщившему алгоритм Гастингсу) сильно повезло, что это не алгоритм "Теллера и каких-то ещё непонятных чуваков".

А во второй части показывал свой любимый пример из этой части курса: SIR-модели в эпидемиологии. Я сам узнал об этих моделях как раз когда ковид шагал по планете, и до сих пор в восторге от того, как там всё вместе сходится: глобальная EM-схема для обучения, стохастический алгоритм Витерби в скрытых марковских моделях для E-шага этой схемы, сэмплирование по Гиббсу для M-шага, а потом ещё как вишенка на торте при обучении появляется мини-EM в точности как в моём рейтинге спортивного ЧГК. И это я ещё рассказываю модель в упрощённом виде, с дискретными переходами, а так там по умолчанию всё в непрерывном времени происходит.

Полный восторг, в общем. Правда, к концу лекции компьютер мой не выдержал неизвестно чего, и в записи появились статтеры и целые небольшие участки в 5fps. Но вроде ничего страшного.

https://youtu.be/xOuUiPkXmw8
Forwarded from Sinекура
В последние год-два я рисовал картинки для лекций, постов и (obligatory self-promotion) книги "Машинное обучение: основы" локальными моделями, сначала разными версиями Stable Diffusion, а потом (и до сих пор) следующей итерацией диффузионных моделей — FLUX.1-dev; это очень крутая модель, лучше варианта из тех, что можно себе на десктоп поставить, я не знаю.

Пользовался именно локальными, потому что от порождающих моделей сложно с первого раза добиться того, что требуется, и я всегда генерировал десятки картинок и выбирал из них лучшие, а это не очень сходится ни с usage limits, которые обычно всё-таки есть, ни вообще с концепцией рисовать картинки в чате с моделью.

Но вот вчера OpenAI выкатил интерактивное рисование картинок в GPT-4o, и это для меня может быть game changer. Это то самое редактирование изображений промптами, которое, кажется, действительно хорошо работает и может менять стиль и добавлять детали в готовую картинку — а для иллюстраций ведь именно это и требуется!

Кстати, любопытно, что это авторегрессионное рисование, вот что пишут в system card (правда, деталей сверх этой одной фразы вроде нет нигде):

Unlike DALL·E, which operates as a diffusion model, 4o image generation is an autoregressive model natively embedded within ChatGPT.


Попробовал пока один пример, и хотя перерисовать фото с нестандартной композицией GPT-4o всё-таки не справился, если согласиться на более стандартную, всё получается замечательно. ChatGPT по-прежнему не позволяет расшаривать чаты с картинками, так что прилагаю сами картинки, а ниже запросы, которые к ним привели. Как видите, гуру промптинга быть совершенно не требуется (а для Stable Diffusion и FLUX всё-таки надо было что-то понимать). Нумерую запросы по порядку картинок в посте.

(1) [фото Майлза, приложил его к первому запросу]

(2) hi! can you redraw this photo in disney/pixar animation style while keeping the cat recognizable?

(3) wow, that's nice, thank you! and can you now do the same photo in a renaissance painting style?

(4) all right! and now please make the cat even fatter, Rubens style, and add a peacock feather to one of its paws while keeping the general oil painting style

(5) okay great but please return to the original composition, with the cat lying on its back upside down on a sofa; the fat and the feather are great, keep them; and also add a colorful beret on the cat's head

(6) [переприложил фото Майлза ещё раз]
nah, now the anatomy is wrong; let's start over

please redraw this photo with the same composition but as a Peter Paul Rubens painting, with the cat much fatter; also please add a peacock feather to one of the cat's paws and a colorful beret on its head
Forwarded from rizzearch
Cosmos World Foundation Model Platform for Physical AI

нвидиа в январе анонсировала Cosmos платформу для около фаундейшн-физикал-ворлд-модель суеты, сейчас у них дошли руки расписать, как они такое получили и что это в принципе из себя представляет

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

но на чем учить? хз, видимо другой опции как 10^8 + 10^7 клипов (для претрена и файнтюна соответственно) у авторов не было. а получили они их из 20 млн видосов разного качества (от 720р до 4к), сами же клипы получились долгим путем обработки

- scene segmentation
- фильтрация на движения, качество, отсутствие перекрывающего текста и тд
- аннотация при помощи VLM
- deduplication

по категориям - от вождения, человеческого движения и активности, nature dynamics до вида от первого лица, динамического движения камеры и тп. собрали все примерно сбалансированно

как в диффузии так и в decoder-only трансформерах для генерации видеокадров используют токенизаторы. ну и авторы в этом месте тоже выпускают свое семейство

- с дискретными токенами (на основе FSQ)
- и непрерывными (на основе ванильного автоэнкодера)
- при том везде в архитектурах есть вейвлет преобразование с темпоральными каузальными свертками и аттеншном

при том виды таких квантизаций, видимо, выбраны таким образом, чтобы не добавлять дополнительных слагаемых в финальный лосс при обучении моделей (ни кл терма например в случае VAE или коммитмент лосса в случае дефолтного VQ-VAE для непрерывного и дискретного случаев соответственно). а обучались эти токенизаторы на reconstruction loss + еще авторы добавили лоссы на optical flow & матрицу грама

для диффузии (помимо того что есть на картинках)

- непрерывные токены (хотя дискретные присутствуют и при обучении)
- не флоу матчинг, а диффьюжн скор (как из EDM) для DiT
- prompt upsampler
- mixed precision
- fsdp + context parallelism

декодер-онли трансформеры

- обучаемый softmax scaling factor
- z-loss как дополнительный терм чтобы логиты по магнитудам были не слишком большими
- tensor parallelism + sequence parallelism
- medusa на инференсе как вид спекулятивного декодинга

We train all of the WFM models reported in the paper using a cluster of 10,000 NVIDIA H100 GPUs in a time span of three months.

так же авторы еще пробовали файнтюнить

- под камера контрол, где надо генерить сцены в соответствии с дополнительным инпутом о положении камеры
- на роботику (кондишн на совершение действий)
- беспилотное вождение, где создают траекторию движения с 6 разными ракурсами (как будто камеры наклеены на настоящую тачку)

помимо метрик типа ошибки сэмпсона, LPIPS или 3д консистенси авторы еще решили прочекать как хорошо модели понимают физику (потому что вся вот эта космическая суета в принципе под эгидой Physical AI развивается) в сравнении и isaac sim в плане падения и движения предметов

пока авторы отмечают, что все так же присутствует проблема с физикой жидкости, гравитацией и светом в более широких сценариях (тут лучше ответить смогут кто непосредственно работает с видеогенерацией)

так же второй из трех подпроектов космоса основывается на этих моделях - Cosmos-Transfer1, где происходит sim2real генерация из разных модальностей (сегментация, карта глубины и edge maps) в видео реальности

👀 link, code