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
fitaufgerufen 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
XMerkmalnamen hat, die alle Zeichenketten sind.Hinzugefügt in Version 1.0.
Siehe auch
EllipticEnvelopeObjekt zur Erkennung von Ausreißern in einem Gauß'schen Datensatz.
EmpiricalCovarianceMaximale Likelihood Kovarianz-Schätzer.
GraphicalLassoSchätzung der dünnen Kovarianz mit einem l1-penalisierten Schätzer.
GraphicalLassoCVSparse inverse Kovarianz mit kreuzvalidierter Wahl des l1-Penalties.
LedoitWolfLedoitWolf-Schätzer.
OASOracle Approximating Shrinkage Estimator.
ShrunkCovarianceKovarianz-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
selfundcomp_covKovarianzschä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_samplesdie Anzahl der Stichproben undn_featuresdie 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_testunter dem geschätzten Gaußschen Modell.Das Gaußsche Modell ist definiert durch seinen Mittelwert und seine Kovarianzmatrix, die jeweils durch
self.location_undself.covariance_dargestellt werden.- Parameter:
- X_testarray-like der Form (n_samples, n_features)
Testdaten, deren Wahrscheinlichkeit wir berechnen, wobei
n_samplesdie Anzahl der Stichproben undn_featuresdie Anzahl der Merkmale ist.X_testwird 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_testmitself.location_undself.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.
Galeriebeispiele#
Robuste Kovarianzschätzung und Relevanz von Mahalanobis-Distanzen