4.12.24

Как устроены генеративные обложки профиля

Как устроены генеративные обложки профиля
No items found.

Краткий экскурс в диффузионные модели и вектор интереса пользователя.

В честь 16-летия ВКонтакте решили добавить новый способ персонализации профиля — генеративные обложки, затестить их можно в приложении. Это самый быстрый запуск, который мы реализовали в этом году. Всего есть 4 категории обложек: импрессионизм, киберпанк, абстракция и концепт-арт.

Вектор интереса

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

Диффузионные модели

Для решения нашей задачи мы использовали диффузионные модели. Они способны сгенерировать изображение фактически из белого шума, рандомного набора чисел. Работу модели можно разделить на два этапа. Первый — обучение: мы постепенно зашумляем изображение и просим диффузию предсказать наложенный шум или изначальное изображение, зная мощность зашумления. Научившись восстанавливать с разных уровней зашумления, можем приступить ко второму этапу — генерации. Берётся гауссовский шум и модель итеративно пытается восстановить из него изображение. Чтобы генерировать какое-то конкретное изображение, можно дополнительно обусловить модель на текст.

Уровень качества генеративного контента, который есть сейчас, не появился просто так — это наслоение прошлых завоеваний в ML. Пару лет назад значительным скачком стало то, что Google и другие компании начали публиковать датасеты с огромным количеством подписанных картинок. Обучившись на миллиарде таких картинок, нейросети научились предсказывать, что изображено на картинке, без тега.

Eщё про команду:
Онбординг в стиле межгород
Онбординг в стиле межгород
Прикладные исследования (Deep VK)
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Главное о команде
Главное о команде
Прикладные исследования (Deep VK)
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Почитать о других:
Как мы поддерживаем командный дух
Как мы поддерживаем командный дух
Команда разработчиков мобильного приложения
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Как мы появились
Как мы появились
Команда DevOps инженеров
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Фокус на одной задаче за раз: лучше меньше, да лучше
Фокус на одной задаче за раз: лучше меньше, да лучше
Core Team
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
C PHP/Python на Go: как мы помогаем разработчикам (почти) безболезненно сменить стек
C PHP/Python на Go: как мы помогаем разработчикам (почти) безболезненно сменить стек
Команда Golang-разработчиков
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Подборка вдохновения: наши любимые работы
Подборка вдохновения: наши любимые работы
Команда графических дизайнеров
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.
Разработка на острие науки и техники
Разработка на острие науки и техники
Команда Python-разработчиков
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.