Вопрос или проблема
Работаю над задачей обнаружения аномалий. Я использую автоэнкодер для устранения шума из заданного ввода. Я обучал сеть на нормальных данных (свободных от аномалий), поэтому модель предсказывает нормальное состояние заданного ввода. Нормализация входных данных является важной для моего набора данных.
Проблема с нормализацией заключается в том, что если значение шума очень высоко по сравнению с данными всего набора, предсказание следует за шумом. Например, если я добавлю шум (дельта=300) к 80% данных и произведу нормализацию на наборе данных, среднее значение которого равно 250 и стандартное отклонение 79. Здесь шумные точки данных (80% от всего набора данных) превышают 300. После нормализации я подаю этот набор данных в модель, и предсказание следует за шумом, выдавая ошибочный результат. Это происходит из-за масштабирования признаков. Когда я добавляю шум к большинству точек данных, модель рассматривает эти точки как нормальные данные, а остальные как аномальные.
В процессе обратного масштабирования я не могу использовать минимальные и максимальные значения моего ввода для обратного масштабирования предсказания, иначе оно будет следовать за шумом в наборе данных.
Какой же правильный способ выполнить масштабирование признаков в задаче устранения шума?
Мин-Макс масштабирование не подойдет для вашей проблемы, как вы уже сказали. Для шумных данных масштабирование в соответствии с диапазоном квантилей должно работать лучше.
После масштабирования вы также можете попробовать обрезать ваши данные до $[-1,1]$, как это часто делается в методах обучения с противодействием.
.
Ответ или решение
Для эффективного применения нормализации данных в задаче денойзинга с использованием автокодировщика, необходимо учитывать несколько важных аспектов, охватывающих методологию обработки данных и специфику постановки задачи.
Описание проблемы
Вы работаете над задачей обнаружения аномалий, используя автокодировщик для устранения шума из исходных данных. Сетевая модель была обучена на "нормальных" данных, то есть данных без аномалий, с целью предсказывать нормальное состояние предоставленного ввода. Проблема, описанная вами, связана с тем, что при добавлении значительного шума (дельта=300) к данным, нормализация некорректно масштабирует эти данные, вызванные шумом, в результате чего модель воспринимает их как нормальные.
Проблемы стандартной нормализации
Стандартные методы нормализации, такие как Min-Max Scaling, неэффективны в вашем случае, так как они восприимчивы к выбросам и аномальным значениям. Когда шум существенно превышает среднее значение данных, нормализация с использованием среднего и стандартного отклонения может резко смещать центр данных, что приводит к неверным прогнозам.
Рекомендации по нормализации
-
Использование устойчивой нормализации (Robust Scaling):
- Применение
RobustScaler
из библиотеки scikit-learn, который использует интерквартильный диапазон (межквартильный размах) для масштабирования данных, помогает минимизировать влияние выбросов и шума. Это позволяет лучше адаптироваться к данным с аномальными распределениями.
- Применение
-
Ограничение данных (Clipping):
- Рекомендуется ограничить данные в диапазоне [-1, 1] после нормализации. Это часто используется в методах противодействия влиянию шума и помогает стабилизировать данные в процессе обучения.
-
Обратный перевод (Inverse Scaling):
- При обратном преобразовании данных после нахождения аномалий избегайте использования минимальных и максимальных значений, которые учитывали бы включённый шум. Вместо этого используйте значения, которые отражают только "нормальное" состояние данных.
Заключение
Выполнение правильной нормализации для задачи денойзинга с автокодировщиком требует применения устойчивых методов масштабирования, таких как RobustScaler
, с дополнительными приемами, такими как ограничение значений. Это минимизирует последствия шума и помогает более достоверно выявлять аномальные данные. Такой подход обеспечивает высокую точность предсказаний и устойчивость модели, что критично в задачах на основе аномалий.
Подходя к задаче с профессионализмом и тщательностью, эти рекомендации помогут оптимизировать процесс денойзинга и дать вашей модели возможность обоснованно анализировать данные.