Normalization
Normalization es una técnica que se aplica frecuentemente como parte de la preparación de datos para el aprendizaje automático. El objetivo de la normalización es cambiar los valores de las columnas numéricas en el dataset a una escala común, sin distorsionar las diferencias en los rangos de valores ni perder información.
Min-Max Normalization
Min-Max normalization es una de las formas más comunes de normalizar datos. Para cada característica, el valor mínimo de esa característica se transforma en 0, el valor máximo se transforma en 1, y cada otro valor se transforma en un decimal entre 0 y 1.
Proceso:
x_normalized = (x−min(x))/ (max(x)-min(x))
Donde:
- x_normalized es el valor normalizado de la característica.
- x es el valor original de la característica.
- min(x) es el valor mínimo de la característica a lo largo del dataset.
- max(x) es el valor máximo de la característica a lo largo del dataset.
Ejemplo:
| Entrada de ejemplo | 10 | 25 | 30 | Salida de ejemplo | 0 | 0.75 | 1 |
|---|
Unit Normalization
Unit normalization consiste en dividir cada entrada en una columna (característica) por su magnitud para crear una característica de longitud 1 conocida como vector unitario.
Proceso:
x_normalized = x / ||x||
Donde:
- x_normalized es el valor normalizado de la característica.
- x es el valor original de la característica.
- ||x|| es la magnitud que se calcula como
- ||x|| = sqrt(x1^2 + x2^2 + ……. xn^2)
- x1, x2, x3……xn son los valores originales de la característica.
Ejemplo:
| Entrada de ejemplo | 10 | 25 | 30 | Salida de ejemplo | 0.248 | 0.620 | 0.744 |
|---|
Mean Normalization
Este transformer transforma los datos basándose en la media de modo que la suma de los valores sea igual a 0.
Proceso:
x_normalized = x - mean(x) / max(x) - min(x)
Donde:
- x_normalized es el valor normalizado de la característica.
- x es el valor original de la característica.
- mean(x) es la media de la característica a lo largo del dataset.
- min(x) es el valor mínimo de la característica a lo largo del dataset.
- max(x) es el valor máximo de la característica a lo largo del dataset.
Ejemplo:
| Entrada de ejemplo | 10 | 25 | 30 | Salida de ejemplo | -0.583 | 0.166 | 0.416 |
|---|
Mean-Std Normalization
Los datos se pueden normalizar restando la media (µ) de cada característica y dividiéndolos por la desviación estándar (σ). De esta manera, cada característica tiene una media de 0 y una desviación estándar de 1. Esto resulta en una convergencia más rápida.
Proceso:
x_normalized = x - mean(x) / std(x)
Donde
- x_normalized es el valor normalizado de la característica.
- x es el valor original de la característica.
- mean(x) es la media de la característica a lo largo del dataset.
- std(x) es la desviación estándar de la característica a lo largo del dataset.
Ejemplo:
| Entrada de ejemplo | 10 | 25 | 30 | Salida de ejemplo | -1.120 | 0.320 | 0.800 |
|---|
Robust Normalization
Robust Scaler es una técnica de normalización que escala las características usando la mediana y el rango intercuartílico (IQR), haciéndolo menos sensible a los outliers en comparación con los métodos de escalado estándar. Centra los datos normalizados alrededor de la mediana y los escala según el IQR, lo que ayuda a mantener la estructura de los datos con valores extremos sin dejar que esos valores distorsionen el escalado.
Proceso:
xrobust = IQR(x)x − median(x)
Donde
- x = valor original de la característica
- median(x) = mediana de los valores de la característica
- IQR(x) = rango intercuartílico (percentil 75 - percentil 25)
- xrobust = valor normalizado después del escalado robusto
Ejemplo
Supongamos que los valores de la característica son: [10, 25, 30, 1000 (outlier)]
- Mediana = 27.5
- IQR = 20 (entre el percentil 25 = 15 y el percentil 75 = 35)
Los valores normalizados serían:
| Valor de entrada | 10 | 25 | 30 | 1000 | Salida (Robust) | -0.875 | -0.125 | 0.125 | 48.625 |
|---|
Observa que el outlier (1000) tiene un valor escalado grande, pero el resto se mantienen en un rango razonable sin distorsión.
Beneficio en tiempo real de Robust Normalization
En datos del mundo real, como lecturas de sensores, transacciones financieras o métricas de salud, los outliers son comunes. Usar robust normalization evita que estos valores extremos dominen el entrenamiento del modelo, resultando en:
- Un modelo más estable y confiable
- Mejor generalización a datos no vistos
- Rendimiento mejorado cuando el dataset tiene valores ruidosos o extremos
Última actualización 2026-03-24 17:38:39 +0530 IST
Yes
No
Send your feedback to us