Ищите крутые кейсы в digital? Посмотрите на победителей Workspace Digital Awards 2025!
Назад
#Нейросети

Рассказываем про обучение нейросетей на примере виртуальной примерочной Virton

573 
 

Всем привет! На связи команда Neurosell. В сегодняшней статье мы хотели бы поделиться опытом в обучении нейросетей на примере нашего продукта - виртуальной примерочной Virton. Расскажем о сложностях алгоритма, пользовательском опыте и возможностях обучения.

Рассказываем про обучение нейросетей на примере виртуальной примерочной Virton

Первым делом, давайте рассмотрим, какие цели мы ставили перед собой:

- Максимальное сохранение контекста для получения точного результата примерки в образе (к примеру пользователь хочет подобрать футболку к своим шортам по стилю;

- Точность переноса изображения товара с сохранением поз, добавлением деталей сгибов ткани и пр;

- Относительная экономичность алгоритмов;

Что мы используем для обучения и работы?

- Генеративные и референсные модели на базе UNet;

- PyTorch под капотом, трансформеры и дифузеры;

- SCHP для определения и коррекции поз;

- DensePose для пикселизации тел;

- Сервера на базе NVidia Cuda;

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

Обучение алгоритмов, показатели в текущем формате

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

Рассказываем про обучение нейросетей на примере виртуальной примерочной Virton

Что же делать в таком случае? Запускать бета-версию алгоритмов!

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

Итак, чего мы добились за две недели обучения алгоритмов:

- На запуске и в первую неделю работы - точность генераций была в районе 30%;

- На второй неделе работы, некоторой коррекции UX и внутренних алгоритмов - точность выросла до 60%;


Разместите
тендер бесплатно

Наша система сама подберет вам исполнителей на услуги, связанные с разработкой сайта или приложения, поисковой оптимизацией, контекстной рекламой, маркетингом, SMM и PR.

Заполнить заявку 12730 тендеров
проведено за восемь лет работы нашего сайта.


Таким образом, до-обучая алгоритмы на реальных пользователях мы доводим результаты до коммерческих значений и это только за 2 недели работы.

Что влияет на точность алгоритма?

В идеальных условиях мы конечно же получаем отличные результаты, но в реальном мире так не работает. Мы получаем разных пользователей, которые зачастую делают не совсем подходящие фотографии для работы нейросети. И всё это нужно учитывать.

Рассказываем про обучение нейросетей на примере виртуальной примерочной Virton

В нашем случае на точность влияет:

- Качество изначальных фотографий;

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

- Присутствие в кадре других людей;

- Использование фотографий не в полный рост;

- Позирование (скрещенные ноги, руки и т.д.);

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

- Первым делом проработать UX и объяснить пользователю понятным языком, при каких условиях у них может получится плохой результат;

- До-обучать модели по сегментации в различных неидеальных для алгоритма позах;

- Внедрять Multi-View Pose Transfer (для фотографий боком и других поворотах тела;

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

Примеры генераций - от успехов до эпичных фейлов

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

Примеры неплохих генераций
Примеры неплохих генераций
Примеры неплохих генераций
Примеры неплохих генераций
Примеры неплохих генераций
Примеры неплохих генераций
Примеры неверных генераций - попробуйте догадаться почему
Примеры неверных генераций - попробуйте догадаться почему
Примеры неверных генераций - попробуйте догадаться почему
Примеры неверных генераций - попробуйте догадаться почему

Итоги

Что бы хотелось подвести в итоге: любые нейросети натренированные на идеальных данных и различных открытых базах, как правила не учитывают пользовательский фактор, что определенно влияет на результат. Поэтому стоит плотно заниматься до-обучением моделей на ваших реальных пользователях, обязательно работать с UX и искать новые варианты улучшения алгоритмов (к примеру, за счет внедрения новых дополнительных инструментов).

И как всегда, будем рады обсуждениям и вашим вопросам!





Выскажите мнение
Авторизуйтесь, чтобы добавить свой комментарий.




573

Лучшие статьи

Поделиться: 0 0 0