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.
Теория
Compression - это trade-off между качеством, latency и стоимостью. Для safety/rare events нельзя смотреть только среднюю метрику.
Типичные ошибки
- Сжимать модель без 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.