Общее
- Какие способы регуляризации нейронов ты знаешь?
- Как происходит регуляризация в линейных моделях?
- Какие улучшения градиентного спуска знаешь?
- Расскажи про Rprop, RMSprop, momentum, Adam. Чем отличаются, в чём идея?
- Как работает BatchNorm, какие у него есть режимы, что делает? Какие обучаемые параметры? Можно ли подать одно изображение на вход?
- Как работает Dropout? Какие у него есть режимы? Что делает?
- Как подбирать learning rate? Что такое LR scheduler?
- Что такое warmup нейросети?
- Почему residual/skip connection позволяет делать глубокую сеть?
- Как Softmax преобразует логиты в вероятности?
- Расскажи про трансформер: как работает, что внутри происходит?
- Что такое self attention слой, формула? Разница между query, keys, values
- Какая формула у self attention?
- Чем отличаются mask attention, cross attention, full attention?
- Что такое multihead attention?
- Как разделяем последовательность между головами?
- Что такое attention score?
- Как растёт сложность вычислений от увеличения входной последовательности?
- Что обучается в трансформере?
- Как получаем финальный ответ в трансформере?
- Опиши архитектуру трансформера (encoder, decoder, attention, FFN, residual + LayerNorm).
- Что такое механизм внимания? Зачем нужны Q, K, V?
- Зачем делится на корень из d_k в attention?
- Зачем нужно маскирование (masked multi-head attention) в decoder?
- Как декодер предсказывает следующее слово (linear → softmax → argmax)?
- Как BERT учитывает позиции токенов?
- Что такое RoPE (Rotary Position Encoding)? Как он работает?
- Что происходит внутри attention-головы (Q · Kᵀ / √d_k → softmax → · V)?
- Какие улучшения архитектуры для ускорения обучения знаешь?
- Расскажи про Flash Attention
- Расскажи про KV cache
- Что такое квантизация, как она работает? Какие есть виды (линейная, natural float, product quantization)?
- Как работает спекулятивный декодинг? За счёт чего конкретно происходит ускорение инференса?
- Какие есть архитектурные оптимизации attention: multi-query attention, grouped-query attention?
- Какие оптимизации attention существуют с точки зрения инференса (flash attention, скользящие окна)?
- FP16 против BF16 — чем технически отличается BF16 и почему он лучше?
- Сколько видеопамяти нужно для локального запуска LLM на 7B параметров? От чего зависит оценка?
- Как повысить эффективность батчевой обработки большого потока текстов через LLM при фиксированном размере батча?
- Как динамически подбирать размер батча, чтобы не переполнять видеопамять?
LoRA
- Что такое LoRA? Зачем нужна?
- Как мёрджим веса?
- Как инициализируются матрицы A и B в LoRA? Почему так?
- К каким слоям можем применить LoRA?
- Расскажи теорию LoRA: что такое ранг, размерность матриц A и B.
- Какие слои обычно затрагивает LoRA в трансформере (Q, K, V, FFN)?
- Какие гиперпараметры подбираются через Optuna для LoRA (rank, alpha, learning rate, warmup)?
- Какие методы PEFT существуют (LoRA, P-tuning, prompt tuning)? Что считается PEFT?
- В каких случаях LoRA выигрывает у полного SFT?
- При использовании LoRA с рангом r как изменяется количество обучаемых параметров по сравнению с полным дообучением весов матрицы?
- Какую роль играет параметр alpha в методе LoRA?
- Что представляет собой концепция Double Quantization в алгоритме QLoRA?
- Какие плюсы даёт LoRA-адаптер для LLM-классификатора (качество, фиксированный формат ответа, сокращение инструкции в промпте)?
- Какой основной минус адаптера в продакшене (нестандартный инференс, отдельная модель под каждую задачу, занятая карта)?
Распределённое обучение
- Какие виды знаешь?
- Расскажи про DDP
- Расскажи про FSDP
- Расскажи про DeepSpeed Zero 1,2,3
- Сравни алгоритмы выше и расскажи, в каком случае какой стоит применять?
Практические
- Что такое переобучение? Как с ним бороться?
- Почему Adam быстрее сходится? Чем он отличается от SGD?
- Как обучаются нейронки? Полный процесс от инициализации до финального результата.
- Какой оптимайзер выбрать для обучения с дисбалансом данных?
- Как выявить переобучение? Какие метрики помогают?
- Что будет, если подать batch=1 на BatchNorm?
- Что происходит в model(x) vs model.forward(x)?
- Что происходит при вызове
model.eval() в PyTorch?
- Что происходит при
torch.no_grad()? Чем это отличается от model.eval()?
- Что будет, если сделать
torch.no_grad() без model.eval() или наоборот?