Вопрос или проблема
Я занимаюсь обнаружением выбросов (условные выбросы) в многомерном временном ряду. Выбросы появляются каждые 2 недели $\pm$ 4 дня.
Как я могу учесть этот предварительный опыт в своих моделях, чтобы снизить количество ложноположительных результатов? В качестве альтернативы, как я должен фильтровать результаты своих моделей с учетом этих предварительных знаний?
Все мои модели используют скользящие окна и вычисляют аномальный коэффициент для серии точек.
Моя грубая идея: если выброс обнаружен, смоделировать гауссовское распределение, где $\mu$ устанавливается на 14 дней позже, а $\sigma$ имеет ширину 4 дня. Затем умножить будущие предсказания на PMF распределения. Предполагая, что модель имеет какой-то аномальный коэффициент, мы уменьшаем коэффициент для точек, которые вряд ли являются выбросами.
Одним из вариантов является добавление явного правила. В коде это правило будет условным оператором if-then. Это иногда называют “бизнес-логикой”.
Ответ или решение
Эффективное использование частоты выбросов в обнаружении аномалий в многомерных временных рядах
Обнаружение выбросов в многомерных временных рядах, особенно когда они возникают с определённой периодичностью, представляет собой интересную задачу, требующую специфических методов анализа и обработки данных. В вашем случае выбросы обнаруживаются каждые 2 недели с допустимым отклонением ±4 дня. Это знание можно и нужно использовать для уменьшения числа ложных срабатываний и повышения точности ваших моделей.
1. Введение в проблему
Обнаружение аномалий в данных может быть сложным процессом, особенно когда источники данных многомерны и имеют временные зависимости. Чаще всего, когда аномалии возникают с регулярной частотой, можно воспользоваться этой информацией, чтобы улучшить алгоритмы обнаружения выбросов.
2. Основные стратегии интеграции информации о частоте выбросов
2.1 Моделирование Гауссовского распределения
Ваше предложение по моделированию Гауссовского распределения, где среднее значение ((\mu)) установлено на 14 дней, а стандартное отклонение ((\sigma)) составляет 4 дня, — это разумный подход. Такой метод позволит оценить вероятность того, что данное значение является выбросом, основываясь на его временной зависимости от предыдущих аномалий.
Применение функции вероятности массы (pmf) для последующих предсказаний может значительно снизить вероятность ложных срабатываний. Для этого вам потребуется:
- Создать модель Гаусса на основе временных данных, чтобы избежать влияния случайных выбросов.
- Умножать скоринг аномалий на значение pmf для выравнивания оценки аномалий с учетом временного контекста.
2.2 Правила логики "если-то"
Вторым подходом является внедрение явных правил логики внутри вашей модели. Вы можете добавить условные операторы, которые будут проверять временные метки обнаруженных аномалий. Например, если аномалия обнаружена в дни, близкие к 14, 28, 42 дням и так далее, увеличивайте вес аномалии; если нет — понижайте. Это обеспечит дополнительный контроль за количеством ложных срабатываний.
3. Постобработка результатов
Но даже после внедрения вышеупомянутых методов, полезно создать систему постобработки для улучшения финальных результатов. Вы можете использовать следующие подходы:
- Фильтрация результатов: После генерации аномалий на основе вашего алгоритма, применяйте фильтрацию, основанную на вероятностной оценке, полученной от Гауссовского распределения. Это поможет удалить аномалии, которые не соответствуют вашему временно-структурному ожиданию.
- Кросс-проверка с другими параметрами: Вы можете использовать дополнительные параметры временного ряда, чтобы подтвердить или опровергнуть наличие аномалий. Это может сделать модели более адаптивными к изменениям в данных.
4. Заключение
Включение информации о частоте выбросов и использование постобработки для фильтрации результатов — это мощные инструменты, которые могут значительно увеличить точность и надёжность моделей обнаружения аномалий. Применение таких методов позволит вам значительно сократить число ложных положительных срабатываний и улучшить общее качество анализа данных.
Если вы будете следовать данным рекомендациям и адаптировать алгоритмы под специфику ваших временных рядов, вы сможете эффективно использовать известные паттерны выбросов для повышения качества своих моделей.