Marketplace AIКаталог / модерацияOzon E-CUP 2024

Классификация товарных карточек

Система анализирует фото, название, описание и атрибуты товарной карточки, сопоставляет товар с деревом каталога, рассчитывает уверенность и передаёт результат в каталог, модерацию или API.

91%
точность категории
82%
потенциал автопроверки
5 мин → 30 сек
операторское решение

Проблема

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

Решение

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

Пилот на ваших данных

Как проверяем сценарий

Берём 100-500 реальных или обезличенных карточек: фото, название, описание, атрибуты, текущую категорию и решение модератора. Считаем, насколько точно система выбирает категорию, какие атрибуты можно заполнять автоматически и какую долю карточек безопасно пропускать без ручной проверки.

Что подаём на вход

100-500 карточек

фото, названия, описания, атрибуты и текущие категории

Что измеряем

top-1 / top-3

попадание в категорию, заполненность атрибутов и долю автопроверки

Что получает команда

очередь решений

готовую разметку карточек и список спорных случаев для оператора

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

В таком пилоте важна не только точность модели. Важно сразу показать, какие карточки можно обрабатывать автоматически, где нужен оператор и какие исправления улучшат каталог.

AIFY Studio · подход к marketplace-модерации

Как устроено решение

Собираем карточку целиком

Собираем карточку целиком

На вход подаём не один текст или одно фото, а всю карточку: изображения, название, описание, SKU, текущую категорию продавца и заполненные характеристики.

Извлекаем признаки товара

Извлекаем признаки товара

Компьютерное зрение определяет, что видно на фото, NLP-модель разбирает название и описание, а система выделяет признаки для фильтров: тип, цвет, бренд, материал, пол и риск.

Сопоставляем с деревом каталога

Сопоставляем с деревом каталога

Модель выбирает не просто тег, а место товара в существующей структуре магазина: категория, подкатегория, раздел и альтернативные варианты с уровнем уверенности.

Разделяем автоматизацию и контроль

Разделяем автоматизацию и контроль

Карточки с высокой уверенностью можно отправлять в каталог автоматически. Спорные случаи уходят оператору с причиной, а его исправления возвращаются в контур качества.

Техническая часть

Как формально считается категория и маршрут карточки

Классификация товарных карточек — это не задача «поставить один тег». В рабочем маркетплейсе модель должна учитывать фото, текст, атрибуты, текущую разметку продавца и правила каталога, а затем принять управляемое решение: опубликовать карточку автоматически, предложить оператору короткий список вариантов или отправить её на полноценную проверку.

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

xi=(Ii, ti, ai, ciseller)x_i = \left(I_i,\ t_i,\ a_i,\ c_i^{\text{seller}}\right)
Здесь фиксируем изображения товара, нормализованный текст, заполненные характеристики и категорию, выбранную продавцом.

Такой формат входа важен для бизнеса. Система видит не только «что написал продавец», но и то, насколько описание согласуется с фотографией и правилами каталога.

Товарная карточка как единый объект классификации
Одна карточка собирает визуальные, текстовые и структурированные сигналы.

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

zi=[fimg(Ii) ; ftext(ti) ; fattr(ai)]z_i = \left[ f_{\text{img}}(I_i)\ ;\ f_{\text{text}}(t_i)\ ;\ f_{\text{attr}}(a_i) \right]
z_i — общий вектор признаков карточки; каждая часть отвечает за свой источник данных.

Именно объединение модальностей делает решение устойчивым. Если в названии написано «кроссовки», но на фотографии виден ботинок или товарный набор, модель получает конфликтный сигнал и может повысить риск ручной проверки.

Слияние визуальных, текстовых и атрибутных признаков
Фото, текст и атрибуты сходятся в один вектор признаков.

После этого карточка сопоставляется с деревом каталога. Модель считает распределение вероятностей по допустимым категориям и выбирает наиболее вероятную ветку. Для интерфейса модератора лучше возвращать не только top-1, но и top-3: оператор не ищет категорию с нуля, а выбирает из короткого списка с объяснимыми альтернативами.

pi(c)=softmax(Wzi+b)c,c^i=argmaxcCpi(c)p_i(c)=\operatorname{softmax}(Wz_i+b)_c, \qquad \hat c_i=\arg\max_{c\in\mathcal{C}} p_i(c)
Формула даёт вероятность каждой допустимой категории и выбирает ветку каталога с максимальной уверенностью.

На уровне продукта это превращает классификацию из «магического ответа модели» в проверяемый инструмент: у каждой карточки есть основная категория, запасные варианты и численная уверенность.

Выбор категории в дереве каталога
Модель выбирает ветку каталога и показывает ближайшие альтернативы.

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

route(xi)={auto,siτ  riγreview,otherwise\operatorname{route}(x_i)=\begin{cases}\text{auto}, & s_i\ge\tau \ \land\ r_i\le\gamma \\ \text{review}, & \text{otherwise}\end{cases}
Автопубликация включается только при высокой уверенности модели и риске ниже бизнес-порога.

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

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

Качество такого решения нельзя оценивать одной метрикой accuracy. В пилоте нужно отдельно смотреть top-1 и top-3 попадание в категорию, полноту обязательных атрибутов, долю карточек, которые прошли без оператора, и цену ошибки на тех карточках, где модель была слишком уверена.

L=CE(yi,pi)+λCE(ai,a^i)+μBCE(mi,m^i)\mathcal{L}=\operatorname{CE}(y_i,p_i)+\lambda\operatorname{CE}(a_i,\hat a_i)+\mu\operatorname{BCE}(m_i,\hat m_i)
Функция потерь соединяет классификацию категории, предсказание атрибутов и решение модерации.

Обучение удобно строить как multi-task: модель одновременно оптимизирует категорию, атрибуты и решение модерации. Тогда она не только выбирает раздел каталога, но и помогает заполнить карточку, найти риск и дать оператору понятную причину проверки.

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

На выходе получается не «чёрный ящик», а управляемая очередь решений: понятная категория, обязательные атрибуты, уровень уверенности, альтернативы и причина, почему конкретная карточка прошла автоматически или ушла оператору.

Архитектура решения

1

Карточка товара

фото, название, описание, цена, бренд, текущая категория и заполненные характеристики

2

Нормализация данных

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

3

Визуальная модель

определяет тип товара по фото, видимые признаки, цвет, форму, материал и возможные ограничения

4

Текстовая модель

разбирает название и описание, находит бренд, назначение, размерность, синонимы и спорные формулировки

5

Дерево каталога

сопоставляет признаки с таксономией магазина и выбирает категорию, подкатегорию и обязательные поля

6

Контроль качества

карточки с высокой уверенностью проходят автоматически, спорные уходят оператору с причиной и альтернативами

Результаты

91% точность определения категории на тестовой выборке
82% карточек можно обрабатывать без оператора при заданном пороге уверенности
Сократили операторское решение с 5 минут до 30 секунд
Каждое решение объяснимо: исходные признаки, уверенность, альтернативы и причина ручной проверки
Прототип вошёл в топ-5 Ozon E-CUP 2024

Стек технологий

Computer VisionNLPMultimodal MLPythonHuman-in-the-loop
Время реализации
3 недели разработки
Команда
3 ML-инженера, 1 backend разработчик

Хотите похожее решение?

Опишите процесс, данные и желаемый результат — вернёмся с вариантами решения и оценкой пилота.

Описать задачу

Cookie и аналитика

Метрика — только с согласия. Технические cookie нужны для сайта.

Подробнее: cookie и ПДн. Выбор можно изменить в футере.