Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen StandardScaler, MinMaxScaler, MaxAbsScaler | Datenvorverarbeitung mit Scikit-Learn
ML-Einführung Mit Scikit-Learn

bookStandardScaler, MinMaxScaler, MaxAbsScaler

Es gibt drei gängige Ansätze zur Skalierung von Daten:

  • MinMaxScaler: skaliert Merkmale auf einen Bereich von [0, 1];
  • MaxAbsScaler: skaliert Merkmale so, dass der maximale Absolutwert 1 ist (die Daten liegen somit garantiert im Bereich [-1, 1]);
  • StandardScaler: standardisiert Merkmale, sodass der Mittelwert 0 und die Varianz 1 beträgt.

Zur Veranschaulichung der Funktionsweise von Scaler werden die Merkmale 'culmen_depth_mm' und 'body_mass_g' aus dem penguins dataset betrachtet. Diese Merkmale können geplottet werden, um ihre Skalen zu beobachten.

MinMaxScaler

Der MinMaxScaler arbeitet, indem er den Minimalwert subtrahiert (damit die Werte bei Null beginnen) und anschließend durch (x_max - x_min) teilt, sodass der Wert kleiner oder gleich 1 ist.

Hier ist das GIF, das zeigt, wie der MinMaxScaler funktioniert:

MaxAbsScaler

Der MaxAbsScaler arbeitet, indem er den maximalen Absolutwert ermittelt und jeden Wert durch diesen teilt. Dadurch wird sichergestellt, dass der maximale Absolutwert 1 ist.

StandardScaler

Die Idee des StandardScaler stammt aus der Statistik. Er funktioniert, indem er den Mittelwert subtrahiert (um die Werte um Null zu zentrieren) und durch die Standardabweichung teilt (um die Varianz auf 1 zu setzen).

Note
Hinweis

Falls Sie nicht wissen, was Mittelwert, Standardabweichung und Varianz sind, können Sie unseren Learning Statistics with Python Kurs besuchen. Dieses Wissen ist jedoch nicht zwingend erforderlich, um fortzufahren.

Hier ein Programmierbeispiel mit MinMaxScaler. Andere Skalierer werden auf die gleiche Weise angewendet.

12345678910
import pandas as pd from sklearn.preprocessing import MinMaxScaler df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/penguins_imputed_encoded.csv') # Assign X,y variables X, y = df.drop('species', axis=1), df['species'] # Initialize a MinMaxScaler object and transform the X minmax = MinMaxScaler() X = minmax.fit_transform(X) print(X)
copy

Die Ausgabe ist nicht besonders ansprechend, da Skalierer die Daten in ein numpy-Array umwandeln. Mit Pipelines stellt dies jedoch kein Problem dar.

Note
Hinweis

Es sollten nur die Merkmalsspalten (die X-Variable) skaliert werden. Eine Skalierung der Zielvariable ist nicht erforderlich, da dies den Prozess der inversen Transformation erschweren würde.

Welchen Skalierer verwenden?

Ein StandardScaler ist empfindlicher gegenüber Ausreißern und daher weniger als Standardskalierer geeignet. Falls eine Alternative zum StandardScaler bevorzugt wird, hängt die Wahl zwischen MinMaxScaler und MaxAbsScaler von den eigenen Präferenzen ab, ob die Daten mit dem MinMaxScaler auf den Bereich [0,1] oder mit dem MaxAbsScaler auf [-1,1] skaliert werden sollen.

1. Was ist der Hauptzweck der Verwendung von MinMaxScaler bei der Datenvorverarbeitung?

2. Warum könnte man die Verwendung von StandardScaler für den eigenen Datensatz überdenken?

question mark

Was ist der Hauptzweck der Verwendung von MinMaxScaler bei der Datenvorverarbeitung?

Select the correct answer

question mark

Warum könnte man die Verwendung von StandardScaler für den eigenen Datensatz überdenken?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 10

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 3.13

bookStandardScaler, MinMaxScaler, MaxAbsScaler

Swipe um das Menü anzuzeigen

Es gibt drei gängige Ansätze zur Skalierung von Daten:

  • MinMaxScaler: skaliert Merkmale auf einen Bereich von [0, 1];
  • MaxAbsScaler: skaliert Merkmale so, dass der maximale Absolutwert 1 ist (die Daten liegen somit garantiert im Bereich [-1, 1]);
  • StandardScaler: standardisiert Merkmale, sodass der Mittelwert 0 und die Varianz 1 beträgt.

Zur Veranschaulichung der Funktionsweise von Scaler werden die Merkmale 'culmen_depth_mm' und 'body_mass_g' aus dem penguins dataset betrachtet. Diese Merkmale können geplottet werden, um ihre Skalen zu beobachten.

MinMaxScaler

Der MinMaxScaler arbeitet, indem er den Minimalwert subtrahiert (damit die Werte bei Null beginnen) und anschließend durch (x_max - x_min) teilt, sodass der Wert kleiner oder gleich 1 ist.

Hier ist das GIF, das zeigt, wie der MinMaxScaler funktioniert:

MaxAbsScaler

Der MaxAbsScaler arbeitet, indem er den maximalen Absolutwert ermittelt und jeden Wert durch diesen teilt. Dadurch wird sichergestellt, dass der maximale Absolutwert 1 ist.

StandardScaler

Die Idee des StandardScaler stammt aus der Statistik. Er funktioniert, indem er den Mittelwert subtrahiert (um die Werte um Null zu zentrieren) und durch die Standardabweichung teilt (um die Varianz auf 1 zu setzen).

Note
Hinweis

Falls Sie nicht wissen, was Mittelwert, Standardabweichung und Varianz sind, können Sie unseren Learning Statistics with Python Kurs besuchen. Dieses Wissen ist jedoch nicht zwingend erforderlich, um fortzufahren.

Hier ein Programmierbeispiel mit MinMaxScaler. Andere Skalierer werden auf die gleiche Weise angewendet.

12345678910
import pandas as pd from sklearn.preprocessing import MinMaxScaler df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/penguins_imputed_encoded.csv') # Assign X,y variables X, y = df.drop('species', axis=1), df['species'] # Initialize a MinMaxScaler object and transform the X minmax = MinMaxScaler() X = minmax.fit_transform(X) print(X)
copy

Die Ausgabe ist nicht besonders ansprechend, da Skalierer die Daten in ein numpy-Array umwandeln. Mit Pipelines stellt dies jedoch kein Problem dar.

Note
Hinweis

Es sollten nur die Merkmalsspalten (die X-Variable) skaliert werden. Eine Skalierung der Zielvariable ist nicht erforderlich, da dies den Prozess der inversen Transformation erschweren würde.

Welchen Skalierer verwenden?

Ein StandardScaler ist empfindlicher gegenüber Ausreißern und daher weniger als Standardskalierer geeignet. Falls eine Alternative zum StandardScaler bevorzugt wird, hängt die Wahl zwischen MinMaxScaler und MaxAbsScaler von den eigenen Präferenzen ab, ob die Daten mit dem MinMaxScaler auf den Bereich [0,1] oder mit dem MaxAbsScaler auf [-1,1] skaliert werden sollen.

1. Was ist der Hauptzweck der Verwendung von MinMaxScaler bei der Datenvorverarbeitung?

2. Warum könnte man die Verwendung von StandardScaler für den eigenen Datensatz überdenken?

question mark

Was ist der Hauptzweck der Verwendung von MinMaxScaler bei der Datenvorverarbeitung?

Select the correct answer

question mark

Warum könnte man die Verwendung von StandardScaler für den eigenen Datensatz überdenken?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 10
some-alt