Transformaciones No Lineales para Datos Sesgados en Machine Learning
Clase 15 de 25 • Curso de Matemáticas para Data Science: Estadística Descriptiva
Resumen
¿Qué hacer cuando la distribución de datos no es simétrica?
Cuando trabajamos con datos en machine learning, es común encontrarnos con distribuciones que no son simétricas y que, por tanto, no se benefician de técnicas de escalamiento lineal, como el uso de la media y la desviación estándar. En estos casos, debemos transformar los datos para que adquieran una distribución simétrica antes de aplicar cualquier escalamiento lineal.
¿Por qué utilizar transformaciones no lineales?
Las transformaciones no lineales son cruciales para manejar datos que presentan un fuerte sesgo. Estas transformaciones nos permiten modificar la distribución de manera que se vuelva más homogénea o simétrica, lo cual es esencial antes de aplicar escalamiento lineal.
Existen diferentes tipos de transformaciones no lineales que se pueden aplicar, entre las cuales se incluyen:
- Logaritmos
- Funciones sigmoides
- Polinomios de grado mayor a uno
¿Cuándo aplicar las transformaciones?
Las transformaciones no lineales deben aplicarse justo antes de escalar linealmente los datos. Esto asegura que, al momento de realizar el escalamiento, la distribución de los datos ya sea simétrica.
¿Cómo afectan las funciones no lineales la distribución de datos?
Los efectos de las transformaciones no lineales son visibles al observar la función y cómo transforma valores de manera no homogénea.
Ejemplo: Tangente hiperbólica
Consideremos una distribución de datos altamente sesgada y su transformación mediante la tangente hiperbólica. La tangente hiperbólica transformará los datos original:
Valores pequeños -> Intervalo más ancho
Valores grandes -> Intervalo más delgado
Esto ayuda a reducir el sesgo, ya que los datos que estaban distantes ahora se mapean en posiciones más cercanas entre sí.
La tangente hiperbólica tiene carácter de simetrizar la distribución al expandir rangos cercanos al cero y contraer outliers. Puedes visualizar este efecto mediante un gráfico, donde verás que los valores pequeños se extienden sobre un rango más amplio comparado con los valores grandes.
Ejemplo: Funciones raíz y polinómicas
-
Raíz cuadrada: Esta función es útil porque los datos cercanos al origen son mapeados en intervalos más pequeños, reduciendo el impacto de valores extremos (outliers).
-
Polinomios: Podemos usar funciones polinómicas de la forma ( x^n ) con ( n ) siendo un número positivo. Dependiendo del valor de ( n ), la transformación de la distribución variará, y podemos adaptar el mapeo según nuestras necesidades de simetría.
¿Cómo elegir la mejor transformación?
No existe una única respuesta correcta para todas las situaciones. Las características de tus datos y el contexto del problema determinan la función más adecuada. Sin embargo, algunas funciones ampliamente utilizadas incluyen la tangente hiperbólica y las funciones sigmoides debido a su capacidad de expandir rangos bajos y reducir la influencia de outliers.
Implementar estas transformaciones y visualizar sus efectos es esencial para comprender plenamente su impacto. Pronto, realizaremos un ejercicio práctico utilizando Python para aplicar estas transformaciones y observar visualmente la mejoría en la distribución de nuestros datos.