Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Standardscaler, Minmaxscaler, Maxabsscaler | Sektion
Practice
Projects
Quizzes & Challenges
Quizzer
Challenges
/
Grundlæggende Maskinlæring

bookStandardscaler, Minmaxscaler, Maxabsscaler

Der findes tre populære metoder til skalering af data:

  • MinMaxScaler: skalerer funktioner til et [0, 1] interval;
  • MaxAbsScaler: skalerer funktioner, så den maksimale absolutte værdi er 1 (så data garanteres at være i intervallet [-1, 1]);
  • StandardScaler: standardiserer funktioner, så gennemsnittet bliver 0 og variansen bliver 1.

For at illustrere hvordan scalere fungerer, kan man overveje funktionerne 'culmen_depth_mm' og 'body_mass_g' fra penguins dataset. Disse funktioner kan plottes for at observere deres skalaer.

MinMaxScaler

MinMaxScaler fungerer ved at trække minimumsværdien fra (så værdierne starter fra nul) og derefter dividere med (x_max - x_min) for at sikre, at værdien er mindre end eller lig med 1.

Her er gif'en, der viser, hvordan MinMaxScaler fungerer:

MaxAbsScaler

MaxAbsScaler fungerer ved at finde den maksimale absolutværdi og dividere hver værdi med denne. Dette sikrer, at den maksimale absolutværdi er 1.

StandardScaler

Ideen bag StandardScaler stammer fra statistik. Den fungerer ved at trække gennemsnittet fra (for at centrere omkring nul) og dividere med standardafvigelsen (for at gøre variansen lig med 1).

Note
Bemærk

Hvis du ikke forstår, hvad gennemsnit, standardafvigelse og varians er, kan du se vores Learning Statistics with Python kursus. Denne viden er dog ikke obligatorisk for at fortsætte.

Her er et kodeeksempel med MinMaxScaler. Andre scalere anvendes på samme måde.

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

Outputtet er ikke det kønneste, da scalere omdanner dataene til et numpy array, men med pipelines vil det ikke være et problem.

Note
Bemærk

Du bør kun skalere feature-kolonnerne (variablen X). Der er ingen grund til at skalere målvariablen, da det vil gøre den inverse transformation mere kompliceret.

Hvilken scaler skal anvendes?

En StandardScaler er mere følsom over for outliers, hvilket gør den mindre egnet som standard scaler. Hvis du foretrækker et alternativ til StandardScaler, afhænger valget mellem MinMaxScaler og MaxAbsScaler af personlig præference, om du ønsker at skalere data til [0,1] intervallet med MinMaxScaler eller til [-1,1] med MaxAbsScaler.

1. Hvad er det primære formål med at bruge MinMaxScaler i datapræprocessering?

2. Hvorfor kan det være nødvendigt at genoverveje brugen af StandardScaler til dit datasæt?

question mark

Hvad er det primære formål med at bruge MinMaxScaler i datapræprocessering?

Select the correct answer

question mark

Hvorfor kan det være nødvendigt at genoverveje brugen af StandardScaler til dit datasæt?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 15

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

bookStandardscaler, Minmaxscaler, Maxabsscaler

Stryg for at vise menuen

Der findes tre populære metoder til skalering af data:

  • MinMaxScaler: skalerer funktioner til et [0, 1] interval;
  • MaxAbsScaler: skalerer funktioner, så den maksimale absolutte værdi er 1 (så data garanteres at være i intervallet [-1, 1]);
  • StandardScaler: standardiserer funktioner, så gennemsnittet bliver 0 og variansen bliver 1.

For at illustrere hvordan scalere fungerer, kan man overveje funktionerne 'culmen_depth_mm' og 'body_mass_g' fra penguins dataset. Disse funktioner kan plottes for at observere deres skalaer.

MinMaxScaler

MinMaxScaler fungerer ved at trække minimumsværdien fra (så værdierne starter fra nul) og derefter dividere med (x_max - x_min) for at sikre, at værdien er mindre end eller lig med 1.

Her er gif'en, der viser, hvordan MinMaxScaler fungerer:

MaxAbsScaler

MaxAbsScaler fungerer ved at finde den maksimale absolutværdi og dividere hver værdi med denne. Dette sikrer, at den maksimale absolutværdi er 1.

StandardScaler

Ideen bag StandardScaler stammer fra statistik. Den fungerer ved at trække gennemsnittet fra (for at centrere omkring nul) og dividere med standardafvigelsen (for at gøre variansen lig med 1).

Note
Bemærk

Hvis du ikke forstår, hvad gennemsnit, standardafvigelse og varians er, kan du se vores Learning Statistics with Python kursus. Denne viden er dog ikke obligatorisk for at fortsætte.

Her er et kodeeksempel med MinMaxScaler. Andre scalere anvendes på samme måde.

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

Outputtet er ikke det kønneste, da scalere omdanner dataene til et numpy array, men med pipelines vil det ikke være et problem.

Note
Bemærk

Du bør kun skalere feature-kolonnerne (variablen X). Der er ingen grund til at skalere målvariablen, da det vil gøre den inverse transformation mere kompliceret.

Hvilken scaler skal anvendes?

En StandardScaler er mere følsom over for outliers, hvilket gør den mindre egnet som standard scaler. Hvis du foretrækker et alternativ til StandardScaler, afhænger valget mellem MinMaxScaler og MaxAbsScaler af personlig præference, om du ønsker at skalere data til [0,1] intervallet med MinMaxScaler eller til [-1,1] med MaxAbsScaler.

1. Hvad er det primære formål med at bruge MinMaxScaler i datapræprocessering?

2. Hvorfor kan det være nødvendigt at genoverveje brugen af StandardScaler til dit datasæt?

question mark

Hvad er det primære formål med at bruge MinMaxScaler i datapræprocessering?

Select the correct answer

question mark

Hvorfor kan det være nødvendigt at genoverveje brugen af StandardScaler til dit datasæt?

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 15
some-alt