MinCovDet#

class sklearn.covariance.MinCovDet(*, store_precision=True, assume_centered=False, support_fraction=None, random_state=None)[Quelle]#

Minimum Covariance Determinant (MCD): robuster Schätzer der Kovarianz.

Der Minimum Covariance Determinant (MCD) Schätzer für Kovarianz wird für Gaußverteilte Daten verwendet, kann aber auch für Daten relevant sein, die aus einer unimodalen, symmetrischen Verteilung stammen. Er ist nicht für multimodale Daten gedacht (der Algorithmus zur Anpassung eines MinCovDet-Objekts schlägt in solchen Fällen wahrscheinlich fehl). Für multimodale Datensätze sollten Projektionsverfolgungsverfahren in Betracht gezogen werden.

Lesen Sie mehr im Benutzerhandbuch.

Parameter:
store_precisionbool, Standard=True

Gibt an, ob die geschätzte Präzision gespeichert wird.

assume_centeredbool, Standard=False

Wenn True, wird die Unterstützung der robusten Orts- und Kovarianzschätzungen berechnet und eine Kovarianzschätzung daraus neu berechnet, ohne die Daten zu zentrieren. Nützlich für die Arbeit mit Daten, deren Mittelwert signifikant Null ist, aber nicht exakt Null. Wenn False, werden die robusten Orts- und Kovarianzschätzungen direkt mit dem FastMCD-Algorithmus ohne zusätzliche Behandlung berechnet.

support_fractionfloat, Standard=None

Der Anteil der Punkte, die in die Unterstützung der rohen MCD-Schätzung einbezogen werden sollen. Standard ist None, was impliziert, dass der Minimalwert von support_fraction innerhalb des Algorithmus verwendet wird: (n_samples + n_features + 1) / 2 * n_samples. Der Parameter muss im Bereich (0, 1] liegen.

random_stateint, RandomState-Instanz oder None, default=None

Bestimmt den Pseudozufallszahlengenerator zum Mischen der Daten. Geben Sie eine Ganzzahl für reproduzierbare Ergebnisse über mehrere Funktionsaufrufe hinweg an. Siehe Glossar.

Attribute:
raw_location_ndarray von Form (n_features,)

Der rohe robuste geschätzte Ort vor Korrektur und Neubewichtung.

raw_covariance_ndarray von Form (n_features, n_features)

Die rohe robuste geschätzte Kovarianz vor Korrektur und Neubewichtung.

raw_support_ndarray von Form (n_samples,)

Eine Maske der Beobachtungen, die zur Berechnung der rohen robusten Schätzungen für Ort und Form verwendet wurden, vor Korrektur und Neubewichtung.

location_ndarray der Form (n_features,)

Geschätzter robuster Ort.

Für ein Beispiel zum Vergleich roher robuster Schätzungen mit dem tatsächlichen Ort und der tatsächlichen Kovarianz siehe Robuste vs. empirische Kovarianzschätzung.

covariance_ndarray der Form (n_features, n_features)

Geschätzte robuste Kovarianzmatrix.

precision_ndarray der Form (n_features, n_features)

Geschätzte inverse Pseudomatrix. (nur gespeichert, wenn store_precision True ist)

support_ndarray von Form (n_samples,)

Eine Maske der Beobachtungen, die zur Berechnung der robusten Schätzungen für Ort und Form verwendet wurden.

dist_ndarray von Form (n_samples,)

Mahalanobis-Distanzen der Trainingsdaten (auf denen fit aufgerufen wird).

n_features_in_int

Anzahl der während des fits gesehenen Merkmale.

Hinzugefügt in Version 0.24.

feature_names_in_ndarray mit Form (n_features_in_,)

Namen der während fit gesehenen Merkmale. Nur definiert, wenn X Merkmalnamen hat, die alle Zeichenketten sind.

Hinzugefügt in Version 1.0.

Siehe auch

EllipticEnvelope

Objekt zur Erkennung von Ausreißern in einem Gauß'schen Datensatz.

EmpiricalCovariance

Maximale Likelihood Kovarianz-Schätzer.

GraphicalLasso

Schätzung der dünnen Kovarianz mit einem l1-penalisierten Schätzer.

GraphicalLassoCV

Sparse inverse Kovarianz mit kreuzvalidierter Wahl des l1-Penalties.

LedoitWolf

LedoitWolf-Schätzer.

OAS

Oracle Approximating Shrinkage Estimator.

ShrunkCovariance

Kovarianz-Schätzer mit Schrumpfung.

Referenzen

[Rouseeuw1984]

P. J. Rousseeuw. Least median of squares regression. J. Am Stat Ass, 79:871, 1984.

[Rousseeuw]

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 and M. Jhun, Asymptotics For The Minimum Covariance Determinant Estimator, The Annals of Statistics, 1993, Vol. 21, No. 3, 1385-1400

Beispiele

>>> 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(data)[Quelle]#

Wendet eine Korrektur auf rohe Minimum Covariance Determinant-Schätzungen an.

Korrektur mittels des asymptotischen Korrekturfaktors, der von [Croux1999] abgeleitet wurde.

Parameter:
dataarray-like of shape (n_samples, n_features)

Die Datenmatrix mit p Merkmalen und n Stichproben. Der Datensatz muss derjenige sein, der zur Berechnung der rohen Schätzungen verwendet wurde.

Gibt zurück:
covariance_correctedndarray von Form (n_features, n_features)

Korrigierte robuste Kovarianzschätzung.

Referenzen

[Croux1999]

Influence Function and Efficiency of the Minimum Covariance Determinant Scatter Matrix Estimator, 1999, Journal of Multivariate Analysis, Volume 71, Issue 2, Pages 161-190

error_norm(comp_cov, norm='frobenius', scaling=True, squared=True)[Quelle]#

Berechnet den mittleren quadratischen Fehler zwischen zwei Kovarianzschätzern.

Parameter:
comp_covarray-like der Form (n_features, n_features)

Die zu vergleichende Kovarianz.

norm{„frobenius“, „spectral“}, Standard=„frobenius“

Die Art der Norm, die zur Berechnung des Fehlers verwendet wird. Verfügbare Fehlertypen: - „frobenius“ (Standard): sqrt(tr(A^t.A)) - „spectral“: sqrt(max(Eigenwerte(A^t.A))), wobei A der Fehler ist (comp_cov - self.covariance_).

scalingbool, Standard=True

Wenn True (Standard), wird die quadrierte Fehlernorm durch n_features geteilt. Wenn False, wird die quadrierte Fehlernorm nicht skaliert.

squaredbool, Standard=True

Ob die quadrierte Fehlernorm oder die Fehlernorm berechnet werden soll. Wenn True (Standard), wird die quadrierte Fehlernorm zurückgegeben. Wenn False, wird die Fehlernorm zurückgegeben.

Gibt zurück:
resultfloat

Der mittlere quadratische Fehler (im Sinne der Frobenius-Norm) zwischen self und comp_cov Kovarianzschätzern.

fit(X, y=None)[Quelle]#

Passt einen Minimum Covariance Determinant mit dem FastMCD-Algorithmus an.

Parameter:
Xarray-like der Form (n_samples, n_features)

Trainingsdaten, wobei n_samples die Anzahl der Stichproben und n_features die Anzahl der Merkmale ist.

yIgnoriert

Wird nicht verwendet, ist aber aus Gründen der API-Konsistenz per Konvention vorhanden.

Gibt zurück:
selfobject

Gibt die Instanz selbst zurück.

get_metadata_routing()[Quelle]#

Holt das Metadaten-Routing dieses Objekts.

Bitte prüfen Sie im Benutzerhandbuch, wie der Routing-Mechanismus funktioniert.

Gibt zurück:
routingMetadataRequest

Ein MetadataRequest, der Routing-Informationen kapselt.

get_params(deep=True)[Quelle]#

Holt Parameter für diesen Schätzer.

Parameter:
deepbool, default=True

Wenn True, werden die Parameter für diesen Schätzer und die enthaltenen Unterobjekte, die Schätzer sind, zurückgegeben.

Gibt zurück:
paramsdict

Parameternamen, zugeordnet ihren Werten.

get_precision()[Quelle]#

Getter für die Präzisionsmatrix.

Gibt zurück:
precision_array-like der Form (n_features, n_features)

Die Präzisionsmatrix, die dem aktuellen Kovarianzobjekt zugeordnet ist.

mahalanobis(X)[Quelle]#

Berechnet die quadrierten Mahalanobis-Abstände gegebener Beobachtungen.

Ein detailliertes Beispiel dafür, wie Ausreißer den Mahalanobis-Abstand beeinflussen, finden Sie unter Robuste Kovarianzschätzung und die Relevanz von Mahalanobis-Abständen.

Parameter:
Xarray-like der Form (n_samples, n_features)

Die Beobachtungen, deren Mahalanobis-Abstände wir berechnen. Es wird davon ausgegangen, dass die Beobachtungen aus derselben Verteilung stammen wie die in fit verwendeten Daten.

Gibt zurück:
distndarray der Form (n_samples,)

Quadrierte Mahalanobis-Abstände der Beobachtungen.

reweight_covariance(data)[Quelle]#

Neubewertung roher Minimum Covariance Determinant-Schätzungen.

Neubewertet Beobachtungen mit der Methode von Rousseeuw (entspricht dem Löschen von Ausreißern aus dem Datensatz vor der Berechnung von Orts- und Kovarianzschätzungen), wie in [RVDriessen] beschrieben.

Korrigiert die neu gewichtete Kovarianz, um bei der Normalverteilung konsistent zu sein, nach [Croux1999].

Parameter:
dataarray-like of shape (n_samples, n_features)

Die Datenmatrix mit p Merkmalen und n Stichproben. Der Datensatz muss derjenige sein, der zur Berechnung der rohen Schätzungen verwendet wurde.

Gibt zurück:
location_reweightedndarray von Form (n_features,)

Neu gewichtete robuste Ortschätzung.

covariance_reweightedndarray von Form (n_features, n_features)

Neu gewichtete robuste Kovarianzschätzung.

support_reweightedndarray von Form (n_samples,), dtype=bool

Eine Maske der Beobachtungen, die zur Berechnung der neu gewichteten robusten Orts- und Kovarianzschätzungen verwendet wurden.

Referenzen

[RVDriessen]

A Fast Algorithm for the Minimum Covariance Determinant Estimator, 1999, American Statistical Association and the American Society for Quality, TECHNOMETRICS

[Croux1999]

Influence Function and Efficiency of the Minimum Covariance Determinant Scatter Matrix Estimator, 1999, Journal of Multivariate Analysis, Volume 71, Issue 2, Pages 161-190

score(X_test, y=None)[Quelle]#

Berechnet die Log-Wahrscheinlichkeit von X_test unter dem geschätzten Gaußschen Modell.

Das Gaußsche Modell ist definiert durch seinen Mittelwert und seine Kovarianzmatrix, die jeweils durch self.location_ und self.covariance_ dargestellt werden.

Parameter:
X_testarray-like der Form (n_samples, n_features)

Testdaten, deren Wahrscheinlichkeit wir berechnen, wobei n_samples die Anzahl der Stichproben und n_features die Anzahl der Merkmale ist. X_test wird angenommen, aus derselben Verteilung zu stammen wie die in fit verwendeten Daten (einschließlich Zentrierung).

yIgnoriert

Wird nicht verwendet, ist aber aus Gründen der API-Konsistenz per Konvention vorhanden.

Gibt zurück:
resfloat

Die Log-Wahrscheinlichkeit von X_test mit self.location_ und self.covariance_ als Schätzern für den Mittelwert und die Kovarianzmatrix des Gaußschen Modells.

set_params(**params)[Quelle]#

Setzt die Parameter dieses Schätzers.

Die Methode funktioniert sowohl bei einfachen Schätzern als auch bei verschachtelten Objekten (wie Pipeline). Letztere haben Parameter der Form <component>__<parameter>, so dass es möglich ist, jede Komponente eines verschachtelten Objekts zu aktualisieren.

Parameter:
**paramsdict

Schätzer-Parameter.

Gibt zurück:
selfestimator instance

Schätzer-Instanz.