Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Skalning och Normalisering | Datatransformationstekniker
Datapreprocessering och Feature Engineering

bookSkalning och Normalisering

Numeriska egenskaper i dina data har ofta mycket olika skalor, vilket kan försämra prestandan hos maskininlärningsalgoritmer—särskilt de som använder avståndsberäkningar eller antar normalfördelning. Skalning säkerställer att alla egenskaper bidrar lika mycket till modellträningen.

De två huvudsakliga skalningsteknikerna är:

  • Normalisering: omvandlar egenskaper till ett fast intervall, vanligtvis mellan 0 och 1;
  • Standardisering: transformerar egenskaper så att de har ett medelvärde på 0 och en standardavvikelse på 1.

Varje metod förändrar datans intervall på olika sätt och passar bäst i specifika scenarier.

1234567891011121314151617181920212223242526272829
import pandas as pd from sklearn.preprocessing import StandardScaler, MinMaxScaler # Load Titanic dataset from seaborn import seaborn as sns titanic = sns.load_dataset('titanic') # Select numerical features for scaling features = ['age', 'fare', 'sibsp', 'parch'] df = titanic[features].dropna() # Standardization scaler_standard = StandardScaler() df_standardized = pd.DataFrame( scaler_standard.fit_transform(df), columns=df.columns ) # Normalization scaler_minmax = MinMaxScaler() df_normalized = pd.DataFrame( scaler_minmax.fit_transform(df), columns=df.columns ) print("Standardized Data (first 5 rows):") print(df_standardized.head()) print("\nNormalized Data (first 5 rows):") print(df_normalized.head())
copy
Note
När ska respektive skalningsmetod användas

Standardisering är bäst när dina data följer en Gaussisk (normal) fördelning, eller när algoritmer förväntar sig centrerade data, såsom linear regression, logistic regression eller k-means clustering.

Normalisering föredras när du vill att alla egenskaper ska ha samma skala, särskilt för algoritmer som använder avståndsmått, som k-nearest neighbors eller neural networks.

question mark

Vilken skalningsmetod bör du välja om dina funktioner har mycket olika intervall och du använder en k-närmaste grannar-klassificerare

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 1

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 normalization versus standardization?

What are the effects of scaling on different machine learning algorithms?

Can you show how to inverse transform the scaled data back to the original values?

Awesome!

Completion rate improved to 8.33

bookSkalning och Normalisering

Svep för att visa menyn

Numeriska egenskaper i dina data har ofta mycket olika skalor, vilket kan försämra prestandan hos maskininlärningsalgoritmer—särskilt de som använder avståndsberäkningar eller antar normalfördelning. Skalning säkerställer att alla egenskaper bidrar lika mycket till modellträningen.

De två huvudsakliga skalningsteknikerna är:

  • Normalisering: omvandlar egenskaper till ett fast intervall, vanligtvis mellan 0 och 1;
  • Standardisering: transformerar egenskaper så att de har ett medelvärde på 0 och en standardavvikelse på 1.

Varje metod förändrar datans intervall på olika sätt och passar bäst i specifika scenarier.

1234567891011121314151617181920212223242526272829
import pandas as pd from sklearn.preprocessing import StandardScaler, MinMaxScaler # Load Titanic dataset from seaborn import seaborn as sns titanic = sns.load_dataset('titanic') # Select numerical features for scaling features = ['age', 'fare', 'sibsp', 'parch'] df = titanic[features].dropna() # Standardization scaler_standard = StandardScaler() df_standardized = pd.DataFrame( scaler_standard.fit_transform(df), columns=df.columns ) # Normalization scaler_minmax = MinMaxScaler() df_normalized = pd.DataFrame( scaler_minmax.fit_transform(df), columns=df.columns ) print("Standardized Data (first 5 rows):") print(df_standardized.head()) print("\nNormalized Data (first 5 rows):") print(df_normalized.head())
copy
Note
När ska respektive skalningsmetod användas

Standardisering är bäst när dina data följer en Gaussisk (normal) fördelning, eller när algoritmer förväntar sig centrerade data, såsom linear regression, logistic regression eller k-means clustering.

Normalisering föredras när du vill att alla egenskaper ska ha samma skala, särskilt för algoritmer som använder avståndsmått, som k-nearest neighbors eller neural networks.

question mark

Vilken skalningsmetod bör du välja om dina funktioner har mycket olika intervall och du använder en k-närmaste grannar-klassificerare

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 1
some-alt