🧮 Computational Mathematics

Inicio · Parte 13 — Teoría de la información, señales y series

278 — Series temporales y ventanas

avanzado clase 18 de 20 4 horas demostración windowing

Analizar un trozo finito de señal esparce su energía a frecuencias vecinas.

Fórmulas

ventana rectangular: cortar sin más
ventana de Hann: w[n] = 0,5·(1 − cos(2πn/N))
compromiso: menos fuga, peor resolución

Desarrollo

La transformada de Fourier supone señales infinitas. En la práctica solo se dispone de un trozo, y cortarlo equivale a multiplicar la señal por una ventana rectangular. Esa multiplicación en el tiempo se convierte en convolución en frecuencia, y ahí está el problema.

El resultado es la fuga espectral: la energía de una componente se dispersa hacia las frecuencias vecinas. El efecto es máximo cuando la frecuencia real no cae exactamente en uno de los bins del análisis, porque entonces el corte introduce discontinuidades en los extremos que la transformada interpreta como contenido de alta frecuencia.

Las ventanas suaves —Hann, Hamming, Blackman— multiplican la señal por una función que decae a cero en los bordes, eliminando la discontinuidad. La fuga se reduce sustancialmente, y el pico principal queda mucho más limpio.

El precio es la resolución. Suavizar los bordes ensancha el pico principal, así que dos frecuencias muy próximas pueden dejar de distinguirse. La elección de ventana es un compromiso entre resolución —distinguir frecuencias cercanas— y rango dinámico —ver componentes débiles junto a fuertes—. Hann es el compromiso razonable por defecto.

Ejemplo trabajado

Señal de 8,5 Hz analizada con 64 muestras: el peor caso.

frecuencia real: 8,5 Hz, justo entre dos bins

ventana rectangular:
  pico detectado en el bin 8
  fuga espectral: 50,02 %

ventana de Hann:
  pico detectado en el bin 9
  fuga espectral: 12,45 %

La fuga se reduce a la cuarta parte.

Ninguna de las dos acierta exactamente 8,5:
la resolución del análisis es de 1 bin, y la frecuencia
real cae en medio. Para resolverla haría falta
más duración de señal, no más muestras por segundo.

Qué calcula el laboratorio

Ventaneo: el precio de analizar un trozo finito de señal.

python classes/part-13-teoria-de-la-informacion-senales-y-series/278-series-temporales-y-ventanas/lab.py
compmath run 278

Salidas del laboratorio (8)

Muestra de la ejecución real

{
  "muestras": 64,
  "frecuencia_real": 8.5,
  "pico_con_ventana_rectangular": 8,
  "pico_con_ventana_de_Hann": 9,
  "fuga_espectral_rectangular_%": 50.0198,
  "fuga_espectral_hann_%": 12.453
}

Errores comunes

Dónde se usa

Espectrogramas de audio, análisis de vibraciones, detección de tonos y preprocesamiento para modelos de reconocimiento de voz.

Idea rectora de la parte

KL no es simétrica ni es una distancia; JS sí es simétrica.

Error a evitar

Muestrear por debajo de Nyquist y culpar al modelo del ruido resultante.

Conexión con IA

La función de pérdida de casi todo clasificador es entropía cruzada; el VAE optimiza un ELBO con un término KL; las CNN son convoluciones aprendidas.

Bibliografía de la clase

Archivos de la clase