Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Escalado y Normalización | Técnicas de Transformación de Datos
Preprocesamiento de Datos y Diseño de Características

bookEscalado y Normalización

Las características numéricas en tus datos a menudo tienen escalas muy diferentes, lo que puede afectar negativamente el rendimiento de los algoritmos de aprendizaje automático, especialmente aquellos que utilizan cálculos de distancia o asumen distribuciones normales. El escalado garantiza que todas las características contribuyan por igual al entrenamiento del modelo.

Las dos principales técnicas de escalado son:

  • Normalización: reescala las características a un rango fijo, generalmente entre 0 y 1;
  • Estandarización: transforma las características para que tengan una media de 0 y una desviación estándar de 1.

Cada método modifica el rango de tus datos de manera diferente y es más adecuado para escenarios específicos.

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
Cuándo usar cada método de escalado

La estandarización es más adecuada cuando tus datos siguen una distribución gaussiana (normal), o cuando los algoritmos esperan datos centrados, como linear regression, logistic regression o k-means clustering.

La normalización se prefiere cuando se desea que todas las características tengan la misma escala, especialmente para algoritmos que utilizan métricas de distancia, como k-nearest neighbors o neural networks.

question mark

¿Qué método de escalado deberías elegir si tus características tienen rangos muy diferentes y estás utilizando un clasificador de k-vecinos más cercanos?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 1

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

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

bookEscalado y Normalización

Desliza para mostrar el menú

Las características numéricas en tus datos a menudo tienen escalas muy diferentes, lo que puede afectar negativamente el rendimiento de los algoritmos de aprendizaje automático, especialmente aquellos que utilizan cálculos de distancia o asumen distribuciones normales. El escalado garantiza que todas las características contribuyan por igual al entrenamiento del modelo.

Las dos principales técnicas de escalado son:

  • Normalización: reescala las características a un rango fijo, generalmente entre 0 y 1;
  • Estandarización: transforma las características para que tengan una media de 0 y una desviación estándar de 1.

Cada método modifica el rango de tus datos de manera diferente y es más adecuado para escenarios específicos.

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
Cuándo usar cada método de escalado

La estandarización es más adecuada cuando tus datos siguen una distribución gaussiana (normal), o cuando los algoritmos esperan datos centrados, como linear regression, logistic regression o k-means clustering.

La normalización se prefiere cuando se desea que todas las características tengan la misma escala, especialmente para algoritmos que utilizan métricas de distancia, como k-nearest neighbors o neural networks.

question mark

¿Qué método de escalado deberías elegir si tus características tienen rangos muy diferentes y estás utilizando un clasificador de k-vecinos más cercanos?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 1
some-alt