Nicht alle Metriken sind sich einig
In der vorherigen Übung hast du gesehen, dass sich nicht alle Metriken bei der Bestimmung der nächsten Nachbarn einig sind. Heißt das, dass sie auch bei Ausreißern uneins sein könnten? Das willst du testen. Du verwendest die gleichen Daten wie zuvor, speist sie dieses Mal aber in einen Local-Outlier-Factor-Ausreißer-Detector ein. Das Modul LocalOutlierFactor steht dir als lof zur Verfügung, und die Daten als features.
Diese Übung ist Teil des Kurses
Machine-Learning-Workflows in Python entwerfen
Anleitung zur Übung
- Erkenne Ausreißer in
featuresmit der Metrikeuclidean. - Erkenne Ausreißer in
featuresmit der Metrikhamming. - Erkenne Ausreißer in
featuresmit der Metrikjaccard. - Finde heraus, ob alle drei Metriken sich bei irgendeinem Ausreißer einig sind.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Compute outliers according to the euclidean metric
out_eucl = ____(metric='euclidean').fit_predict(features)
# Compute outliers according to the hamming metric
out_hamm = ____(metric=____).fit_predict(features)
# Compute outliers according to the jaccard metric
out_jacc = ____(____=____).____(features)
# Find if the metrics agree on any one datapoint
print(any(____ + ____ + ____ == ____))