Ing. Rubén Omar Azuara Domínguez · Grupo 1 · 2027-1 · Lunes y viernes 07:00–08:30 · Salón S227 · ruben.azuara@ingenieria.unam.edu
Ponderación, prácticas, proyecto, Classroom
Enunciados, audio de apoyo, plantilla IEEE, diapositivas del profesor
PDFs que ya entregaste
Temario que sigue el profesor (difiere del oficial FI de 5 temas). Lenguaje del curso: Python. Google Classroom: tz6dpily.
| Núm. | Tema |
|---|---|
| 1 | Conceptos básicos de reconocimiento de patrones |
| 2 | Extracción de características |
| 3 | Selección y reducción de dimensionalidad |
| 4 | Evaluación de modelos |
| 5 | Funciones de decisión |
| 6 | Clasificación de patrones por medio de funciones de distancia |
| 7 | Clasificación de patrones por medio de funciones de similitud |
| 8 | Clasificadores de Aprendizaje Automático |
| 9 | Aprendizaje Profundo |
| 10 | Patrones Estructurales y Procesamiento de Lenguaje Natural |
Objetivo: el alumno aplicará las técnicas modernas del reconocimiento de patrones utilizando computadoras digitales.
| Núm. | Tema | Horas |
|---|---|---|
| 1 | Conceptos básicos de reconocimiento de patrones | 3.0 |
| 2 | Funciones de decisión | 9.0 |
| 3 | Clasificación de patrones por medio de funciones de distancia | 12.0 |
| 4 | Clasificación de patrones por medio de funciones de similitud | 12.0 |
| 5 | Reconocimiento de patrones sintácticos | 12.0 |
Bibliografía: Schalkoff — Pattern Recognition; Tou & González — Pattern Recognition Principles; Duda & Hart — Pattern Classification and Scene Analysis; Fukunaga — Introduction to Statistical Pattern Recognition.
Programa del profesor (10 temas, sin desglose de subtemas). En azul, lo que ya se vio en clase (enlaza a la clase). En gris, lo que falta.
x = (x₁ … xₙ); más dimensiones ≠ mejor (maldición de la dimensionalidad).Desde hace mucho se busca hacer inferencias de una cantidad desconocida a partir de mediciones relacionadas. Según cómo sea esa cantidad:
El RdP se enfoca en determinar una identidad particular (la clase del patrón) con base en información medida. El proceso que selecciona la clase se llama clasificador. En otras palabras: las entradas se miden, analizan y clasifican como pertenecientes a una de un conjunto de clases, extrayendo características significativas frente al fondo o los detalles irrelevantes.
Ocurre a diario: al caminar, ¿qué está frente a ti?, ¿es seguro cruzar?; ¿qué música escuchas?; ¿algo se está quemando en la estufa? Es entrada sensorial detectada, analizada y reconocida (clasificada), consciente o inconscientemente.
Un patrón es detectado → da lugar a mediciones → se extraen características → se entregan a un clasificador → que selecciona la clase asociada con el patrón detectado.
El vector de características reúne toda la información medida disponible sobre el patrón:
x = (x₁, x₂, x₃, …, xₙ)ᵀ1. Representación de la información que puede medirse de los objetos. Cada cantidad medida describe una característica; el vector de características las contiene todas. Pregunta clave: ¿tenemos suficiente información? (ej. ¿salmón o robalo?).
2. Extracción de atributos y reducción de dimensionalidad. Ejemplo Breast Cancer Wisconsin: 569 instancias (357 benignos, 212 malignos), 30 características (radio, textura, perímetro, área, suavidad, compacidad, concavidad, puntos cóncavos, simetría, dimensión fractal). ¿Todas aportan? Correlación con la clase:
| Característica | Correlación |
|---|---|
| Concavidad | 0.85 |
| Área | 0.82 |
| Textura | 0.79 |
| Simetría | 0.12 |
| Fractal | 0.05 |
→ conviene quedarse con área, textura y concavidad. Otro ejemplo: una imagen 3000×1800 aplanada es x ∈ ℝ⁵ ⁴⁰⁰ ⁰⁰⁰; con reducción de dimensionalidad pasa a z ∈ ℝ⁵⁰⁰.
3. Procedimientos de decisión óptimos para la clasificación e identificación.
Las "dimensiones" son las características/atributos de los datos. Al añadir más dimensiones, el volumen del espacio crece exponencialmente. Esto provoca: dispersión de los datos, más cómputo, sobreajuste, que las distancias pierdan sentido, degradación del rendimiento y retos de visualización.
Se manifiesta de dos formas:
Solución: reducción de dimensionalidad — reducir el número de variables aleatorias hasta un conjunto de variables principales. Conserva la información importante y descarta lo redundante o poco importante, pero eliminar características implica pérdida de información.
Contenido de la Clase 01 (audio) + diapositivas del profesor I · II · III.
y ∈ ℝᴺ → x ∈ ℝᵈ, d ≪ N).Es el proceso que transforma un conjunto de datos crudos (imágenes, audio, series de tiempo…) en un vector de valores numéricos que describe de forma compacta la información relevante del patrón.
y ∈ ℝᴺ → x ∈ ℝᵈ , d ≪ N
En lugar de trabajar con los datos originales (alta dimensionalidad, ruidosos, redundantes), se representa cada muestra con un conjunto reducido de atributos que conserven la información discriminante necesaria para separar clases.
En qué consiste: analizar la naturaleza del dato → identificar propiedades relevantes del patrón → calcular medidas cuantitativas que las describan → construir un vector de características comparable entre muestras.
Se busca: discriminabilidad (separar clases), compacidad (reducir dimensión), robustez (ruido, variación intra-clase) y bajo costo computacional.
Describen la distribución de los datos sin considerar explícitamente su estructura espacial o temporal.
Primer y segundo orden:
μ = (1/N) Σ xᵢ (media)
σ² = (1/N) Σ (xᵢ − μ)² (varianza)
Orden superior:
skewness = (1/(N·σ³)) Σ (xᵢ − μ)³
excess kurtosis = (1/(N·σ⁴)) Σ (xᵢ − μ)⁴ − 3
| Skewness (asimetría) | Curtosis (exceso) | |
|---|---|---|
| > 0 | cola alargada a la derecha | datos concentrados en la media, colas pesadas |
| = 0 | simétrica | como la normal |
| < 0 | cola alargada a la izquierda | datos más dispersos, colas más ligeras |
Dos señales con la misma media pueden tener varianzas muy distintas; dos señales con misma media y varianza pueden separarse por skewness / curtosis.
Lo anterior se aplica de forma global (tendencia general), pero también local (estructura espacial o temporal): la señal de tamaño N se divide en L ventanas.
¿Qué hacer con todas las ventanas?
f = [f₁, f₂, f₃, …]. Conserva la información local; desventaja: la dimensión crece rápido.μ_μ, σ²_μ, μ_σ², σ²_σ², …maxₖ σ²ₖ.| Enfoque | Captura |
|---|---|
| Global | Tendencia general |
| Local | Cambios y estructura |
| Local + pooling | Estructura y robustez |
Cuándo NO vale la pena usar ventanas locales: señales estacionarias, datos muy ruidosos, ventanas demasiado pequeñas, problemas donde la estructura local no es relevante.
Describe cómo se distribuyen los valores de una señal o dato, sin importar su posición exacta. No se usa como gráfica sino como vector de características. Aplica a imágenes, audio y otras señales.
h = [146, 870, 1159, 1394, 1348, 1334, 1289, …]
| Ventajas | Desventajas |
|---|---|
| Simple; robusto al ruido | Pierde información espacial/temporal |
| Invariante a permutaciones / traslaciones | Sensible al número de bins |
| Dimensión controlable; funciona con pocos datos | No captura relaciones entre valores vecinos |
Las medidas geométricas simples son insuficientes para formas complejas o para garantizar invariancia a traslación, escala o rotación. Los momentos geométricos describen cómo se distribuyen espacialmente los píxeles de un objeto.
Momentos espaciales — para una imagen f(x,y) (binaria o en escala de grises):
M(p,q) = Σx Σy x^p · y^q · f(x, y) con p, q ≥ 0
Área (imagen binaria) = M(0,0)
Centroide (x̄, ȳ) = ( M(1,0)/M(0,0) , M(0,1)/M(0,0) )
Dependen de la posición del objeto.
Momentos centrales — para eliminar la traslación:
μ(p,q) = Σx Σy (x − x_c)^p · (y − y_c)^q · f(x, y)
Invariantes a traslación; describen la forma alrededor de su centro; aún dependen de la escala.
Momentos normalizados — a partir de los centrales, dividiendo por una potencia del momento de orden cero:
η_ij = μ_ij / μ₀₀^((i+j)/2 + 1) con i + j ≥ 2
Invariantes a traslación y escala; aún variantes a rotación.
Momentos de Hu — 7 momentos invariantes a rotación, escala y traslación, calculados a partir de los normalizados. Es común aplicarles una escala logarítmica (los valores crudos son minúsculos, del orden de 1e-3 a 1e-15).
Si la forma describe la silueta del objeto, la textura describe la organización interna de los niveles de gris. La GLCM modela qué tan frecuentemente ciertos niveles de gris aparecen juntos.
Para una imagen cuantizada con N niveles de gris, la GLCM es una matriz N×N donde cada elemento
P(i, j | d, θ)
indica cuántas veces un píxel de valor i aparece junto a un píxel de valor j, separados por una distancia d en una dirección θ. Parámetros: niveles de gris N, distancia d, dirección θ.
Cómo se calcula:
A partir de la matriz normalizada se calculan estadísticos que forman el vector de características:
Guardados en Ejercicios de Hu y GLCM (PDF). Resumen de los que se pueden transcribir:
Ejemplo 1 — Momentos geométricos Mpq = ΣΣ xp yq f(x,y). Imagen 5×5 con cuatro píxeles en 1 (x ∈ {2,3}, y ∈ {1,2}):
M00 = Σ f = 1+1+1+1 = 4
M10 = Σ x·f = 2+3+2+3 = 10
M01 = Σ y·f = 1+1+2+2 = 6
M11 = Σ x·y·f = 2·1 + 3·1 + 2·2 + 3·2 = 15
M = [ M00 M10 ] = [ 4 10 ]
[ M01 M11 ] [ 6 15 ]
Ejemplo 2 — Momentos centrales μpq = ΣΣ (x−x̄)p (y−ȳ)q f(x,y).
Centroide {x̄, ȳ} = { M10/M00 , M01/M00 } = { 10/4 , 6/4 } = { 2.5 , 1.5 }
μ00 = M00 = 4
μ10 = 0 , μ01 = 0 (siempre, por definición del centroide)
μ11 = ΣΣ (x−2.5)(y−1.5) f
= (−0.5)(−0.5) + (0.5)(−0.5) + (−0.5)(0.5) + (0.5)(0.5)
= 0.25 − 0.25 − 0.25 + 0.25 = 0
Relación: μ11 = M11 − x̄·M01 = M11 − ȳ·M10
μ = [ μ00 μ10 ] = [ 4 0 ]
[ μ01 μ11 ] [ 0 0 ]
Ejemplo 4 — GLCM (imagen 4×4, niveles de gris 0–3), d = 1. GLCM θ = 0 (izquierda→derecha), sin normalizar — 12 pares en total:
j=0 j=1 j=2 j=3
i=0 2 2 1 0
i=1 0 2 0 0
i=2 0 0 3 1
i=3 0 0 0 1
La versión simétrica y la dirección θ = 90° (arriba→abajo) están resueltas celda por celda en el PDF.
Descriptor de forma: codifica los gradientes de intensidad y sus orientaciones dentro de regiones localizadas de la imagen. Captura estructuras locales de bordes. Aplicación estrella: detección de personas y objetos; fue lo más sólido del estado del arte antes de las redes convolucionales.
El gradiente indica la dirección de mayor cambio de luminosidad → un borde. Se calcula en X e Y por convolución con filtros detectores de bordes:
Filtro eje X (Gx): matriz 1×3 → detecta bordes verticales
Filtro eje Y (Gy): matriz 3×1 → detecta bordes horizontales
Convolución (A * B): se refleja B sobre sí misma y se va
multiplicando y deslizando sobre A. Aplica en 2D, 3D, etc.
Magnitud: M = √(Gx² + Gy²) (nueva imagen de intensidades de cambio)
Orientación: θ = arctan(Gy / Gx) (dirección del borde en cada píxel)Se concatenan todos los vectores de bloque normalizados → vector de 3 780 valores para la imagen estándar 64×128. Captura contornos externos y detalles internos del objeto. Es la entrada directa al clasificador; 3 780 es la dimensionalidad óptima validada experimentalmente para este tipo de subimágenes.
SIFT (Scale-Invariant Feature Transform) — describe características locales invariantes a escala, rotación, luminosidad y cambios moderados de perspectiva. Flujo: aplicar filtros gaussianos sucesivos (suavizar / emborronar) → Diferencia de Gaussianas (DoG) = restar imágenes suavizadas consecutivas para localizar puntos clave robustos → por cada punto clave, histograma de gradientes local → vector descriptor de 128 características por punto.
SURF (Speeded-Up Robust Features, ~2004) — evolución rápida de SIFT: robustez similar con mucho menos cómputo. Además del punto característico, identifica un radio / rango sobre el que ese punto aporta información. Usos de ambos: reconocimiento de objetos, seguimiento en video, reconocimiento facial, realidad aumentada.
Un audio es un solo número (la amplitud) que cambia con el tiempo. Para clasificarlo no le pasamos la onda cruda al modelo, sino medidas que la resumen. Hay tres familias:
Delta (Δ) y Delta-Delta (ΔΔ) — la analogía del coche:
¿Para qué? El timbre por sí solo no distingue bien dos sonidos parecidos; cómo evoluciona en el tiempo sí. Por eso al vector se le añaden Δ y ΔΔ.
En audio se analizan datos en una dimensión: amplitud vs. tiempo. Tres categorías: temporales, espectrales (frecuencia) y tiempo–frecuencia.
Se calculan directamente sobre la señal en el tiempo X[n]:
Energía E = Σ X[n]² (intensidad / potencia en la ventana)
RMS = √( Σ X[n]² / N ) (raíz del promedio de amplitudes²)
ZCR (Zero Crossing Rate) — cuántas veces la señal cambia de signo. Con la función signo (1 si la muestra es positiva, 0 si es negativa) se evalúa |signo(x[i]) − signo(x[i-1])| entre muestras contiguas y se promedia. Ej.: |signo(0.5) − signo(0.3)| = 0 (sin cruce); |signo(-0.2) − signo(0.3)| = 2 (cruce). ZCR alto → sonido ruidoso; bajo → sonido armónico. Sirve para distinguir voz de ruido o de sonidos percusivos.
Autocorrelación — se toma la misma señal, se desplaza sobre sí misma (lag) y se multiplica y suma → mide periodicidad / similitud en el tiempo.
Se calculan tras pasar al dominio de la frecuencia con la FFT:
X[k] = Σ x[n] · e^(-j·2πkn/N) N = longitud de la señal
Supuesto clave: la FFT asume que la señal es estacionaria (sus propiedades no cambian en el tiempo) y que la ventana captura un ciclo periódico.
Centroide espectral C = Σ f_k·|X[k]| / Σ |X[k]| (centro de masa del espectro)
Ancho de banda BW = √( Σ (f_k − C)²·|X[k]| / Σ |X[k]| ) (dispersión respecto a C)
Spectral roll-off frecuencia bajo la cual se acumula el 85 % de la amplitud total
Spectral flux SF = Σ ( X_t[k] − X_{t-1}[k] )² (cambio entre ventanas consecutivas)
Spectral flatness media geométrica / media aritmética del espectro (≈1 → espectro plano)
Ejemplos numéricos de clase — frecuencias {100, 500, 1000, 2000} Hz con amplitudes {0.1, 0.5, 0.3, 0.1}:
Coeficientes que representan la envolvente espectral con base en una escala perceptual adaptada al oído humano (≈15 Hz a 24–25 kHz).
Escala Mel — lineal en bajas frecuencias, logarítmica en altas:
Mel(f) = 2595 · log₁₀( 1 + f/700 )
8 pasos para construir los MFCC:
Y[n] = X[n] − α·X[n-1]. Amplifica las frecuencias altas que se atenúan en el habla.Representación: matriz [coeficientes × ventanas de tiempo], se visualiza como mapa de calor. ⚠️ Irreversible: no se puede reconstruir el audio original — la DCT trunca coeficientes y se descarta la fase de la FFT; funciona solo como extractor de características.
Delta (Δ) = velocidad: diferencia entre el vector de la ventana actual y la anterior. Delta-Delta (ΔΔ) = aceleración: diferencia de los deltas consecutivos. Cada uno aporta 13 coeficientes por ventana.
Para meter un audio completo a un clasificador se resume la matriz de coeficientes con estadísticos a lo largo de las ventanas: media, desviación estándar, máximo y mínimo.
(13 MFCC × 4 estadísticos) = 52
(2 temporales × 4 estadísticos) = 8 (Energía, ZCR)
(5 espectrales × 4 estadísticos) = 20 (Centroide, BW, Roll-off, Flux, Flatness)
----
Dimensión total del vector = 80Temporales:
Energía E = Σ x[n]² RMS = √( (1/N) Σ x[n]² )
ZCR = (1/2N) Σ |sign(x[n]) − sign(x[n−1])| (alto = ruidoso · bajo = armónico)
Autocorrelación R(k) = Σ x[n]·x[n−k]
Ej. ventana [0.5, −0.3, 0.8, −0.2]: E = (1/4)(0.25+0.09+0.64+0.04) = 0.255
Ej. ventana [0.5, 0.3, −0.2, −0.4, 0.1]: 2 cruces → ZCR = 4 / (2·5) = 0.4
Espectrales (sobre la FFT X(k) = Σ x[n] e^(−j2πkn/N)):
Centroide C = Σ fₖ|X[k]| / Σ|X[k]| Ej. → 760 Hz
Ancho de banda BW = √( Σ (fₖ − C)² |X[k]| / Σ|X[k]| ) Ej. → ≈ 498.4 Hz
Roll-off: menor R tal que Σ₀..ᴿ|X[k]| = α Σ₀..ᴷ|X[k]| (α = 0.85 o 0.95) Ej. → 1500 Hz
Flux = Σ ( |Xₜ[k]| − |Xₜ₋₁[k]| )² Ej. → 0.27
Flatness = media geométrica / media aritmética Ej. → ≈ 0.96 (espectro casi plano)
Escala Mel (bajas frecuencias ≈ lineal, altas ≈ logarítmica):
Mel(f) = 2595 · log₁₀(1 + f/700) f = 700 · (10^(m/2595) − 1)
Etapas MFCC: 1) pre-énfasis y[n] = x[n] − α x[n−1], α ≈ 0.95 · 2) framing 20–40 ms, 50 % de solape · 3) ventana de Hamming w[n] = 0.54 − 0.46 cos(2πn/(N−1)) · 4) FFT y espectro de potencia · 5) banco de 20–40 filtros triangulares Mel, energíaᵢ = Σ P(k) Hᵢ[k] · 6) logaritmo · 7) DCT-II, quedarse con los primeros 12–13 → MFCC. Con Δ y ΔΔ: matriz #ventanas × 39.
Contenido de la Clase 02 y la Clase 03 (esta con audio parcial, completada con el deck) + diapositivas del profesor Clase 5 y Clase 6. Retomado en la Clase 05 del sitio (11 sep) con la presentación y evaluación de la Práctica 1 (PCA/SVD/reconstrucción).
O(2^d)).Σ|Wⱼ|; peso → 0 = variable descartada) y árboles (importancia por reducción de impureza, normalizada a suma 1, umbral).X = UΣVᵀ): forma estable de calcular PCA; V = componentes, valores singulares = √λ.σᵢ² / Σσⱼ². Error muy común olvidarlo. (En el método de covarianza los λ se usan directos.)O(2^d); inviable con más de ~15–20 características.λ > 1).Evalúan cada característica de forma independiente del algoritmo de aprendizaje, antes de entrenar: 1) calcular una medida de relevancia, 2) ordenar por puntuación, 3) quedarse con las k mejores o las que superan un umbral.
Correlación de Pearson — relación lineal entre dos variables cuantitativas continuas.
r = Σ(xᵢ − x̄)(yᵢ − ȳ) / √( Σ(xᵢ − x̄)² · Σ(yᵢ − ȳ)² )
r > 0 correlación positiva · r = 0 sin correlación lineal · r < 0 negativa
Chi-cuadrado (χ²) — dependencia entre variables categóricas: compara frecuencias observadas Oᵢ vs. esperadas Eᵢ bajo la hipótesis nula de no asociación.
χ² = Σ (Oᵢ − Eᵢ)² / Eᵢ Eᵢ = (total fila × total columna) / total general
Ejemplo (compra sí/no × hombre/mujer, 200 casos): esperados = 55/45; χ² = 4.09 + 5.00 + 4.09 + 5.00 = 18.18. Grados de libertad gl = (filas−1)(columnas−1) = 1; χ²crítico (α = 0.05) = 3.841. Como 18.18 > 3.841 → variables dependientes → característica relevante.
ANOVA F-score — compara la varianza entre grupos con la varianza dentro de los grupos; F = varianza entre grupos / varianza dentro de los grupos. F alto → las medias de los grupos difieren → la variable aporta.
| Métrica | Tipo de característica | Tipo de objetivo |
|---|---|---|
| Correlación de Pearson | Continua | Continua |
| Chi-cuadrado | Categórica | Categórica |
| ANOVA F-score | Continua | Categórica |
| Información mutua | Cualquiera | Cualquiera |
Usan un algoritmo de aprendizaje como caja negra para evaluar iterativamente el rendimiento (exactitud del clasificador) de distintos subconjuntos de variables. El orden de las características en la matriz de entrada no importa para el modelo (A+B = B+A).
Forward Selection (hacia adelante): iniciar con subconjunto vacío (o con 1 característica; ej. B → 70 %). Añadir una variable a la vez, entrenar y evaluar; consolidar si mejora (B+A mejora; B+A+C → 80 %). Parar cuando añadir empeora (B+A+C+D baja 1 %). Óptimo: {B, A, C}.
Backward Selection (hacia atrás): iniciar con todas ({A,B,C,D} → 82 %). Quitar una variable a la vez; consolidar la remoción si mejora o mantiene (quitar A → 83 %; quitar D → 84 %). Parar cuando quitar cualquiera de las restantes desploma el desempeño (quitar B −24 %, quitar C −14 %). Óptimo: {B, C} con 84 %.
Exhaustive Feature Selection: evaluar todas las combinaciones (individuales, parejas sin repetir, tríos, todas). Complejidad O(2^d). Ventaja: garantiza el óptimo global ({B,C} 84 % > 82 % con las 4). Desventaja: un modelo entrenado por combinación → inviable con más de ~15–20 características.
| Método | Cuándo conviene | Desventaja |
|---|---|---|
| Forward | Se espera que pocas características sean relevantes; ahorra cómputo | Una vez añadida, no la puede quitar → conserva redundantes / omite interacciones |
| Backward | Se sospecha que la mayoría son relevantes; base sólida, capta interacciones | Costoso (entrenamientos con todas); inviable con miles de características |
| Exhaustive | Se necesita el óptimo global | Solo viable con un clasificador simple (bayesiano > red neuronal) |
La selección ocurre durante el entrenamiento: el propio modelo tiene un algoritmo de selección intrínseco que asigna pesos / importancias y penaliza o elimina las variables que no aportan.
Regularización Lasso (norma L1) — Least Absolute Shrinkage and Selection Operator. Modifica la función de pérdida (qué tanto te equivocas: predicción vs. realidad) añadiendo el término Σ |Wⱼ|.
Wⱼ. W alto (15–20) → muy importante. Si W baja (0.5) o llega a exactamente 0 → el modelo descarta la variable. El algoritmo ajusta los W dinámicamente para optimizar la clasificación.Árboles de decisión — reglas de umbral Xⱼ ≤ t (según se cumpla, el flujo va al nodo hijo izquierdo o derecho).
Σ (muestras del nodo / total) × reducción de impureza, sumada sobre todos los nodos que usan esa variable.No hay regla fija: la elección del método depende de los recursos de cómputo y de la naturaleza de los datos. Sin poder de cómputo → usar métodos embebidos o filtrado previo al entrenamiento (wrapper/exhaustive resultan inviables). En la práctica es válido y recomendable comparar 2 o más métodos sobre el mismo problema para contrastar resultados y justificar las decisiones de diseño.
A diferencia de la selección (conserva intactas las variables originales), la reducción de dimensionalidad proyecta los datos a un espacio nuevo de menor dimensión mediante combinaciones matemáticas: las nuevas variables ya no representan lo mismo (ya no son peso, edad o género, sino combinaciones de ellas).
Importa porque operar con vectores de alta dimensión provoca: mucho más tiempo de cómputo, mucho más almacenamiento, y sobre todo degradación del rendimiento de los modelos (maldición de la dimensionalidad).
Transforma variables posiblemente correlacionadas en componentes principales no correlacionados, ordenados por la varianza que explican. Asume que la dirección de máxima varianza es la más informativa (ahí los patrones de las clases quedan más separados).
Combinación lineal: Z = A₁X₁ + A₂X₂ + … — Xᵢ variables originales, Aᵢ coeficientes (escalares), Z variable transformada.
Vectores y valores propios: un vector propio v mantiene su dirección al multiplicarlo por la matriz A, solo cambia de magnitud; ese factor es el valor propio λ.
A v = λ v (A = matriz de covarianza; v = dirección; λ = varianza en esa dirección)
Z = W · X (W = matriz de vectores propios; X = datos originales; Z = proyección)
Algoritmo (método de la matriz de covarianza):
X centrada de N×D: Σ = (1/(N−1)) Xᵀ X. Es cuadrada; mide la variabilidad conjunta entre parejas de variables.det(Σ − λI) = 0 (evita la solución trivial) → valores propios λ₁, λ₂, … y vectores propios v₁, v₂, …λ de forma descendente por varianza explicada; tomar los primeros K vectores propios → matriz W_K. Proyección: X_nuevo = X · W_K, dimensiones N×K con K < D.PC1 = dirección de máxima varianza. PC2 = segunda mayor varianza, estrictamente ortogonal a PC1. Todos los componentes son ortogonales entre sí (base ortogonal; ninguno se obtiene por combinación lineal de los otros).
Ejemplo 1: Σ = [[4, 2], [2, 3]]
det(Σ − λI) = (4−λ)(3−λ) − 4 = λ² − 7λ + 8 = 0 → (λ−1)(λ−8) = 0 → λ₁ = 8 , λ₂ = 1
λ₁ = 8: (Σ − 8I) w = 0 → fila 1: −4 w₁ + 2 w₂ = 0 → w₂ = 2 w₁
v₁ = [1, 2]ᵀ normalizado: v₁ = (1/√5) [1, 2]ᵀ
λ₂ = 1: (Σ − I) w = 0 → fila 1: 3 w₁ + 2 w₂ = 0 → w₂ = −(3/2) w₁
v₂ = [2, −3]ᵀ normalizado: v₂ = (1/√13) [2, −3]ᵀ
Ejemplo 2: Σ = [[4, 1], [2, 3]]
det(Σ − λI) = (4−λ)(3−λ) − 2 = λ² − 7λ + 10 = 0 → λ₁ = 5 , λ₂ = 2
v₁ = [1, 1]ᵀ , v₂ = [1, −2]ᵀ
Recordatorio de las diapositivas: la suma de todos los valores propios = varianza total; varianza explicada acumulada = (Σᵢ₌₁..ₖ λᵢ) / (Σᵢ₌₁..d λᵢ).
varianza explicada (individual) = λᵢ / Σ λⱼ (la acumulada llega a 1.0 = 100 %)
K = 5.λ > 1 (aportan más que una sola variable original).X = U Σ Vᵀ
U = vectores singulares izquierdos
Vᵀ = transpuesta de los vectores singulares derechos
Σ = matriz DIAGONAL con los valores singulares en orden descendente
V) = las direcciones principales (componentes de PCA). Los valores singulares = raíz cuadrada de los valores propios de la matriz de covarianza.X (restar la media); (2) aplicar SVD directo sobre X centrada; (3) obtener Σ y V.σᵢ² / Σ σⱼ². Olvidarlo da resultados erróneos (error muy común en exámenes y en código).Xᵀ X (costoso); eficiente para datasets masivos con N ≫ D o D ≫ N. Es lo que usan la mayoría de las bibliotecas.Deck del profesor, aún sin audio grabado. Puntos que cubre, para no perder de vista la laguna:
X̂ = Z·Wₖᵀ + μ; el error ‖X − X̂‖² es mínimo con los k componentes de mayor varianza (mejor aproximación de rango k). EigenFaces como caso de uso.S_B, dentro de clases S_W; coeficiente de Rayleigh J(w) = (wᵀS_B w)/(wᵀS_W w); se resuelve S_W⁻¹S_B w = λw. Da como máximo min(K−1, d) discriminantes. Si S_W es singular: PCA previo, regularización (1−α)S_W + αI o pseudoinversa por SVD.Siguiente clase del deck: Evaluación de modelos (Tema 4).
Visto en la Clase 04 (7 sep 2026): matriz de confusión y tipos de error, métricas (precisión, recall, especificidad, F₁, exactitud balanceada), curva ROC / AUC, sesgo–varianza / underfitting–overfitting, datos desbalanceados, esquemas de validación (Hold-out, K-Fold, Stratified K-Fold), fuga de datos y data drift. (El programa del profesor no desglosa subtemas.)
Visto en la Clase 06 (14 sep 2026): funciones de decisión lineales/cuadráticas/no lineales, estrategias multiclase (1 vs. Resto, 1 vs. 1, Máquina Lineal), interpretación geométrica (espacio de características vs. espacio de pesos), algoritmo de aprendizaje del perceptrón, y sistemas de funciones ortogonales (Legendre, Laguerre, Hermite). (El programa del profesor no desglosa subtemas.)
Sin ver todavía. (El programa del profesor no desglosa subtemas.)
Sin ver todavía. (El programa del profesor no desglosa subtemas.)
Sin ver todavía. (El programa del profesor no desglosa subtemas.)
Sin ver todavía. (El programa del profesor no desglosa subtemas.)
Sin ver todavía. (El programa del profesor no desglosa subtemas.)
Clases grabadas, en orden. Cada tarjeta abre la página completa de esa clase.
Clase 0128 ago 2026 · Tema 2Extracción de características: estadísticas, histograma, momentos de Hu, textura GLCM, HOG (vector de 3 780), SIFT/SURF y descriptores de audio (temporales, espectrales, MFCC + Δ/ΔΔ; vector de 80). Clase 0231 ago 2026 · Tema 3Selección de características (Wrapper: Forward / Backward / Exhaustive · Embebidos: Lasso, árboles) y reducción de dimensionalidad (PCA, cómo elegir K, PCA por SVD). Clase 034 sep 2026 · Tema 3 · audio parcialReducción de dimensionalidad II: reconstrucción con PCA (X̂ = Z·Wₖᵀ + μ, MSE vs. k con Wine), EigenFaces (matriz N×P, rostro promedio, primeras vs. últimas componentes), criterios para elegir K (codo / Kaiser / umbral), LDA y otros métodos (t-SNE, Kernel PCA, QDA) del deck. Del audio: efecto de estandarizar y diferencias de signo entre métodos. Clase 047 sep 2026 · Tema 4Evaluación de modelos: matriz de confusión y tipos de error (I/II), métricas (precisión, recall, especificidad, F₁, exactitud balanceada), curva ROC / AUC, sesgo–varianza y underfitting/overfitting, datos desbalanceados, esquemas de validación (Hold-out, K-Fold, Stratified K-Fold), fuga de datos y data drift. Clase 0511 sep 2026 · Tema 3 (continuación)Presentación y evaluación de la Práctica 1: PCA/SVD, centrado vs. estandarización, criterios para elegir K (codo, Kaiser, umbral) en Iris/Wine, y Eigenfaces con Olivetti Faces. 📝 No grabé mi exposición — el profesor me preguntó y no supe responder. Clase 0614 sep 2026 · Tema 5Funciones de decisión lineales/cuadráticas/no lineales, estrategias multiclase (1 vs. Resto, 1 vs. 1, Máquina Lineal), regiones de ambigüedad, espacio de características vs. espacio de pesos, algoritmo del perceptrón, y polinomios ortogonales (Legendre, Laguerre, Hermite).