La forma fundamental de la incertidumbre en machine learning
La distribución normal, también conocida como distribución Gaussiana, es una de las distribuciones de probabilidad más importantes en estadística y machine learning. Describe cómo se distribuyen los datos alrededor de una media, formando la clásica curva en forma de campana.
👉 Es fundamental para modelar ruido, inicializar redes y entender datos reales.
Definición corta
La distribución normal es una distribución continua caracterizada por una media y una desviación estándar, donde los datos se concentran alrededor del centro.
Definición detallada
La función de densidad de probabilidad es:
👉 Donde:
- μ = media
- σ = desviación estándar
Propiedades clave
- Simétrica alrededor de la media
- Forma de campana
- Media = mediana = moda
- Controlada por μ y σ
Intuición
La distribución normal describe:
👉 “Dónde es más probable encontrar valores”
Ejemplo
- Altura de personas
- Ruido en sensores
- Errores de medición
👉 Muchos fenómenos reales siguen esta distribución.
Regla empírica (68–95–99.7)
| Intervalo | Porcentaje |
|---|---|
| ±1σ | 68% |
| ±2σ | 95% |
| ±3σ | 99.7% |
👉 La mayoría de los valores están cerca de la media.
Visualización conceptual
^
| *
| * *
| * *
| * *
| * *
--------+-------------------->
μ-σ μ μ+σ
Estandarización (Z-score)
z=σx−μ
👉 Convierte datos a:
- media = 0
- desviación estándar = 1
Distribución normal en redes neuronales
🔹 1. Inicialización de pesos
Pesos inicializados como:W∼N(0,σ2)
👉 Mejora estabilidad del entrenamiento.
🔹 2. Ruido y regularización
Se añade ruido gaussiano para:
- mejorar generalización
- evitar overfitting
🔹 3. Modelado probabilístico
Ejemplo:
- regresión gaussiana
- modelos bayesianos
🔹 4. Batch Normalization
Normaliza activaciones hacia distribución normal.
Ejemplo paso a paso
Valores típicos:
- 0 → muy probable
- ±1 → probable
- ±3 → raro
Relación con otros conceptos
- Varianza
- Covarianza
- Probabilidad
- Entropía
- Distribuciones
Ejemplo en Python
import numpy as npdata = np.random.normal(loc=0, scale=1, size=1000)print("Media:", np.mean(data))print("Std:", np.std(data))
Ejemplo de densidad
import numpy as npfrom scipy.stats import normx = np.linspace(-3, 3, 100)pdf = norm.pdf(x, loc=0, scale=1)print(pdf[:5])
Ejemplo en PyTorch
import torchdata = torch.normal(mean=0.0, std=1.0, size=(1000,))print("Media:", data.mean().item())print("Std:", data.std().item())
Ejemplo en inicialización de red
import torch# Inicialización de pesosW = torch.randn(3, 3) * 0.01print("Pesos:\n", W)
Ejemplo con ruido
import torchx = torch.tensor([1.0, 2.0, 3.0])noise = torch.normal(mean=0.0, std=0.1, size=x.shape)x_noisy = x + noiseprint("Original:", x)print("Con ruido:", x_noisy)
Qué muestra este ejemplo
- Generación de datos gaussianos
- Uso en inicialización
- Introducción de ruido
Errores comunes
Asumir que todos los datos son normales
No siempre es cierto.
Ignorar outliers
La distribución normal los penaliza fuertemente.
Confundir varianza y desviación estándar
σ2 vs σ
Ejemplo conceptual en ML
Errores del modelo → distribución normal → optimización basada en L2
Interpretación profunda
La distribución normal permite:
- modelar incertidumbre
- describir ruido
- diseñar algoritmos robustos
- entender datos reales
👉 Es la base de gran parte de la estadística moderna.
Conclusión
La distribución normal (Gaussiana) es una de las herramientas más fundamentales para modelar datos, ruido e incertidumbre. Está presente en múltiples áreas del machine learning, desde inicialización hasta optimización.
👉 Entenderla es clave para entender cómo se comportan los datos y los modelos.
Related Concepts
- Varianza
- Covarianza
- Correlación
- Probabilidad
- Entropía
- PCA