EllipticEnvelope#
- класс sklearn.covariance.EllipticEnvelope(*, store_precision=True, assume_centered=False, support_fraction=None, contamination=0.1, random_state=None)[источник]#
Объект для обнаружения выбросов в наборе данных с гауссовым распределением.
Подробнее в Руководство пользователя.
- Параметры:
- store_precisionbool, по умолчанию=True
Указать, хранится ли оцененная точность.
- assume_centeredbool, по умолчанию=False
Если True, вычисляется поддержка устойчивых оценок местоположения и ковариации, и оценка ковариации пересчитывается на ее основе без центрирования данных. Полезно для работы с данными, среднее значение которых существенно равно нулю, но не точно нулю. Если False, устойчивые местоположение и ковариация вычисляются напрямую с помощью алгоритма FastMCD без дополнительной обработки.
- support_fractionfloat, по умолчанию=None
Доля точек, включаемых в опорное множество исходной оценки MCD. Если None, минимальное значение support_fraction будет использовано в алгоритме:
(n_samples + n_features + 1) / 2 * n_samples. Диапазон (0, 1).- contaminationfloat, по умолчанию=0.1
Количество загрязнения набора данных, т.е. доля выбросов в наборе данных. Диапазон (0, 0.5].
- random_stateint, экземпляр RandomState или None, по умолчанию=None
образцов в кластере. Средние значения обычно называются "центроидами" кластера; обратите внимание, что они, как правило, не являются точками из Глоссарий.
- Атрибуты:
- location_ndarray формы (n_features,)
Оцененное устойчивое местоположение.
- covariance_ndarray формы (n_features, n_features)
Оцененная робастная ковариационная матрица.
- precision_ndarray формы (n_features, n_features)
Оцененная псевдообратная матрица. (сохраняется только если store_precision равен True)
- support_ndarray формы (n_samples,)
Маска наблюдений, которые были использованы для вычисления робастных оценок местоположения и формы.
- offset_float
Смещение, используемое для определения решающей функции из исходных оценок. У нас есть соотношение:
decision_function = score_samples - offset_. Смещение зависит от параметра загрязнения и определяется таким образом, чтобы получить ожидаемое количество выбросов (выборок с функцией решения < 0) при обучении.Добавлено в версии 0.20.
- raw_location_ndarray формы (n_features,)
Необработанная робастная оценка местоположения до коррекции и повторного взвешивания.
- 1.3. Кернельная гребневая регрессияndarray формы (n_features, n_features)
Необработанная робастная оценка ковариации до коррекции и перевзвешивания.
- raw_support_ndarray формы (n_samples,)
Маска наблюдений, которые были использованы для вычисления сырых устойчивых оценок местоположения и формы, до коррекции и повторного взвешивания.
- dist_ndarray формы (n_samples,)
Расстояния Махаланобиса обучающего набора (на котором
fitназывается) наблюдения.- n_features_in_int
Количество признаков, замеченных во время fit.
Добавлено в версии 0.24.
- feature_names_in_ndarray формы (
n_features_in_,) Имена признаков, наблюдаемых во время fit. Определено только когда
Xимеет имена признаков, которые все являются строками.Добавлено в версии 1.0.
Смотрите также
EmpiricalCovarianceОценка ковариации методом максимального правдоподобия.
GraphicalLassoОценка разреженной обратной ковариации с оценщиком, использующим штраф L1.
LedoitWolfОценщик LedoitWolf.
MinCovDetМинимальный определитель ковариации (робастная оценка ковариации).
OASOracle Approximating Shrinkage Estimator.
ShrunkCovarianceОценщик ковариации с сжатием.
Примечания
Обнаружение выбросов на основе оценки ковариации может нарушиться или работать плохо в высокоразмерных настройках. В частности, всегда следует убедиться, что работа ведётся с
n_samples > n_features ** 2.Ссылки
[1]Rousseeuw, P.J., Van Driessen, K. “A fast algorithm for the minimum covariance determinant estimator” Technometrics 41(3), 212 (1999)
Примеры
>>> import numpy as np >>> from sklearn.covariance import EllipticEnvelope >>> true_cov = np.array([[.8, .3], ... [.3, .4]]) >>> X = np.random.RandomState(0).multivariate_normal(mean=[0, 0], ... cov=true_cov, ... size=500) >>> cov = EllipticEnvelope(random_state=0).fit(X) >>> # predict returns 1 for an inlier and -1 for an outlier >>> cov.predict([[0, 0], ... [3, 3]]) array([ 1, -1]) >>> cov.covariance_ array([[0.8102, 0.2736], [0.2736, 0.3330]]) >>> cov.location_ array([0.0769 , 0.0397])
- correct_covariance(данные)[источник]#
Применение поправки к оценкам минимального ковариационного определителя.
Коррекция с использованием асимптотического поправочного коэффициента, выведенного [Croux1999].
- Параметры:
- данныеarray-like формы (n_samples, n_features)
Матрица данных с p признаками и n образцами. Набор данных должен быть тем, который использовался для вычисления сырых оценок.
- Возвращает:
- covariance_correctedndarray формы (n_features, n_features)
Скорректированная робастная оценка ковариации.
Ссылки
[Croux1999]Функция влияния и эффективность оценщика матрицы рассеяния с минимальной ковариационной детерминантой, 1999, Journal of Multivariate Analysis, Volume 71, Issue 2, Pages 161-190
- decision_function(X)[источник]#
Вычислите решающую функцию для заданных наблюдений.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Матрица данных.
- Возвращает:
- decisionndarray формы (n_samples,)
Функция решения для образцов. Она равна смещенным расстояниям Махаланобиса. Порог для выброса равен 0, что обеспечивает совместимость с другими алгоритмами обнаружения выбросов.
- отличается от(comp_cov, norm='frobenius', масштабирование=True, квадрат=True)[источник]#
Вычислить среднеквадратичную ошибку между двумя оценщиками ковариации.
- Параметры:
- comp_covarray-like формы (n_features, n_features)
Ковариация для сравнения.
- norm{“frobenius”, “spectral”}, по умолчанию=”frobenius”
Тип нормы, используемой для вычисления ошибки. Доступные типы ошибок: - 'frobenius' (по умолчанию): sqrt(tr(A^t.A)) - 'spectral': sqrt(max(eigenvalues(A^t.A)) где A - ошибка
(comp_cov - self.covariance_).- масштабированиеbool, по умолчанию=True
Если True (по умолчанию), норма квадрата ошибки делится на n_features. Если False, норма квадрата ошибки не масштабируется.
- квадратbool, по умолчанию=True
Вычислять ли квадрат нормы ошибки или норму ошибки. Если True (по умолчанию), возвращается квадрат нормы ошибки. Если False, возвращается норма ошибки.
- Возвращает:
- результатfloat
Среднеквадратичная ошибка (в смысле нормы Фробениуса) между
selfиcomp_covоценки ковариации.
- fit(X, y=None)[источник]#
Обучить модель EllipticEnvelope.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Обучающие данные.
- yИгнорируется
Не используется, присутствует для согласованности API по соглашению.
- Возвращает:
- selfobject
Возвращает сам экземпляр.
- fit_predict(X, y=None, **kwargs)[источник]#
Выполнить подгонку на X и вернуть метки для X.
Возвращает -1 для выбросов и 1 для нормальных точек.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples, n_features)
Входные образцы.
- yИгнорируется
Не используется, присутствует для согласованности API по соглашению.
- **kwargsdict
Аргументы, передаваемые в
fit.Добавлено в версии 1.4.
- Возвращает:
- yndarray формы (n_samples,)
1 для нормальных объектов, -1 для выбросов.
- 6332()[источник]#
Получить маршрутизацию метаданных этого объекта.
Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.
- Возвращает:
- маршрутизацияMetadataRequest
A
MetadataRequestИнкапсуляция информации о маршрутизации.
- get_params(глубокий=True)[источник]#
Получить параметры для этого оценщика.
- Параметры:
- глубокийbool, по умолчанию=True
Если True, вернет параметры для этого оценщика и вложенных подобъектов, которые являются оценщиками.
- Возвращает:
- paramsdict
Имена параметров, сопоставленные с их значениями.
- get_precision()[источник]#
Геттер для матрицы точности.
- Возвращает:
- precision_array-like формы (n_features, n_features)
Матрица точности, связанная с текущим объектом ковариации.
- mahalanobis(X)[источник]#
Вычислить квадратные расстояния Махаланобиса для заданных наблюдений.
Для подробного примера того, как выбросы влияют на расстояние Махаланобиса, см. Робастная оценка ковариации и релевантность расстояний Махаланобиса.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Наблюдения, для которых мы вычисляем расстояния Махаланобиса. Предполагается, что наблюдения взяты из того же распределения, что и данные, использованные при обучении.
- Возвращает:
- distndarray формы (n_samples,)
Квадраты расстояний Махаланобиса наблюдений.
- predict(X)[источник]#
Предсказать метки (1 - нормальный, -1 - выброс) для X в соответствии с обученной моделью.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Матрица данных.
- Возвращает:
- is_inlierndarray формы (n_samples,)
Возвращает -1 для аномалий/выбросов и +1 для нормальных точек.
- reweight_covariance(данные)[источник]#
Перевзвесить оценки сырого определителя минимальной ковариации.
Перевзвешивание наблюдений с использованием метода Rousseeuw (эквивалентно удалению выбросов из набора данных перед вычислением оценок местоположения и ковариации), описанного в [RVDriessen].
Корректирует перевзвешенную ковариацию для согласованности с нормальным распределением, следуя [Croux1999].
- Параметры:
- данныеarray-like формы (n_samples, n_features)
Матрица данных с p признаками и n образцами. Набор данных должен быть тем, который использовался для вычисления сырых оценок.
- Возвращает:
- location_reweightedndarray формы (n_features,)
Перевзвешенная робастная оценка местоположения.
- covariance_reweightedndarray формы (n_features, n_features)
Перевзвешенная оценка робастной ковариации.
- support_reweightedndarray формы (n_samples,), dtype=bool
Маска наблюдений, которые были использованы для вычисления взвешенных устойчивых оценок местоположения и ковариации.
Ссылки
[RVDriessen]Быстрый алгоритм для оценщика минимального определителя ковариации, 1999, Американская статистическая ассоциация и Американское общество качества, TECHNOMETRICS
[Croux1999]Функция влияния и эффективность оценщика матрицы рассеяния с минимальной ковариационной детерминантой, 1999, Journal of Multivariate Analysis, Volume 71, Issue 2, Pages 161-190
- score(X, y, sample_weight=None)[источник]#
Возвращает среднюю точность на предоставленных тестовых данных и метках.
В многометочной классификации это точность подмножества, которая является строгой метрикой, поскольку требует для каждого образца правильного предсказания каждого набора меток.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Тестовые выборки.
- yarray-like формы (n_samples,) или (n_samples, n_outputs)
Истинные метки для X.
- sample_weightarray-like формы (n_samples,), по умолчанию=None
Веса выборок.
- Возвращает:
- scorefloat
Средняя точность self.predict(X) относительно y.
- score_samples(X)[источник]#
Вычислите отрицательные расстояния Махаланобиса.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Матрица данных.
- Возвращает:
- negative_mahal_distancesarray-like формы (n_samples,)
Противоположность расстояний Махаланобиса.
- set_params(**params)[источник]#
Установить параметры этого оценщика.
Метод работает как на простых оценщиках, так и на вложенных объектах (таких как
Pipeline). Последние имеют параметры видачтобы можно было обновить каждый компонент вложенного объекта.__ - Параметры:
- **paramsdict
Параметры оценщика.
- Возвращает:
- selfэкземпляр estimator
Экземпляр оценщика.
Примеры галереи#
Сравнение алгоритмов обнаружения аномалий для выявления выбросов на игрушечных наборах данных