
E-CUP – ML-хакатон от Ozon Tech с призовым фондом 1 200 000 рублей. На соревновании участники обучали модели в рамках двух треков:
- Матчинг товаров: решение для улучшения пользовательского опыта и оптимизации ресурсов.
- Модерация карточек товаров с признаками нарушений правил площадки.
Для Ozon Tech это первое мероприятие в таком формате. Мы уделили много времени разработке заданий — хотелось предложить участникам не просто интересные проекты, а такие, которые дали бы представление о работе в Ozon.
Регина Хисматуллина, менеджер по развитию ИТ-бренда работодателя, Ozon
Codenrock для соревнования подготовил платформу для работы с машинным обучением и компьютерным зрением, привлек сильные команды специалистов по Data Science, помог подготовить задачи и подвести итоги хакатона. Подробнее о том, как прошло мероприятие – в этом кейсе.
Результаты хакатона
На E-CUP зарегистрировался 1781 человек. Участники сформировали 396 команд для матчинга товаров в первом треке и разработали 110 решений. 286 команд готовили проекты во втором треке и создали 99 инструментов для модерации. 10 команд получили приглашение на финальный питчинг, где были определены победители.

Такие цифры — результат грамотного и оперативного взаимодействия команд Ozon Tech и Codenrock.
За 4 месяца работы мы:
- оформили задачи в понятном участникам виде, подготовили и разместили датасеты и разработали baseline-решение;
- настроили ML-платформу с GitLab-репозиторием для каждой команды, авторасчетом точности модели по заданным метрикам, логированием и отправкой отчетов на почту;
- модерировали коммуникацию участников на платформе с целью создания команд. Кураторы хакатона помогали конкурсантам на всех этапах: от регистрации до загрузки решений и выступления на питчинге;
- разработали лендинг мероприятия и запустили рекламную кампанию на привлечение DS-специалистов.

Также вместе с представителями Ozon Tech мы готовили новостной и образовательный контент для соцсетей E-CUP.
Команда Codenrock оперативно отвечала и была на связи все время. Результаты рекламной кампании отличные, профильная аудитория. Дизайн-отдел также сработал оперативно, правок было минимум.
Регина Хисматуллина, менеджер по развитию ИТ-бренда работодателя, Ozon

Контест: команды и задачи
Задача первого трека: матчинг товаров

⭐️ Задача: разработать ML–модель для определения схожести товаров по названиям, атрибутам и картинкам.
🎯 Цели: улучшить пользовательский опыт клиентов Ozon, оптимизировать ресурсы и минимизировать расходы на серверное оборудование.
✏️ Контекст: при просмотре товаров система показывает пользователю аналогичные предложения других продавцов. Матчинг помогает найти товар с более высоким рейтингом, низкой ценой и быстрой доставкой. Это особенно ценно, когда товар, добавленный в корзину, но не выкупленный, распродан.

📂 Ключевые данные для обучения ML-модели: название товара, готовые эмбеддинги картинок и атрибуты.
Эти данные формируют признаковое пространство для решения задачи бинарной классификации. Она отвечает на вопрос: являются два товара идентичными или нет.
Целевая метрика задачи — PR AUC. Она хорошо отражает желание команды повышать полноту, не жертвуя точностью.
Для обучения моделей участникам предоставлялся датасет, содержащий 20 товарных категорий. Для получения разметки данных использовался крауд-сервис Ozon Profit. В нём люди изучали пары товаров и проставляли отметку: 1 — матч, 0 — не матч.
Задача второго трека: модерация карточек товаров

⭐️ Задача: разработать ML-модель для определения акта курения или табачных изделий на фото с долей точности > 95%.
🎯 Цели: усилить модерацию изображений на предмет нарушения правил маркетплейса, повысить уровень безопасности поиска для пользователей.
✏️ Контекст: главная проблема модерации фото — разнообразие товаров и видов курения. Это непосредственно сигареты, нарисованные картинки на одежде и вещах быта, сувениры, постеры. Так, портсигары и пепельницы часто изображаются с сигаретами, но они не должны относиться к запрещённой категории. Также сложности детекции вызывает маленький размер объектов. Система не должна распознавать человека, держащего руку у лица, как курящего.

📂 Ключевые данные для обучения ML-модели: вручную размеченный датасет с двумя группами изображений — с актом курения и без.
Главная метрика — Precision. Показатель должен быть не ниже 95%, чтобы не относить к категории «Курение» обычные товары. Также оценивался Recall для определения качества модели. Учитывалась и скорость работы модели — участники стремились к показателю 1 000 RPS.
Команды экспертов Ozon Tech на протяжении всего соревнования помогали участникам. Разбирали условия, нюансы задач и другие вопросы в чатах и на специальных Q&A-сессиях. А ещё эксперты проверяли решения команд.
Проведение соревнования
На первом этапе E-CUP каждая из команд решала одну из двух задач. Участники подтверждали свой выбор на платформе, после чего получали доступ к репозиторию GitLab, где было размещено baseline-решение. Конкурсанты могли доработать его или загрузить собственный проект.
Также было необходимо подготовить файл README с описанием самого решения, инструкцией по запуску пайплайна подготовки данных, обучения модели и ее применения. Участники могли использовать любые библиотеки в открытом доступе. Язык проекта – Python.

После загрузки решения и успешного инференса происходил автоматический расчет модели по заданной метрике. Результаты всех команд публиковались в лидерборде и обновлялись в реальном времени – участники могли отслеживать успехи конкурентов, что стимулировано не прекращать работу над повышением точности до самого дедлайна. В финал смогли пройти авторы самых эффективных решений.
Победители были определены по результатам питчинга и голосования жюри. Участники, занявшие первые строки лидерборада отборочного этапа, получили приглашение от кураторов хакатона выступить с презентацией своих решений. После питч-сессии жюри оценили каждую команду по заранее разработанным критериям. Платформа подсчитала итоговый рейтинг. Конкурсанты, набравшие больше всего баллов, получили денежный приз.
Кроме того, для дополнительного вовлечения на протяжении регистрации действовала реферальная программа – участники могли получить уникальную ссылку и приглашать по ней своих друзей и коллег. 16 человек, которые позвали больше всего знакомых, получили в награду подарки от Ozon.
Победители
Трек 1. Матчинг товаров: решение для улучшения пользовательского опыта и оптимизации ресурсов:
🥇 Команда «Купер» – 1 место, 350 000 рублей;
🥈 Команда MISIS Neychev Loss – 2 место, 150 000 рублей;
🥉 Команда «звездочка»– 3 место, 100 000 рублей.
Трек 2. Модерация карточек товаров с признаками нарушений правил площадки:
🥇 Команда «Саша и балласт»– 1 место, 350 000 рублей;
🥈 Команда «Движ-радар» – 2 место, 150 000 рублей;
🥉 Команда Oleg-Solo – 3 место, 100 000 рублей.
Награждение победителей прошло на E-CODE – первой конференции Ozon Tech. Посетителей мероприятия ждали:
- 50+ часов экспертного контента от лидеров e-com и других бигтехов.
- ML-трек с докладами от ведущих экспертов индустрии.
- Научно-популярный трек для тех, кто жаждет знаний.
- 1х1 с топовыми специалистами в IT и HR.
В развлекательной программе – игры на свежем воздухе, караоке, IT-квесты и возможность выиграть мерч. Финалисты хакатона получили возможность посетить конференцию бесплатно – организаторы оплатили проезд и проживание в течение всего мероприятия.
Отзывы участников

Понравилось соревнование, также добрая, качественная и быстрая обратная связь! Отзывчивое комьюнити разработчиков в чате. Интересно было познакомиться с некоторыми людьми. Спасибо огромнейшее за соревнование!
Все классно прошло! Интересное и увлекательное мероприятие. Удивила работа поддержки, очень быстро отвечали, хотя соревнование большое. Задачи хорошие. Команда Ozon, спасибо вам большое за такую возможность и опыт. Пожелание – сделать еще один хакатон. Было весело!
Очень крутая платформа! Понравилось, что можно кастомизировать Docker под свои нужды, далеко не все платформы предоставляют такую гибкость.