Как сформулировать text-to-scene retrieval задачу
Есть большой архив дорожных сцен автономного автомобиля. По текстовому запросу нужно находить релевантные сегменты, например редкие ситуации с пешеходами или необычным трафиком. Как начать ML System Design?
Короткий ответ
Сначала фиксируем unit retrieval: кадр, клип или segment; типы запросов; offline/online latency; top-K; требования к recall. Baseline: metadata/rules + embeddings, потом two-stage retrieval и reranking.
Полный разбор
Начать нужно с требований. Кто пользователь системы: ML researcher, safety analyst, simulation team? Какие запросы: "pedestrian crossing at night", "unusual roadworks", "left turn with cyclist"? Что возвращаем: отдельные frames, 5-20 секундные clips, route segments или уже размеченные events?
Дальше фиксируем метрики: recall@K для найденных релевантных сцен, precision@K для ручной проверки, latency запроса, freshness индекса, coverage редких сценариев. Для safety-oriented поиска обычно recall важнее, потому что пропустить редкий важный кейс дороже, чем показать лишние кандидаты.
Baseline можно начать с существующих perception metadata: объекты, road type, weather, time, location, scenario tags. Следующий слой - multimodal embeddings: text encoder для query и visual/temporal encoder для клипов. Production-система обычно two-stage: ANN retrieval по embedding index, затем reranker с богатыми признаками.
Теория
Text-to-scene retrieval - это multimodal search. Важно выбрать единицу индексации и не пытаться сразу обучить end-to-end систему без baseline и метрик релевантности.
Типичные ошибки
- Не определить, что именно индексируется: кадр или temporal segment.
- Сразу уйти в CLIP без требований и baseline по metadata.
- Оптимизировать только latency и забыть про recall редких safety cases.
Как отвечать на собеседовании
- Сначала уточни user, query types, retrieval unit и top-K.
- Предложи two-stage architecture: candidates by ANN, final quality by reranker.