🧮 Computational Mathematics

Inicio · Parte 14 — Matemática de Machine Learning

295 — Gaussian Mixture Models

ml-avanzado clase 15 de 20 4 horas demostración gmm

Una mezcla de gaussianas asigna probabilidades en vez de etiquetas, y modela grupos de formas distintas.

Fórmulas

p(x) = Σ πₖ·N(x | μₖ, σₖ²)
responsabilidad: γₖ(x) = πₖN(x|μₖ,σₖ²) / p(x)
Σ πₖ = 1

Desarrollo

Una mezcla de gaussianas es un modelo generativo: supone que cada punto se generó eligiendo primero una componente según los pesos π y muestreando después de su normal. Ajustar el modelo es estimar los pesos, las medias y las varianzas que mejor explican los datos observados.

Su diferencia con k-means es la asignación blanda. En vez de decidir a qué grupo pertenece cada punto, calcula la probabilidad de pertenecer a cada uno —la responsabilidad—. Un punto entre dos grupos recibe 0,5 y 0,5 en vez de una asignación arbitraria, y esa información es valiosa: identifica los casos ambiguos.

La segunda diferencia es la flexibilidad de forma. k-means impone grupos esféricos del mismo tamaño; un GMM con covarianza completa modela grupos elípticos, rotados y de tamaños distintos. De hecho k-means es el caso límite de un GMM con covarianzas esféricas iguales y responsabilidades llevadas al extremo.

El ajuste se hace con EM, y la log-verosimilitud crece monótonamente, lo que sirve de comprobación de la implementación. Hay una trampa conocida: si una componente colapsa sobre un solo punto, su varianza tiende a cero y la verosimilitud a infinito. Se evita con una cota inferior en la varianza o con regularización.

Ejemplo trabajado

Mezcla de dos componentes ajustada por EM.

componentes: 2

medias:            (−1,3009 ;  1,9702)
varianzas:         ( 0,3721 ;  0,9484)
pesos de mezcla:   ( 0,4481 ;  0,5519)     suman 1   ✓

log-verosimilitud por iteración:
  −145,345385
  −144,860751
  −144,766128

Nunca baja                                           ✓

Las varianzas son distintas: 0,37 frente a 0,95.
k-means habría impuesto grupos del mismo tamaño y
habría clasificado mal la frontera entre ambos.

Qué calcula el laboratorio

Mezcla de gaussianas: asignación blanda en lugar de dura.

python classes/part-14-matematica-de-machine-learning/295-gaussian-mixture-models/lab.py
compmath run 295

Salidas del laboratorio (8)

Muestra de la ejecución real

{
  "componentes": 2,
  "medias": [
    -1.3009,
    1.9702
  ],
  "varianzas": [
    0.3721,
    0.9484
  ],
  "pesos_de_mezcla": [
    0.4481,
    0.5519
  ],
  "log_verosimilitud": [
    -145.345385,
    -144.860751,
    -144.766128
  ],
  "la_log_verosimilitud_nunca_baja": true
}

Errores comunes

Dónde se usa

Agrupamiento probabilístico, modelado de densidad, detección de anomalías, separación de hablantes y segmentación de imágenes.

Idea rectora de la parte

El leakage produce métricas excelentes y modelos inútiles.

Error a evitar

Interpretar coeficientes de un modelo con features correlacionadas.

Conexión con IA

Estos algoritmos siguen siendo la línea base honesta contra la que se debe comparar cualquier modelo profundo.

Bibliografía de la clase

Archivos de la clase