Уявіть: у вас 50 000 SKU, щотижня додаються сотні нових товарів від постачальників з різними назвами, описами та зображеннями. Ручна категоризація вже не справляється — помилки множаться, відділ контенту перевантажений, а покупці не знаходять потрібні товари. Ми вирішуємо це за допомогою AI-системи автоматичної категоризації, яка аналізує текст, зображення та атрибути товарів. Наш досвід — 7+ років у машинному навчанні, понад 50 успішних проєктів для рітейлу та маркетплейсів. Пропонуємо рішення «під ключ»: від аудиту даних до інтеграції готового API. Зв'яжіться з нами для попередньої оцінки вашого каталогу.
Згідно з Вікіпедією, ієрархічна класифікація дозволяє знизити обчислювальну складність за рахунок покрокового уточнення категорії.
Як працює автоматична категоризація товарів?
Товарні каталоги мають деревоподібну структуру: «Одяг → Верхній одяг → Куртки». Класифікатор спочатку визначає найвищий рівень, потім уточнює — це знижує обчислювальну складність і підвищує точність. Приклад ієрархії:
Одяг і взуття ├── Чоловічий одяг │ ├── Верхній одяг │ │ ├── Куртки │ │ └── Пальта │ └── Штани └── Жіночий одяг Для кожного рівня навчається окрема модель або використовується єдина ієрархічна архітектура. Ми обираємо підхід під ваш каталог — від простого BERT-класифікатора до retrieval-based системи на ембеддінгах. Ієрархічний підхід на 30% ефективніший за плоску класифікацію для каталогів з глибиною понад 3 рівні.
Вхідні дані та ознаки — розробка ai системи
Щоб модель працювала точно, використовуємо максимум доступних даних:
class ProductFeatures(BaseModel): title: str # «Куртка мужская зимняя Nike синяя» description: str | None # полное описание attributes: dict # характеристики: материал, размер, цвет images_url: list[str] | None # для мультимодальной классификации brand: str | None price: float | None # price range намекает на категорию supplier_category: str | None # категория поставщика (шумная, но полезная) Мультимодальний підхід (текст + зображення) дає приріст accuracy +5–10% порівняно з text-only. Це підтверджено нашими проєктами: в одному з кейсів (каталог 10 000 товарів) точність зросла з 89% до 96% після додавання зображень.
Реалізація класифікатора
Вибір архітектури залежить від розміру каталогу та наявності розмічених даних:
| Підхід | Коли застосовувати | Точність | Складність |
|---|---|---|---|
| BERT fine-tuning | < 500 категорій, достатньо розмічених даних | 90–95% | Низька |
| Ієрархічний класифікатор | > 500 категорій, чітка ієрархія | 92–97% | Середня |
| Retrieval-based (embeddings + kNN) | > 500 категорій, часті нові товари | 88–93% | Середня |
| Zero-shot (LLM) | Нові категорії без навчальних даних | 80–90% | Висока |
Приклад коду для гібридного підходу:
def categorize_product(product: ProductFeatures) -> CategoryPrediction: text = f"{product.title}\n{product.description or ''}\n{format_attributes(product.attributes)}" # Быстрый классификатор top_categories = fast_classifier.predict_top_k(text, k=5) if top_categories[0].score > 0.85: return top_categories[0] # высокая уверенность → сразу # Низкая уверенность → LLM для уточнения return llm_classify(product, top_categories) Нижче — порівняння точності при різних комбінаціях ознак:
| Ознаки | Top-1 accuracy | Top-3 accuracy |
|---|---|---|
| Тільки назва | 85% | 93% |
| Назва + опис | 90% | 96% |
| Назва + опис + атрибути | 93% | 98% |
| Мультимодаль (текст + зображення) | 96% | 99% |
Приклад мультимодального пайплайна
Зображення кодується через CLIP vision-encoder, текст — через Sentence-BERT. Ембеддінги конкатенуються і подаються в класифікатор. Це дозволяє використовувати візуальні ознаки (фасон, колір, матеріал) навіть при бідному текстовому описі.
Чому мультимодальність підвищує точність?
Зображення містить інформацію, якої немає в тексті: фасон, колір, матеріал на вигляд. Для категорій на кшталт «Сукні» або «Кросівки» візуальні ознаки критичні. Ми використовуємо переднавчені vision-encoder (наприклад, CLIP), який видає ембеддінги, що об'єднуються з текстовими. Це особливо ефективно для товарів з бідним описом.
Обробка складних випадків
- Мультикатегорійні товари: «Чохол-книжка для телефона» — аксесуар чи чохол? Обидві категорії. Використовуємо мультилейбл-класифікацію.
- Невідповідність назви вмісту: «Набір для рукоділля» — що всередині? Потрібен опис. Якщо його немає, модель позначає товар на ручну перевірку.
- Нові категорії: автоматично створювати кластер «Невідома категорія» для рев'ю. Після підтвердження — донавчання моделі.
Метрики: Top-1 accuracy, Top-3 accuracy (товар в одній з 3 передбачених категорій). Типові результати: Top-1 90–95%, Top-3 97–99% для стандартних каталогів.
Що входить до нашої роботи?
- Аудит даних: аналіз структури каталогу, якості розмітки, доступних ознак.
- Проєктування моделі: вибір архітектури (BERT, ієрархічний, retrieval-based) під ваш кейс.
- Навчання та валідація: на ваших даних з відстеженням метрик через MLflow.
- Інтеграція: REST API або gRPC, документація, приклади коду.
- Деплой та моніторинг: контейнеризація, A/B тестування, логування.
- Навчання команди: як оновлювати модель, додавати нові категорії.
Терміни та вартість
Базове рішення — від 2 до 6 тижнів. Вартість розраховується індивідуально після аудиту ваших даних та вимог. Ми гарантуємо прозоре ціноутворення та фіксовані терміни. Сертифіковані інженери (TensorFlow, AWS, GCP) забезпечать стабільну роботу.
Замовте консультацію: ми оцінимо ваш каталог і запропонуємо оптимальне рішення. Отримайте демо-доступ до вже працюючої системи.







