Binomial и normal approximation
Как решать probability-задачу с большим числом независимых одинаковых испытаний?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Сумма независимых Bernoulli имеет binomial distribution с mean np и variance np(1-p); при больших n ее можно приближать нормальным распределением.
Подробный разбор
Если событие в каждом испытании независимо и имеет вероятность p, число успехов из n испытаний имеет Binomial(n, p). Его матожидание равно np, дисперсия np(1-p), стандартное отклонение sqrt(np(1-p)).
При больших n и не слишком экстремальном p применяется normal approximation: X примерно N(np, np(1-p)). Дальше вероятность оценивается через z-score и CDF нормального распределения. Для дискретной величины полезна continuity correction, если нужна более точная оценка.
Linear regression, normal equation и regularization
Как связаны matrix equation, least squares, gradient descent и L1/L2 regularization?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Least squares минимизирует ||Xw-y||^2. Closed form использует normal equation, но на практике часто нужны regularization, SVD/PCA или iterative optimization.
Подробный разбор
Линейная регрессия в matrix form решает задачу минимизации squared error. Если X full rank, closed-form решение можно записать через normal equation. Но обращение матрицы может быть нестабильным или дорогим, особенно при collinearity и большом числе признаков.
Ridge добавляет L2 penalty и стабилизирует решение, Lasso добавляет L1 и может занулять признаки, Elastic Net комбинирует оба эффекта. Gradient descent/SGD полезны на больших данных, а SVD/PCA помогают диагностировать rank deficiency и redundant features.
Вопрос
Когда выбирать линейную модель, а когда tree-based model или boosting?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Линейные модели просты, интерпретируемы и устойчивы на малых данных; деревья и boosting лучше ловят нелинейности и interactions, но требуют контроля overfitting.
Подробный разбор
Линейная модель сильна как baseline: быстро обучается, понятна, хорошо работает с разреженными признаками и проще интерпретируется. Ее слабость - ограниченная форма зависимости, если не добавить interactions, transformations или нелинейные признаки.
Tree-based models автоматически ловят thresholds, нелинейности и interactions. Random forest снижает variance через bagging, gradient boosting последовательно исправляет ошибки предыдущих деревьев. Цена - больше tuning, риск overfitting, сложнее extrapolation и необходимость аккуратной валидации по time/user/group split.
Ranking metrics и online guardrails
Как объяснить NDCG/recall и какие online guardrails нужны для ranking model?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Recall проверяет попадание релевантных объектов в top-K, NDCG учитывает позицию и graded relevance. Online нужны product metrics и system guardrails.
Подробный разбор
Recall@K показывает, попал ли релевантный объект в shortlist. NDCG@K учитывает порядок: релевантность выше в списке ценнее, а score нормируется на идеальный ranking. Если есть graded labels, NDCG обычно информативнее простого hit rate.
Online guardrails зависят от продукта: latency, RPS, memory, error rate, empty results, complaints, coverage, diversity и slices по новым пользователям/item. Product metrics вроде CTR, conversion, contact requests или revenue нужны отдельно, потому что offline ranking score не гарантирует бизнес-эффект.
Debugging плохой метрики модели
Что проверять, если ranking/model metric неожиданно низкая или модель выглядит overfit/underfit?
Сначала проговорите ответ вслух или тезисами.
Формулы, план решения, риски и примеры.
Откройте разбор только после своей попытки.
Показать разбор
Короткий ответ
Проверяются данные, leakage, split, labels, baseline, feature distributions, train/validation gap, slices, ablations и способность модели переобучиться на маленьком датасете.
Подробный разбор
Debug начинается с sanity checks: корректный target, нет leakage, split соответствует production, labels не перепутаны, baseline воспроизводится, метрика считается правильно. Затем смотрят train vs validation: большой gap указывает на overfitting, плохие обе метрики - на underfitting, слабые признаки или баг данных.
Полезны slice analysis, feature importance/ablations, distribution drift, проверка missing values, small-data overfit test и сравнение с простыми моделями. Для ranking отдельно проверяют candidate generation: reranker не исправит ситуацию, если нужный объект не попал в candidates.