Встречается на 5% собеседований по AI Engineer
Какие знаешь методы обнаружения аномалий во временных рядах
-
Статистические методы
- Z-score: аномалии при |z| > 3
- IQR: выбросы за пределами Q1 - 1.5IQR и Q3 + 1.5IQR
pythonfrom scipy import stats z_scores = stats.zscore(data) anomalies = np.where(np.abs(z_scores) > 3) -
Скользящие окна
- Среднее/медиана в окне ± k стандартных отклонений
pythonwindow_mean = data.rolling(window=10).mean() threshold = window_mean + 3*data.rolling(window=10).std()
-
Методы машинного обучения
- Isolation Forest
- One-Class SVM
pythonfrom sklearn.ensemble import IsolationForest model = IsolationForest(contamination=0.01) anomalies = model.fit_predict(data.reshape(-1,1)) -
Глубокое обучение
- Autoencoders: высокий reconstruction error → аномалия
- LSTM-модели для предсказания и сравнения с фактическими значениями
-
Специализированные библиотеки
- Facebook Prophet (встроенное обнаружение выбросов)
- PyOD (Python Outlier Detection)
Нюанс: для временных рядов важно учитывать автокорреляцию и сезонность. Простые статистические методы могут давать ложные срабатывания на трендах.
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы