MinCovDet#
- класс sklearn.covariance.MinCovDet(*, store_precision=True, assume_centered=False, support_fraction=None, random_state=None)[источник]#
Minimum Covariance Determinant (MCD): робастный оцениватель ковариации.
Оценщик ковариации с минимальным детерминантом ковариации должен применяться к данным, распределенным по Гауссу, но может быть актуален и для данных, взятых из унимодального, симметричного распределения. Он не предназначен для использования с многомодальными данными (алгоритм, используемый для подгонки объекта MinCovDet, вероятно, не сработает в таком случае). Следует рассмотреть методы проекционного поиска для работы с многомодальными наборами данных.
Подробнее в Руководство пользователя.
- Параметры:
- 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].- random_stateint, экземпляр RandomState или None, по умолчанию=None
Определяет генератор псевдослучайных чисел для перемешивания данных. Передайте целое число для воспроизводимых результатов при многократных вызовах функции. См. Глоссарий.
- Атрибуты:
- raw_location_ndarray формы (n_features,)
Необработанная робастная оценка местоположения до коррекции и повторного взвешивания.
- 1.3. Кернельная гребневая регрессияndarray формы (n_features, n_features)
Необработанная робастная оценка ковариации до коррекции и перевзвешивания.
- raw_support_ndarray формы (n_samples,)
Маска наблюдений, которые были использованы для вычисления сырых устойчивых оценок местоположения и формы, до коррекции и повторного взвешивания.
- location_ndarray формы (n_features,)
Оцененное устойчивое местоположение.
Для примера сравнения сырых робастных оценок с истинным местоположением и ковариацией обратитесь к Робастная vs эмпирическая оценка ковариации.
- covariance_ndarray формы (n_features, n_features)
Оцененная робастная ковариационная матрица.
- precision_ndarray формы (n_features, n_features)
Оцененная псевдообратная матрица. (сохраняется только если store_precision равен True)
- 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.
Смотрите также
EllipticEnvelopeОбъект для обнаружения выбросов в наборе данных с гауссовым распределением.
EmpiricalCovarianceОценка ковариации методом максимального правдоподобия.
GraphicalLassoОценка разреженной обратной ковариации с оценщиком, использующим штраф L1.
GraphicalLassoCVРазреженная обратная ковариация с кросс-валидационным выбором штрафа l1.
LedoitWolfОценщик LedoitWolf.
OASOracle Approximating Shrinkage Estimator.
ShrunkCovarianceОценщик ковариации с сжатием.
Ссылки
[Rouseeuw1984]P. J. Rousseeuw. Least median of squares regression. J. Am Stat Ass, 79:871, 1984.
[Руссеув]A Fast Algorithm for the Minimum Covariance Determinant Estimator, 1999, American Statistical Association and the American Society for Quality, TECHNOMETRICS
[ButlerDavies]R. W. Butler, P. L. Davies и M. Jhun, Asymptotics For The Minimum Covariance Determinant Estimator, The Annals of Statistics, 1993, Vol. 21, No. 3, 1385-1400
Примеры
>>> import numpy as np >>> from sklearn.covariance import MinCovDet >>> from sklearn.datasets import make_gaussian_quantiles >>> real_cov = np.array([[.8, .3], ... [.3, .4]]) >>> rng = np.random.RandomState(0) >>> X = rng.multivariate_normal(mean=[0, 0], ... cov=real_cov, ... size=500) >>> cov = MinCovDet(random_state=0).fit(X) >>> 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
- отличается от(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)[источник]#
Обучить оценщик минимальной ковариационной детерминанты с помощью алгоритма FastMCD.
- Параметры:
- Xarray-like формы (n_samples, n_features)
Обучающие данные, где
n_samplesэто количество образцов иn_featuresэто количество признаков.- yИгнорируется
Не используется, присутствует для согласованности API по соглашению.
- Возвращает:
- selfobject
Возвращает сам экземпляр.
- 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,)
Квадраты расстояний Махаланобиса наблюдений.
- 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_test, y=None)[источник]#
Вычислить логарифмическое правдоподобие
X_testв рамках предполагаемой гауссовой модели.Гауссова модель определяется её средним значением и ковариационной матрицей, которые представлены соответственно
self.location_иself.covariance_.- Параметры:
- X_testarray-like формы (n_samples, n_features)
Тестовые данные, для которых вычисляется правдоподобие, где
n_samplesэто количество образцов иn_featuresэто количество признаков.X_testпредполагается, что он взят из того же распределения, что и данные, использованные при обучении (включая центрирование).- yИгнорируется
Не используется, присутствует для согласованности API по соглашению.
- Возвращает:
- resfloat
Логарифм правдоподобия
X_testсself.location_иself.covariance_как оценщики среднего значения и ковариационной матрицы гауссовой модели соответственно.
- set_params(**params)[источник]#
Установить параметры этого оценщика.
Метод работает как на простых оценщиках, так и на вложенных объектах (таких как
Pipeline). Последние имеют параметры видачтобы можно было обновить каждый компонент вложенного объекта.__ - Параметры:
- **paramsdict
Параметры оценщика.
- Возвращает:
- selfэкземпляр estimator
Экземпляр оценщика.
Примеры галереи#
Робастная оценка ковариации и релевантность расстояний Махаланобиса