Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära StandardScaler, MinMaxScaler, MaxAbsScaler | Förbehandling av Data med Scikit-learn
ML-introduktion Med Scikit-learn

bookStandardScaler, MinMaxScaler, MaxAbsScaler

Det finns tre populära metoder för att skala data:

  • MinMaxScaler: skalar funktioner till intervallet [0, 1];
  • MaxAbsScaler: skalar funktioner så att det maximala absoluta värdet är 1 (därmed garanteras att data ligger inom intervallet [-1, 1]);
  • StandardScaler: standardiserar funktioner så att medelvärdet blir 0 och variansen blir 1.

För att illustrera hur skalare fungerar, betrakta egenskaperna 'culmen_depth_mm' och 'body_mass_g' från penguins dataset. Dessa egenskaper kan plottas för att observera deras skalor.

MinMaxScaler

MinMaxScaler fungerar genom att subtrahera minimivärdet (så att värdena börjar från noll) och sedan dividera med (x_max - x_min) för att göra värdet mindre än eller lika med 1.

Här är en gif som visar hur MinMaxScaler fungerar:

MaxAbsScaler

MaxAbsScaler fungerar genom att hitta det största absoluta värdet och dividera varje värde med detta. Detta säkerställer att det största absoluta värdet är 1.

StandardScaler

Idén med StandardScaler kommer från statistiken. Den fungerar genom att subtrahera medelvärdet (för att centrera kring noll) och dividera med standardavvikelsen (för att göra variansen lika med 1).

Note
Notera

Om du inte förstår vad medelvärde, standardavvikelse och varians är, kan du titta på vår Learning Statistics with Python-kurs. Denna kunskap är dock inte obligatorisk för att gå vidare.

Här är ett kodexempel med MinMaxScaler. Andra skalare används på samma sätt.

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

Utdata är inte det snyggaste eftersom skalare omvandlar data till en numpy-array, men med pipelines blir det inget problem.

Note
Notera

Endast feature-kolumnerna (variabeln X) bör skalas. Det finns inget behov av att skala målvariabeln, eftersom det skulle försvåra den omvända transformationsprocessen.

Vilken skalare ska användas?

En StandardScaler är mer känslig för avvikare, vilket gör den mindre lämplig som standardskalare. Om du föredrar ett alternativ till StandardScaler beror valet mellan MinMaxScaler och MaxAbsScaler på personlig preferens, om du vill skala data till intervallet [0,1] med MinMaxScaler eller till [-1,1] med MaxAbsScaler.

1. Vad är det primära syftet med att använda MinMaxScaler vid datapreprocessering?

2. Varför kan du behöva ompröva användningen av StandardScaler för din datamängd?

question mark

Vad är det primära syftet med att använda MinMaxScaler vid datapreprocessering?

Select the correct answer

question mark

Varför kan du behöva ompröva användningen av StandardScaler för din datamängd?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 10

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you explain when to use each scaler in practice?

What are the main differences between MinMaxScaler and MaxAbsScaler?

Are there any drawbacks to using StandardScaler with outliers?

Awesome!

Completion rate improved to 3.13

bookStandardScaler, MinMaxScaler, MaxAbsScaler

Svep för att visa menyn

Det finns tre populära metoder för att skala data:

  • MinMaxScaler: skalar funktioner till intervallet [0, 1];
  • MaxAbsScaler: skalar funktioner så att det maximala absoluta värdet är 1 (därmed garanteras att data ligger inom intervallet [-1, 1]);
  • StandardScaler: standardiserar funktioner så att medelvärdet blir 0 och variansen blir 1.

För att illustrera hur skalare fungerar, betrakta egenskaperna 'culmen_depth_mm' och 'body_mass_g' från penguins dataset. Dessa egenskaper kan plottas för att observera deras skalor.

MinMaxScaler

MinMaxScaler fungerar genom att subtrahera minimivärdet (så att värdena börjar från noll) och sedan dividera med (x_max - x_min) för att göra värdet mindre än eller lika med 1.

Här är en gif som visar hur MinMaxScaler fungerar:

MaxAbsScaler

MaxAbsScaler fungerar genom att hitta det största absoluta värdet och dividera varje värde med detta. Detta säkerställer att det största absoluta värdet är 1.

StandardScaler

Idén med StandardScaler kommer från statistiken. Den fungerar genom att subtrahera medelvärdet (för att centrera kring noll) och dividera med standardavvikelsen (för att göra variansen lika med 1).

Note
Notera

Om du inte förstår vad medelvärde, standardavvikelse och varians är, kan du titta på vår Learning Statistics with Python-kurs. Denna kunskap är dock inte obligatorisk för att gå vidare.

Här är ett kodexempel med MinMaxScaler. Andra skalare används på samma sätt.

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

Utdata är inte det snyggaste eftersom skalare omvandlar data till en numpy-array, men med pipelines blir det inget problem.

Note
Notera

Endast feature-kolumnerna (variabeln X) bör skalas. Det finns inget behov av att skala målvariabeln, eftersom det skulle försvåra den omvända transformationsprocessen.

Vilken skalare ska användas?

En StandardScaler är mer känslig för avvikare, vilket gör den mindre lämplig som standardskalare. Om du föredrar ett alternativ till StandardScaler beror valet mellan MinMaxScaler och MaxAbsScaler på personlig preferens, om du vill skala data till intervallet [0,1] med MinMaxScaler eller till [-1,1] med MaxAbsScaler.

1. Vad är det primära syftet med att använda MinMaxScaler vid datapreprocessering?

2. Varför kan du behöva ompröva användningen av StandardScaler för din datamängd?

question mark

Vad är det primära syftet med att använda MinMaxScaler vid datapreprocessering?

Select the correct answer

question mark

Varför kan du behöva ompröva användningen av StandardScaler för din datamängd?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 10
some-alt