Rare event classification по temporal embeddings
Есть последовательность embedding-ов дорожной сцены за временное окно. Нужно находить несколько редких событий интереса. Как сформулировать ML-задачу и baseline?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Это multi-label temporal classification: на входе sequence embeddings, на выходе sigmoid heads по событиям. Baseline: pooling/temporal CNN/Transformer поверх окна, weighted BCE или focal loss для rare labels.
Подробный разбор
Сначала нужно определить единицу предсказания: fixed time window, clip или rolling segment. Если в одном окне могут быть несколько событий, это multi-label, а не multiclass: используем независимые sigmoid heads и threshold per event.
Baseline можно сделать простым: aggregate temporal embeddings через mean/max pooling и MLP. Более сильный вариант - temporal CNN, GRU или Transformer с positional/time features. Для редких событий важны class weights, focal loss или sampling strategy, потому что обычная BCE на дисбалансных labels быстро учится предсказывать "ничего нет".
Дальше нужно зафиксировать labeling contract: событие относится ко всему окну или к конкретному моменту, можно ли расширять labels по соседним timestamp-ам, что делать с overlap-ом и шумными annotations.
Типичные ошибки
- Сделать multiclass softmax, хотя события могут пересекаться.
- Не обсудить class imbalance и threshold selection.
- Не определить temporal window и semantics label-а.
Как сказать на собеседовании
- Начни с window, labels и multi-label sigmoid.
- Назови weighted BCE/focal loss и простой pooling baseline.
Метрики для safety-critical rare events
Для редких safety-critical событий false negative дороже false positive. Какие метрики и threshold strategy выбрать?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Основной фокус - recall / false negative rate при минимально приемлемой precision и review budget. Смотреть PR-AUC, recall@fixed precision, per-class thresholds и slice metrics по редким условиям.
Подробный разбор
Accuracy почти бесполезна при редких событиях. Если пропуск события дорогой, нужно выбирать threshold под high recall или под bound на false negative rate. Но нельзя игнорировать precision: если модель отдает слишком много false positives, downstream review или simulation pipeline может захлебнуться.
Практичный набор: PR-AUC, recall@precision>=P, precision@review_budget, per-class F1 только как вторичная метрика, confusion matrix по каждому событию, calibration и per-slice metrics. Threshold-и лучше подбирать отдельно по событиям, потому что base rate и цена ошибки разные.
Для safety-critical задач важно показывать hard examples и confidence bands: редкие классы легко переоценить на маленьком validation set.
Типичные ошибки
- Оптимизировать accuracy.
- Выбрать один threshold для всех событий без учета base rate.
- Не учитывать downstream review budget.
Как сказать на собеседовании
- Скажи: high recall subject to acceptable precision/review budget.
- Упомяни PR-AUC, per-class thresholds и slice metrics.
Temporal embeddings и hard-case mining
Модель получает temporal embeddings, но один из event heads работает плохо. Как улучшать качество: features, post-processing, labels, hard cases?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Нужно сделать error analysis по false negatives/false positives, проверить label noise, добавить temporal/context features, сгладить predictions во времени и собрать hard cases через active learning.
Подробный разбор
Если один head проседает, сначала смотрим ошибки: где именно false negatives, где false positives, какие условия, классы объектов, время суток, погода, плотность сцены, длина события. Часто проблема не в архитектуре, а в шумных labels или слишком коротком/длинном window.
Model-side варианты: добавить positional/time features, attention over frames, event-specific head, temporal smoothing, hysteresis threshold, post-filtering коротких spikes, class-balanced sampling и focal loss. Data-side варианты часто важнее: hard negative mining, активная разметка uncertain cases, пересмотр инструкции annotator-ам и targeted labeling редких slice-ов.
Если событий несколько, нужно проверить loss weighting: общий loss может доминироваться частыми labels, а редкий head получает слабый gradient.
Типичные ошибки
- Сразу усложнять модель, не посмотрев false negatives.
- Не проверять шум и semantics label-а.
- Не учитывать, что общий loss может подавлять редкий event head.
Как сказать на собеседовании
- Раздели model-side и data-side улучшения.
- Назови hard-case mining, active learning и temporal smoothing.
Self-supervised pretraining на unlabeled sequences
Есть много неразмеченных driving/log sequences и мало labels для редких событий. Какие self-supervised подходы можно использовать до supervised fine-tuning?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Подходы: contrastive learning для близких/дальних temporal windows, masked sequence modeling, future embedding prediction и next-event proxy tasks. Потом fine-tune на rare-event labels.
Подробный разбор
Если labels мало, unlabeled sequences можно использовать для representation learning. Contrastive вариант: positive pairs - соседние/разные augmentations одного temporal segment, negatives - другие сцены или hard negatives из похожих условий. Цель - чтобы embedding сохранял устойчивую семантику сцены.
Masked modeling: скрываем часть frame/segment embeddings и предсказываем их по контексту. Future prediction: по прошлым embedding-ам предсказываем следующий embedding или coarse future state. Можно также делать proxy tasks: ordering, temporal distance, object-motion consistency, reconstruction через autoencoder.
После pretraining модель fine-tune-ится на supervised rare-event labels. Важно проверить, что pretraining objective не учит только shortcut-ы вроде времени суток или маршрута, если это не нужно задаче.
Типичные ошибки
- Предлагать generic pretraining без связи с downstream task.
- Не обсуждать negatives и augmentations.
- Не проверять shortcut features.
Как сказать на собеседовании
- Назови contrastive, masked modeling и future prediction.
- Объясни, как потом fine-tune-ить на rare-event labels.
Distillation и quantization для большого temporal model
Большая temporal model хорошо ловит события, но слишком дорогая по latency и compute. Как сжать ее для production?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Сначала фиксируем latency/quality budget. Затем пробуем teacher-student distillation, quantization, pruning, smaller backbone, early exits, batching/caching и offline/online split.
Подробный разбор
Начать нужно с production constraints: latency, throughput, hardware, memory, cost per hour, acceptable quality drop and critical-class recall. Без этого "сжать модель" не имеет критерия успеха.
Distillation: большая teacher model генерирует soft labels/logits или intermediate representations, student учится повторять teacher и ground truth. Для rare events важно взвесить critical classes, чтобы student не потерял редкие сигналы. Quantization: FP16/BF16/INT8, post-training или quantization-aware training, с проверкой per-class degradation.
Дополнительные рычаги: pruning, smaller temporal window, cheaper encoder, caching embeddings, batch inference offline, two-stage cascade where cheap model filters candidates and expensive model reranks uncertain cases.
Типичные ошибки
- Сжимать модель без latency/quality budget.
- Проверять только aggregate F1 и пропустить деградацию rare classes.
- Забыть про caching и two-stage cascade.
Как сказать на собеседовании
- Скажи teacher-student, INT8/QAT и per-class regression tests.
- Предложи cascade: cheap detector plus expensive verifier.
Production loop: monitoring, retraining и active learning
Модель редких событий вышла в production. Как построить feedback loop: мониторинг, data drift, retraining и регулярную разметку?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Нужны model/data/system метрики, curated eval set, slice monitoring, human review для uncertain/hard cases, retraining cadence и versioned datasets/models with rollback.
Подробный разбор
Production loop состоит из трех уровней. System metrics: latency, throughput, failures, freshness данных, cost. Data/model metrics: embedding distribution, feature drift, prediction distribution, per-event alert rate, calibration, confidence, slice metrics. Quality metrics: precision/recall на отложенной разметке, human review feedback, regression suite на critical scenarios.
Для редких событий ключевое - не ждать случайных labels. Active learning выбирает uncertain cases, high-impact false positives/false negatives, drifted slices и новые сценарии для разметки. Нужен процесс регулярного labeling/review, чтобы модель видела свежие edge cases.
Retraining должен быть воспроизводимым: versioned dataset, feature definitions, model artifacts, thresholds, evaluation report, canary/shadow mode, rollback. Для safety-critical задач новые версии должны проходить не только aggregate metric gate, но и hard-case regression tests.
Типичные ошибки
- Мониторить только latency и не смотреть prediction drift.
- Не иметь curated regression set для hard cases.
- Переобучать модель без versioning и rollback.
Как сказать на собеседовании
- Раздели system, data/model и quality monitoring.
- Назови active learning, shadow/canary и versioned artifacts.