Code code code

Сложность: 800

C. Code code code

"A model doesn’t see code — it sees reasons."


Пролог

После инцидента корпорация Holmes Industries внедрила систему машинного аудита.
Модель должна была отмечать заражённые коммиты, помогая инженерам находить следы инсайдеров.
Но с каждым месяцем отчёты модели становились всё страннее:
она указывала на безобидные правки, игнорировала явные угрозы — и всё же её уверенность росла.

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


Задача

Дана замороженная модель F, обученная классифицировать фрагменты кода на классы
infected / clean.
Для каждого коммита вы можете подать не весь код, а только его часть — диапазон токенов.
Модель вернёт уверенность в исходном классе при этом усечённом вводе.

Ваша цель —

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

Иными словами, вы должны найти тот участок кода, который модель действительно “считает доказательством”.


Формат данных

Входные файлы

где каждая матрица имеет размер [N, T, T],
где N — количество примеров, T — число токенов в коде.

Ограничение:
end - start ≤ K
(максимальная длина выбранного фрагмента — K токенов).


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

Файл submission.csv должен содержать:
commit_id,start,end,confidence

где:
- start, end — границы выбранного диапазона токенов;
- confidence — ожидаемая уверенность модели при подаче выбранного фрагмента.


Метрика

Retention Score

Score = (1 / N) * Σ [ F(x_i) = F(x_i_crop) ] · F_c(x_i_crop)

где:
- F(x_i) — исходный класс для полного кода,
- F_c(x_i_crop) — уверенность модели при вводе выбранного фрагмента.

Интуиция:
Хорошее решение сохраняет смысл — вырезает всё неважное и оставляет ядро, в котором “глаз модели” видит класс.


Контекст

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

Отправить решение

Чтобы отправить решение, войдите в аккаунт.

Мои 5 посылок по задаче: Code code code

Пока нет посылок по этой задаче.
ID Дата Статус Детали
Нет посылок