сеньорчикОткрыть в Telegram
← все вопросывопросы для собеседований · Нейросети

Вопросы по нейросетям на собеседовании

Вопросы по нейросетям редко про архитектуры из статей. Гораздо чаще про обучение: почему модель не сходится, что делает нормализация батча и как вы боролись с переобучением на своих данных.

55 вопросов в банке·4 подтем·ниже разбор 9

Из чего состоит тема

Так тема разложена в тренажёре: движок ведёт прогресс по каждой подтеме отдельно и возвращает те, где вы ошибаетесь.

Разборы подтем

Конспект по каждой: что это, как отвечать вслух, на чём валятся, плюс вопросы для самопроверки.

Примеры вопросов с разбором

  1. #architectures1 / 9
    Зачем в ResNet нужны skip-соединения (residual-блоки)?
    A)Главная цель skip-связей — сократить общее число обучаемых параметров сети
    B)Позволяют пропускать часть слоёв на инференсе и так ускорять предсказание
    C)Дают градиенту короткий путь и учат поправку F(x) к identity
    D)Заменяют операцию пулинга в свёрточной сети
    показать ответ и разбор
    +C)Дают градиенту короткий путь и учат поправку F(x) к identity

    // разбор: До ResNet сети глубже ~20 слоёв деградировали даже на трейне — проблема оптимизации, не переобучения. Тождественный путь x + F(x) даёт градиенту магистраль без затухания, а «выучить ноль» проще, чем выучить identity. Идея стала универсальной: residual-связи — каркас и трансформеров.

  2. #backprop_optimization2 / 9
    Что такое проблема затухающих градиентов и в каких сетях она возникала особенно остро?
    A)Наоборот, градиенты неограниченно растут по модулю, и обучение расходится в бесконечность
    B)Ошибки округления float32 накапливаются при проходе через десятки слоёв сети
    C)Множители <1 по слоям экспоненциально гасят градиент к ранним слоям
    D)Проблема затрагивает выходной слой, а скрытые слои учатся нормально
    показать ответ и разбор
    +C)Множители <1 по слоям экспоненциально гасят градиент к ранним слоям

    // разбор: Цепное правило перемножает якобианы всех слоёв: если множители < 1 (насыщенные сигмоиды/tanh), градиент экспоненциально затухает с глубиной. Ответы индустрии: ReLU-семейство, аккуратная инициализация (He/Xavier), residual-связи (ResNet), нормализация, а в рекуррентных сетях — LSTM/GRU с гейтами.

  3. #regularization_dl3 / 9
    Как работает dropout и почему на инференсе его выключают?
    A)Постепенно снижает learning rate по заранее заданному расписанию к концу обучения
    B)Удаляет наименее важные по модулю веса сети — это прунинг
    C)Добавляет гауссов шум ко входным данным перед подачей в первый слой
    D)Зануляет случайные активации на трейне; на инференсе — все нейроны с масштабом
    показать ответ и разбор
    +D)Зануляет случайные активации на трейне; на инференсе — все нейроны с масштабом

    // разбор: Dropout можно видеть как обучение экспоненциального ансамбля подсетей с общими весами. При инференсе усредняем ансамбль приближённо: включаем всё и масштабируем (в современных фреймворках — inverted dropout уже на трейне). Бонус-вопрос собеса: MC-dropout — оставить его включённым для оценки неопределённости.

  4. #training_practice4 / 9
    Лосс на трейне скачет и периодически взрывается до NaN. Какая последовательность действий наиболее разумна?
    A)Снизить lr, включить clipping, проверить данные и масштаб входов
    B)Увеличить learning rate, чтобы быстрее проскочить плохую зону лосса и выйти из неё
    C)Удалить батч-нормализацию из всех слоёв и переобучить модель с нуля
    D)Увеличить размер модели, дав ей больше ёмкости для стабилизации
    показать ответ и разбор
    +A)Снизить lr, включить clipping, проверить данные и масштаб входов

    // разбор: NaN обычно рождается из exploding gradients или численных краёв (log/деление на ноль, переполнение в fp16). Чек-лист: lr вниз или warmup, clip_grad_norm, санитайз данных и таргетов, численно стабильные реализации (log-sum-exp, встроенный CrossEntropyLoss), при mixed precision — loss scaling.

  5. #architectures5 / 9
    Почему свёрточные сети эффективнее полносвязных на изображениях?
    A)Свёртка точнее полносвязной сети на большинстве данных и задач
    B)Полносвязная сеть не умеет принимать двумерный вход
    C)Фильтры свёртки заданы заранее и не требуют обучения на данных
    D)Локальность и общие фильтры → эквивариантность и мало параметров
    показать ответ и разбор
    +D)Локальность и общие фильтры → эквивариантность и мало параметров

    // разбор: Полносвязный слой на 224×224×3 потребовал бы сотни миллионов весов и учил бы каждый пиксель отдельно. Свёртка кодирует индуктивные смещения зрения: локальные паттерны важнее глобальных связей, а «кошачье ухо» выглядит одинаково в любом углу кадра. Меньше параметров — лучше обобщение при тех же данных.

  6. #backprop_optimization6 / 9
    Чем Adam отличается от SGD с momentum и почему Adam часто выбирают по умолчанию?
    A)Адаптирует шаг каждому параметру по средним градиента и его квадрата
    B)Adam не использует градиенты, а подбирает шаг случайным поиском по пространству
    C)Adam приходит в глобальный минимум даже на невыпуклой задаче
    D)SGD с momentum быстрее Adam на большинстве данных и архитектур сети
    показать ответ и разбор
    +A)Адаптирует шаг каждому параметру по средним градиента и его квадрата

    // разбор: Первый момент — направление (аналог momentum), второй — поэлементный масштаб шага: редкие/маленькие градиенты получают больший относительный шаг. Отсюда быстрая сходимость «из коробки». Нюансы для сеньора: правильный weight decay — это AdamW; на CV-задачах тюненный SGD+momentum иногда обобщает лучше.

  7. #regularization_dl7 / 9
    Batch normalization: что именно она делает и какой известный практический эффект даёт помимо стабилизации обучения?
    A)Приводит веса каждого слоя к единичной евклидовой норме перед умножением на вход
    B)Нормализует активации по батчу (0/1) с обучаемыми scale/shift
    C)Сортирует примеры внутри батча по возрастанию сложности перед прямым проходом
    D)Заменяет нелинейную функцию активации слоя на линейную ради устойчивости
    показать ответ и разбор
    +B)Нормализует активации по батчу (0/1) с обучаемыми scale/shift

    // разбор: BN выравнивает распределения активаций, сглаживая ландшафт оптимизации; шум оценок среднего/дисперсии по мини-батчу даёт лёгкий регуляризующий эффект. Грабли: маленькие батчи (статистики шумят — берут GroupNorm/LayerNorm), различие train/eval режимов — классический источник багов, и в трансформерах стандарт LayerNorm, а не BN.

  8. #training_practice8 / 9
    Fine-tuning предобученной модели на маленьком датасете: какой набор практик снижает риск катастрофического забывания и переобучения?
    A)Обучать все слои с большим learning rate с нуля, игнорируя предобученные веса
    B)Малый lr, постепенная разморозка, ранняя остановка или LoRA/adapters
    C)Удалить предобученные веса и раздуть датасет аугментациями в сто раз
    D)Обучать лишь функцию активации, оставив веса замороженными
    показать ответ и разбор
    +B)Малый lr, постепенная разморозка, ранняя остановка или LoRA/adapters

    // разбор: Нижние слои несут универсальные признаки — их трогают осторожно (freeze → gradual unfreeze, discriminative lr). Большой lr стирает предобученные представления за несколько шагов. PEFT-методы (LoRA/adapters) обучают <1% параметров: дёшево, а базовые веса нетронуты — сейчас это дефолт для LLM и вижн-моделей.

  9. #architectures9 / 9
    Почему LSTM справляется с длинными зависимостями лучше ванильной RNN?
    A)Аддитивная ячейка памяти и гейты проводят градиент без затухания
    B)У LSTM просто больше слоёв, чем у ванильной RNN, по определению
    C)LSTM обрабатывает последовательность сразу в обоих направлениях времени
    D)LSTM заменяет рекуррентность свёртками по временной оси
    показать ответ и разбор
    +A)Аддитивная ячейка памяти и гейты проводят градиент без затухания

    // разбор: В ванильной RNN градиент умножается на W^T на каждом шаге — экспоненциальное затухание/взрыв. В LSTM состояние ячейки обновляется аддитивно (c_t = f⊙c_{t−1} + i⊙ĉ), и при открытом forget-гейте градиент проходит почти без искажений. Гейты учатся, что помнить и что забывать. Тот же принцип аддитивных магистралей — в residual-связях.

это 9 из 55

Ещё 46 вопросов по теме — в тренажёре, с движком повторения

Прочитать разбор и ответить самому — разные навыки. В Сеньорчике вопросы идут сессиями, а движок возвращает подтемы, где вы ошибаетесь, пока они не начнут отскакивать. Бесплатно, лимит по энергии.

Частые вопросы