Ended 4 months ago
698 participants
7821 submissions

Hidden
НТО 25-26 этап 2 Индивидуальная задача

НТО 2025/2026 — Профиль «Искусственный интеллект»

Индивидуальный этап

Правила участия

Нажимая кнопку «Отправить решение», вы соглашаетесь с Правилами участия в соревновании.

Обратите внимание: до дедлайна выбора финальных сабмитов второго этапа участник заполняет форму: https://forms.yandex.ru/u/6912ff409029024866e7cbce/ — с указанием UID на ods.ai, ID на talent.kruzhok.org и ссылкой на артефакты.

Форму можно отправлять повторно; к проверке принимается последняя подача до дедлайна. Отсутствие формы или её подача после дедлайна означает, что даже при достаточном результате на лидерборде ODS переход в следующий этап реализован не будет.


1. Описание задачи

Контекст: Крупная книжная онлайн-платформа собирает данные о взаимодействиях пользователей с книгами. Данные разделены хронологически на несколько частей (чанков). Для этого этапа мы моделируем реальную ситуацию: у нас есть история взаимодействий пользователей до определённого момента времени (train.csv), и нам нужно предсказать оценку для их следующего взаимодействия в будущем (test.csv).

Цель: Разработать модель машинного обучения, которая на основе истории взаимодействий пользователя (train.csv) предсказывает оценку (rating), которую этот пользователь поставит своей следующей прочитанной книге.

Особенности задачи:

  • Временной разрыв: Обучающая выборка (train.csv) содержит данные за один период времени, а тестовая — за следующий. Это имитирует реальную задачу, где модель должна предсказывать будущие предпочтения.
  • Отсутствие "холодных" пользователей: В тестовую выборку включены только те пользователи, у которых есть история в обучающей выборке. Это позволяет сфокусироваться на качестве рекомендаций для существующей аудитории.
  • Одно предсказание на пользователя: Для каждого пользователя в тестовой выборке необходимо предсказать оценку только для одной, последней прочитанной им книги.

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


2. Бейзлайн-решение

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

Бейзлайн расположен по ссылке: https://github.com/Orange-Hack/nto-ai-25-26-individual-baseline. Если вы предпочитаете работу в Jupyter Notebook'ах (.ipynb) -- см. страницу соревнования "Данные". Там лежит ноутбук, дублирующий функционал репозитория и который удобно запустить в Google Colab.

Рекомендация: Для старта работы рекомендуется сделать Fork репозитория. Это позволит бесшовно получать обновления бейзлайна через синхронизацию с оригинальным репозиторием.

Бейзлайн содержит:

  • Полностью рабочий пайплайн обучения и предсказания
  • Примеры feature engineering (агрегированные признаки, работа с текстом через TF-IDF и BERT)
  • Структуру проекта и необходимые утилиты для валидации решения

Важно: Бейзлайн использует для обучения только книги с has_read=1 (книги, которым была поставлена оценка). Записи с has_read=0 исключаются из обучающей выборки. Это соответствует условию задачи, согласно которому предсказания делаются только для книг, которые были прочитаны и оценены.

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


3. Данные

Подробное описание структуры данных, полей и связей между таблицами вынесены в раздел "Данные".

4. Формат решения

Подробное описание структуры данных, полей и связей между таблицами вынесены в раздел "Данные".

5. Метрика оценки

Итоговый балл рассчитывается на основе двух стандартных метрик качества регрессии: среднеквадратичной ошибки (RMSE) и средней абсолютной ошибки (MAE).

5.1. Среднеквадратичная ошибка (RMSE)

Показывает, насколько велики среднестатистические отклонения предсказаний от истинных значений.

$$\mathrm{RMSE} = \sqrt{\frac{1}{N} \sum_{i=1}^N (\hat{y}_i - y_i)^2}$$

5.2. Средняя абсолютная ошибка (MAE)

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

$$\mathrm{MAE} = \frac{1}{N} \sum_{i=1}^N |\hat{y}_i - y_i|$$

Где N — количество записей в выборке, y_i — истинная оценка, \hat{y}_i — предсказанная оценка.

5.3. Итоговый балл (Score)

Для расчёта итогового балла ошибки нормализуются делением на ширину диапазона оценок (R=10). Финальный балл вычисляется как среднее арифметическое нормализованных ошибок, вычтенное из единицы. Чем выше Score, тем лучше результат.

$$\mathrm{Score} = 1 - \left(0.5 \cdot \frac{\mathrm{RMSE}}{10} + 0.5 \cdot \frac{\mathrm{MAE}}{10}\right)$$

Лидерборд сортируется по убыванию значения Score.


6. Условия соревнования

6.1. Проверка и лидерборд

  • Публичный лидерборд (Public): Рассчитывается на видимой части тестовых данных. Результат обновляется после каждой успешной отправки решения.
  • Приватный лидерборд (Private): Рассчитывается на скрытой части тестовых данных. Финальные результаты соревнования определяются исключительно по этому лидерборду.
  • Лимиты: Устанавливается ограничение на количество отправок в сутки и на весь этап. Точные значения будут указаны на странице соревнования.

6.2. Ограничения

  • Запрещено использовать любые внешние данные и предварительно обученные модели, за исключением общедоступных (например, для обработки текста).
  • Решение должно быть полностью автономным и не требовать доступа к сети Интернет во время работы.

Подробнее см. Правила участия

Our website uses cookies, including web analytics services. By using the website, you consent to the processing of personal data using cookies. You can find out more about the processing of personal data in the Privacy policy