К обычному разбору
Тренировка по собеседованиюСкринингWisebits / xHamster2025-07-31

Wisebits / xHamster: Скрининг

Идите сверху вниз: сначала попробуйте сами, затем откройте разбор. Если шаг с кодом, пишите решение прямо здесь и запускайте проверки на странице.

Шагов
5
Вопросов
5
Задач
0
1Вопрос8 мин

Как адаптировать имеющуюся модель под новые задачи

Как адаптировать имеющуюся модель под новые задачи? Какие варианты вы бы рассмотрели и от чего зависит выбор?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Короткий ответ

Сначала надо понять близость новой задачи к старой, размер и качество данных, ограничения по compute и деплою. Базовые варианты: заменить/дообучить head, fine-tune части модели, обучить adapter/LoRA, сделать full fine-tuning или быстро собрать новую baseline-модель.

Подробный разбор

Начинать стоит не с метода, а с постановки: насколько новая задача похожа на старую, меняется ли output space, сколько есть размеченных данных, насколько дорогая модель и можно ли ее менять в продакшене.

Если задача близкая и данных мало, обычно разумно заморозить backbone и обучить новую голову или дообучить последние слои. Если модель большая или общая для нескольких продуктов, лучше рассмотреть parameter-efficient fine-tuning: adapters, LoRA или похожие добавки. Это дешевле по памяти и проще откатывать.

Если данных много, домен сильно отличается или качество критично, full fine-tuning может быть лучше. Но даже тогда полезно держать простой baseline: иногда новая небольшая модель, обученная прямо на целевые labels, проще в отладке и надежнее старого backbone из другого домена.

Типичные ошибки

  • Сказать только “дообучить модель” и не обсудить данные и близость задач.
  • Забыть про новую голову, если меняется пространство ответов.
  • Игнорировать стоимость деплоя и отката большой общей модели.

Как сказать на собеседовании

  • Сначала проговорите assumptions про данные и похожесть задач.
  • Дайте дешевый baseline и более сильный production-вариант.
2Вопрос7 мин

Переобучение нейросети и аугментации в CV

Назовите специфичные для нейросетей способы борьбы с переобучением. Какие способы аугментации данных можно использовать в Computer Vision?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Короткий ответ

Против переобучения используют dropout, weight decay/L2, early stopping, контроль размера модели, корректный validation split, label smoothing и аугментации. В CV это кропы, отражения, повороты, ресайз, цветовые искажения, шум, blur, affine transforms, MixUp/CutMix, если они не ломают разметку.

Подробный разбор

Базовый набор: weight decay, dropout, early stopping, уменьшение емкости модели, аккуратное разбиение на train/validation, label smoothing и аугментации. BatchNorm и LayerNorm не стоит называть только регуляризаторами: они в первую очередь помогают оптимизации, но на практике часто снижают давление переобучения.

В Computer Vision аугментации должны соответствовать инвариантностям задачи. Часто используют random crop, horizontal flip, resize, небольшие повороты, color jitter, изменение контраста и яркости, blur, шум и affine transforms. Для классификации иногда помогают MixUp и CutMix, потому что они сглаживают границы решений.

Главная оговорка - корректность target. Horizontal flip может поменять класс “лево/право”, crop может убрать объект, rotation может сломать текстовые или orientation labels, а для detection/segmentation нужно трансформировать разметку вместе с изображением.

Типичные ошибки

  • Перечислять аугментации без проверки, остается ли валидной разметка.
  • Считать BatchNorm только inference-time трюком.
  • Добавлять агрессивные аугментации до исправления утечек между train и validation.

Как сказать на собеседовании

  • Разделите регуляризацию модели и аугментацию данных.
  • Отдельно проговорите трансформацию target для detection и segmentation.
3Вопрос7 мин

Семантическая сегментация и свертка

Что такое семантическая сегментация? Чем она отличается от instance segmentation? Как работает свертка в CNN?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Короткий ответ

Семантическая сегментация назначает класс каждому пикселю, не разделяя разные объекты одного класса. Instance segmentation дополнительно разделяет отдельные экземпляры. Свёртка применяет обучаемые ядра к локальным окнам по всем каналам и строит выходные карты признаков.

Подробный разбор

Semantic segmentation предсказывает класс для каждого пикселя: дорога, машина, человек, фон и так далее. Все пиксели одного класса попадают в одну semantic mask. Instance segmentation дополнительно различает отдельные объекты: две машины будут двумя разными масками, хотя класс один.

Сверточный слой проходит обучаемыми kernels по изображению. В каждой spatial position он берет локальное окно по всем input channels, считает взвешенную сумму, добавляет bias если он есть и записывает значения в output channels. Kernel size задает локальный receptive field, stride - шаг, padding - размер выхода, а число filters - число output channels.

Главная идея CNN - locality и weight sharing: один и тот же kernel ищет похожий локальный паттерн в разных местах изображения.

Типичные ошибки

  • Путать semantic и instance segmentation.
  • Описывать свертку как операцию только для одного канала.
  • Забывать stride и padding при обсуждении output shape.

Как сказать на собеседовании

  • Используйте пример с двумя машинами одного класса.
  • Для свертки упомяните и spatial window, и channel dimension.
4Вопрос8 мин

Токенизация, Bag of Words, TF-IDF и эмбеддинги

Что такое токенизация и зачем она нужна в задачах обработки текста? Чем отличаются Bag of Words, TF-IDF и эмбеддинги, например word2vec?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Короткий ответ

Токенизация разбивает текст на единицы и сопоставляет им идентификаторы. Bag of Words считает вхождения токенов, TF-IDF перевзвешивает частоты с учетом редкости слова в корпусе, а эмбеддинги учат плотные векторы, где слова с похожими контекстами оказываются ближе.

Подробный разбор

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

Bag of Words игнорирует порядок слов и представляет документ счетчиками токенов. TF-IDF остается разреженным представлением, но уменьшает вес очень частых слов и повышает вес слов, более специфичных для документа. Это простой и сильный базовый подход для линейных моделей.

Эмбеддинги вроде word2vec - плотные обучаемые векторы. Они не просто считают слова в документе, а учат геометрию по контекстам: слова, встречающиеся в похожих окружениях, получают близкие векторы. В современных трансформерах эмбеддинги становятся контекстными: одно и то же слово может иметь разные представления в разных предложениях.

Типичные ошибки

  • Считать токенизацию только split по пробелам.
  • Забывать, что BoW и TF-IDF теряют порядок слов.
  • Говорить, что word2vec дает contextual embeddings.

Как сказать на собеседовании

  • Приведите пример, где TF-IDF лучше raw counts.
  • Упомяните subword tokenization для современных моделей.
5Вопрос8 мин

Трансформеры против RNN в NLP

Слышали ли вы про модели-трансформеры? Чем они отличаются от RNN и почему они популярны в NLP?

Ответьте без подсказки

Сначала проговорите ответ вслух или тезисами.

Запишите черновик

Формулы, план решения, риски и примеры.

Сравните с разбором

Откройте разбор только после своей попытки.

Короткий ответ

RNN обрабатывает последовательность шаг за шагом через скрытое состояние. Трансформер использует self-attention: токены напрямую смотрят друг на друга через query/key/value, поэтому обучение лучше параллелится и проще ловить дальние зависимости.

Подробный разбор

RNN читает последовательность шаг за шагом и переносит информацию через скрытое состояние. Это естественно для последовательностей, но плохо параллелится по времени, а дальние зависимости могут теряться из-за длинной цепочки рекуррентных обновлений.

Трансформер считает self-attention поверх представлений токенов. Каждый токен формирует query, key и value; веса attention показывают, на какие другие токены смотреть. Multi-head attention дает несколько типов связей, а positional encodings или positional embeddings добавляют информацию о порядке.

Популярность трансформеров в NLP связана с хорошей параллелизацией обучения, прямым доступом к дальним зависимостям и сильной масштабируемостью. Цена - квадратичная стоимость обычного attention по длине контекста и потребность в больших данных и вычислениях.

Типичные ошибки

  • Забывать информацию о позиции токена.
  • Говорить, что трансформеры всегда дешевле: обычный attention дорогой на длинном контексте.
  • Описывать attention без query, key и value.

Как сказать на собеседовании

  • Сравните sequential recurrence и parallel self-attention.
  • Назовите и преимущества, и long-context cost.