Forwarded from Ålexei Mαtusεvs𐌊i
Немного не к курсу, но тоже считаю полезным. Нашел крутой визуализатор для питона.
https://github.com/gaogaotiantian/viztracer
https://github.com/gaogaotiantian/viztracer
GitHub
GitHub - gaogaotiantian/viztracer: A debugging and profiling tool that can trace and visualize python code execution
A debugging and profiling tool that can trace and visualize python code execution - gaogaotiantian/viztracer
Forwarded from commit history
Как работают text2image модели и как получаются такие качественные изображения?
Короче, если кто-то хочет разобраться в работе text-to-image моделей (stable diffusion, dalle-2, midjourney) вот короткая подборка, в зависимости от вашего уровня знакомства c ML.
1. Простая интерактивная статья от WP. Как текст превращается в картинки и что такое диффузия? Статья подойдет всем.
2. Статья от Jay Alammar. Уже сложнее, надо понимать что такое embeddings, autoencoder, latent space, UNet. Зато подробные иллюстрации помогают понять архитектуру моделей и как происходит forward pass. А еще если вам больше нравится больше смотреть видео, чем читать статьи, там в конце список видео а-ля How does Stable Diffusion work?
3. Статья от Eugen Yan. Разбор основных идей, которые лежат в основе text-2-image. Плюс в конце есть ссылки на сами статьи, если кто-то захочет почитать сам. Вообще, Eugen Yan - крут. У него понятные разборы, которые сразу пачку статей покрывают + он автор репы https://github.com/eugeneyan/applied-ml.
Короче, если кто-то хочет разобраться в работе text-to-image моделей (stable diffusion, dalle-2, midjourney) вот короткая подборка, в зависимости от вашего уровня знакомства c ML.
1. Простая интерактивная статья от WP. Как текст превращается в картинки и что такое диффузия? Статья подойдет всем.
2. Статья от Jay Alammar. Уже сложнее, надо понимать что такое embeddings, autoencoder, latent space, UNet. Зато подробные иллюстрации помогают понять архитектуру моделей и как происходит forward pass. А еще если вам больше нравится больше смотреть видео, чем читать статьи, там в конце список видео а-ля How does Stable Diffusion work?
3. Статья от Eugen Yan. Разбор основных идей, которые лежат в основе text-2-image. Плюс в конце есть ссылки на сами статьи, если кто-то захочет почитать сам. Вообще, Eugen Yan - крут. У него понятные разборы, которые сразу пачку статей покрывают + он автор репы https://github.com/eugeneyan/applied-ml.
Forwarded from commit history
Если у вас совсем нет времени, но вы знакомы с терминологией, то вот вам основные идеи, которые лежат в основе моделей. Супер-краткий пересказ статьи Eugen Yan.
+ Diffusion – добавляем гауссовский шум к данным и учимся его предсказывать. На инференсе сэмплим изображение из рандомного шума. (По сути вычитаем шум которые предсказали.) Такие модели могут просто генерить изображения в стиле данных, на котором обучались.
Статья: Denoising Diffusion Probabilistic Models (DDPM; 2020)
+ Text conditioning – добавляем conditioning (опору на текст), чтобы управлять генерацией и получать изображения из текста.
Сначала в Contrastive Language-Image Pre-training (CLIP; 2021) научились сопоставлять изображения и тексты в одно семантическое пространство: вектор текста “щенок лабрадора” и вектор фото щенка лабрадора будут расположены близко. Потом в DALL·E (2021) токенизровали изображение, токенизировали текст и конкатенировали их, получая text_token_1, …, text_token_n, image_token_1, …, image_token_n. Все закинули в трансформер. На инференсе начинали с текстовых токенов и авторегрессионно предсказывали визуальные токены. В DALL·E 2 (aka unCLIP, 2022) использовали conditioning эмбеддинг из CLIP и авторегрессионный процесс из Dalle. Теперь из вектора текста еще предсказывается clip embedding, а потом происходит финальное декодирование в изображение. В Imagen (2022) энкодеры из CLIP заменили на T5 для текста и UNet для изображений. Там сначала генерируют изображение 64x64, а потом делают super-resolution в 1024x1024.
+ Classifier guidance – сильнее двигаем результат в сторону текста, считай управляем степенью влияния промта. В classifier-guidance paper (2021) добавили с определённым весом градиенты с классификатора обученного на шумном ImageNet, чтобы двигать изображение сильнее в сторону класса. Потом в classifier-free guidance (2021) реализовали conditional dropout, иногда заменяя текстовый Промт на Null токен. Изображение с промтом: guidance=1, без промта guidance=0. И теперь модель могла генерировать изображения с разной степенью conditioning (опоры на текст), управляя параметром guidance.
+ Latent space – шум добавляем не к пикселям изображений а к их эмбеддингам. На инференсе из шума сэмплим вектор, а потом декодируем его в изображение. Stable Diffusion (2021) Сначала векторизуем изображение, используя VAE. Потом удаляем шум из полученного вектора с помощью UNet и декодируем полученный вектор. В итоге Stable diffusion учиться и сэмплит быстрее, так как работает не с пикселями, а с сжатыми векторами.
+ Diffusion – добавляем гауссовский шум к данным и учимся его предсказывать. На инференсе сэмплим изображение из рандомного шума. (По сути вычитаем шум которые предсказали.) Такие модели могут просто генерить изображения в стиле данных, на котором обучались.
Статья: Denoising Diffusion Probabilistic Models (DDPM; 2020)
+ Text conditioning – добавляем conditioning (опору на текст), чтобы управлять генерацией и получать изображения из текста.
Сначала в Contrastive Language-Image Pre-training (CLIP; 2021) научились сопоставлять изображения и тексты в одно семантическое пространство: вектор текста “щенок лабрадора” и вектор фото щенка лабрадора будут расположены близко. Потом в DALL·E (2021) токенизровали изображение, токенизировали текст и конкатенировали их, получая text_token_1, …, text_token_n, image_token_1, …, image_token_n. Все закинули в трансформер. На инференсе начинали с текстовых токенов и авторегрессионно предсказывали визуальные токены. В DALL·E 2 (aka unCLIP, 2022) использовали conditioning эмбеддинг из CLIP и авторегрессионный процесс из Dalle. Теперь из вектора текста еще предсказывается clip embedding, а потом происходит финальное декодирование в изображение. В Imagen (2022) энкодеры из CLIP заменили на T5 для текста и UNet для изображений. Там сначала генерируют изображение 64x64, а потом делают super-resolution в 1024x1024.
+ Classifier guidance – сильнее двигаем результат в сторону текста, считай управляем степенью влияния промта. В classifier-guidance paper (2021) добавили с определённым весом градиенты с классификатора обученного на шумном ImageNet, чтобы двигать изображение сильнее в сторону класса. Потом в classifier-free guidance (2021) реализовали conditional dropout, иногда заменяя текстовый Промт на Null токен. Изображение с промтом: guidance=1, без промта guidance=0. И теперь модель могла генерировать изображения с разной степенью conditioning (опоры на текст), управляя параметром guidance.
+ Latent space – шум добавляем не к пикселям изображений а к их эмбеддингам. На инференсе из шума сэмплим вектор, а потом декодируем его в изображение. Stable Diffusion (2021) Сначала векторизуем изображение, используя VAE. Потом удаляем шум из полученного вектора с помощью UNet и декодируем полученный вектор. В итоге Stable diffusion учиться и сэмплит быстрее, так как работает не с пикселями, а с сжатыми векторами.
eugeneyan.com
Text-to-Image: Diffusion, Text Conditioning, Guidance, Latent Space
The fundamentals of text-to-image generation, relevant papers, and experimenting with DDPM.
Forwarded from DevFM
Behavior Driven Development
BDD — методология разработки "через поведение". Серия статей по BDD позволит достаточно глубоко разобраться в теме.
Для ознакомления с BDD можно прочесть первую статью. Во второй статье автор рассказывает про Gherkin Language — язык описания сценариев поведения. Далее в цикле статья с примерами написания сценариев и рекомендациями по написанию подобных сценариев.
У автора есть также более прикладная статья — применение BDD на питоне, где можно посмотреть практические аспекты.
А закончить стоит примером настоящего проекта, где применяется BDD. Ребята уже давно разрабатывают консольный task manager (пример BDD тестов). Код несложный, можно достаточно быстро разобраться что к чему.
#python
BDD — методология разработки "через поведение". Серия статей по BDD позволит достаточно глубоко разобраться в теме.
Для ознакомления с BDD можно прочесть первую статью. Во второй статье автор рассказывает про Gherkin Language — язык описания сценариев поведения. Далее в цикле статья с примерами написания сценариев и рекомендациями по написанию подобных сценариев.
У автора есть также более прикладная статья — применение BDD на питоне, где можно посмотреть практические аспекты.
А закончить стоит примером настоящего проекта, где применяется BDD. Ребята уже давно разрабатывают консольный task manager (пример BDD тестов). Код несложный, можно достаточно быстро разобраться что к чему.
#python
Forwarded from Kirill Gelvan
Для интересующихся: моделька на HF с инструкциями по запуску
Под капотом задача абстрактивной суммаризации, а именно модель mBart дообученная на суммаризацию диалогов в чатах (датасет SamSum который мы перевели на русский язык при помощи GoogleTranslateAPI)
Под капотом задача абстрактивной суммаризации, а именно модель mBart дообученная на суммаризацию диалогов в чатах (датасет SamSum который мы перевели на русский язык при помощи GoogleTranslateAPI)
Forwarded from MarksRemarks (Mark Baushenko)
Так получилось, что я занял первое место 🥇 в квалификации Vk Cup 2022 (почти ничего не делая 🤔 ) и пару человек попросили выложить решение. Так вот оно.
🎁 🎁 🎁 🎁 🎁
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Архив Программиста
Дорожная карта навыков тестировщика, которая сделает из зёлёного джуна матёрого сеньора (ну или хотя бы мидла).