Пост не соответствует выбранному game tag
Как детектировать посты, которые не соответствуют выбранному тегу игры: если есть сильная VLM-модель и если ресурсы ограничены?
Ответить самому
Сначала сформулируйте ответ как на собеседовании, затем откройте разбор и оцените себя.
Короткий ответ
При сильных ресурсах можно использовать VLM/CLIP-style проверку image-text-tag consistency. При ограниченных ресурсах - каскад дешевых признаков: текст, OCR, image embeddings, tag metadata, lightweight classifier и human review для спорных случаев.
Полный разбор
Задача - проверить consistency между заявленным tag и содержимым поста. Если доступны сильные multimodal models, можно подать image, text и tag в VLM или CLIP-like модель и получить score соответствия. Такой слой хорош для bootstrap labels, hard cases и объяснений для модерации, но дорог для каждого поста.
При ограниченных ресурсах нужен каскад. Сначала cheap filters: нормализация текста, язык, TF-IDF/char n-grams, compact BERT embeddings, OCR, lightweight image embeddings, metadata автора и tag history. Затем classifier решает “tag matches content” или отправляет uncertain cases на ручную проверку. Для новых игр и мемов нужен drift monitoring и регулярное обновление словаря/labels.
Важно учитывать цену ошибок. False positive удаляет нормальный контент, false negative портит рекомендации и модерацию. Поэтому threshold выбирают по precision/recall и cost, а не только по accuracy.
Теория
Модерационные пайплайны обычно строят каскадом: дешевые широкие фильтры, затем дорогие точные модели и human review для риска.
Типичные ошибки
- Запустить дорогую VLM на каждый пост без cost/latency оценки.
- Использовать только текст, когда mismatch виден на картинке.
- Не держать human review для borderline moderation decisions.
Как отвечать на собеседовании
- Дайте две версии: high-resource VLM и low-resource cascade.
- Отдельно назовите error costs и threshold selection.