\documentclass[11pt]{article}
\usepackage[spanish]{babel}
\usepackage{amsmath, amssymb, amsthm}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{hyperref}
\geometry{margin=13mm}

\title{Introducción Matemática al Análisis Multivariante y Aprendizaje Automático}
\author{Máster en Análisis de Datos para la Inteligencia de Negocios}

\begin{document}
\maketitle

\section{Marco probabilístico del aprendizaje}

Sea $(\Omega,\mathcal{F},\mathbb{P})$ un espacio de probabilidad. Sean variables aleatorias
\[
X:\Omega\to\mathcal{X}\subseteq\mathbb{R}^p\qquad Y:\Omega\to\mathcal{Y}
\]
de las que observamos una muestra aleatoria simple \(\mathcal D_n\), o
sea, con componentes \(D_i\) independientes y distribuidos
idénticamente
\[
\mathcal{D}_n=(D_i)_{i=1}^n={(X_i,Y_i)}_{i=1}^n
\]

Sea $\mathcal{F}$ una familia de funciones predictivas $f:\mathcal{X}\to\mathcal{Y}$ y sea $L:\mathcal{Y}\times\mathcal{Y}\to\mathbb{R}_+$ una función de pérdida.

\subsection{Riesgo poblacional y empírico}

\[
R(f)=\mathbb{E}[L(Y,f(X))],
\qquad
\hat R_n(f)=\frac{1}{n}\sum_{i=1}^n L(Y_i,f(X_i)).
\]

El problema fundamental del aprendizaje es
\[
\hat f_n = \arg\min_{f\in\mathcal{F}} \hat R_n(f).
\]

\section{Aprendizaje supervisado y no supervisado}

\subsection{Aprendizaje supervisado}

En regresión, $\mathcal{Y}=\mathbb{R}$ y típicamente $L(y,\hat y)=(y-\hat y)^2$.

En clasificación, $\mathcal{Y}={1,\dots,K}$ y puede tomarse
\[
L(y,\hat y)=\mathbf{1}(y\neq \hat y).
\]

\subsection{Aprendizaje no supervisado}

En ausencia de variable respuesta, el aprendizaje se formula como un problema de optimización geométrica.

\paragraph{PCA.}
Sea $X\in\mathbb{R}^{n\times p}$ la matriz de datos centrados. PCA busca
\[
\max_{|w|=1} w^\top S_T w, \qquad S_T = \frac{1}{n}X^\top X.
\]

\paragraph{k-means.}
\[
\min_{c,\mu}\sum_{i=1}^n |X_i-\mu_{c(i)}|^2.
\]

\section{Sesgo, varianza y complejidad}

La descomposición sesgo-varianza en regresión cuadrática es
\[
\mathbb{E}[(Y-\hat f(X))^2] = \text{sesgo}^2 + \text{varianza} + \sigma^2.
\]

\begin{figure}[h]
\centering
\includegraphics[width=0.7\textwidth]{bias_variance.pdf}
\caption{Ejemplo de infraajuste y sobreajuste.}
\end{figure}

% R code para generar la figura bias_variance.pdf
% set.seed(123)
% n <- 50
% x <- runif(n, -1, 1)
% y <- sin(pi*x) + rnorm(n, sd = 0.2)
% pdf("bias_variance.pdf")
% plot(x, y, pch = 16)
% xx <- seq(-1, 1, length = 200)
% fit1 <- lm(y ~ poly(x, 1))
% fit5 <- lm(y ~ poly(x, 5))
% fit10 <- lm(y ~ poly(x, 10))
% lines(xx, predict(fit1, newdata = data.frame(x = xx)))
% lines(xx, predict(fit5, newdata = data.frame(x = xx)), lty = 2)
% lines(xx, predict(fit10, newdata = data.frame(x = xx)), lty = 3)
% dev.off()

\section{Validación de modelos}

\subsection{Hold-out}
Se divide la muestra en conjuntos de entrenamiento y prueba:
\[
\mathcal{D}_n = \mathcal{D}_{\text{train}} \cup \mathcal{D}_{\text{test}}.
\]

\subsection{Validación cruzada}
En la validación cruzada $k$-fold, la muestra se divide en $k$ subconjuntos y se define
\[
\hat R_{CV}(f)=\frac{1}{k}\sum_{j=1}^k \hat R_{n_j}^{(-j)}(f).
\]

El caso límite $k=n$ corresponde a Leave-One-Out (DUF).

\section{Análisis discriminante lineal (LDA)}

Sea $K$ el número de clases. Definimos:
\[
\bar x_k = \frac{1}{n_k}\sum_{i:Y_i=k} X_i, \qquad \bar x = \frac{1}{n}\sum_{i=1}^n X_i.
\]

\subsection{Matriz within-class}
\[
S_W = \sum_{k=1}^K \sum_{i:Y_i=k} (X_i-\bar x_k)(X_i-\bar x_k)^\top.
\]

\subsection{Matriz between-class}
\[
S_B = \sum_{k=1}^K n_k (\bar x_k-\bar x)(\bar x_k-\bar x)^\top.
\]

\subsection{Criterio de Fisher}

El análisis discriminante lineal busca direcciones $w\in\mathbb{R}^p$ que maximicen el cociente
\[
J(w)=\frac{w^\top S_B w}{w^\top S_W w}.
\]

Esto conduce al problema de autovalores generalizado
\[
S_B w = \lambda S_W w.
\]

\section{Comparación PCA vs LDA}

PCA maximiza la varianza total:
\[
\max_{|w|=1} w^\top S_T w, \qquad S_T=S_W+S_B.
\]

LDA maximiza la separabilidad entre clases relativa a la dispersión interna.

\begin{figure}[h]
\centering
\includegraphics[width=0.7\textwidth]{pca_lda.pdf}
\caption{Proyección PCA vs LDA en el conjunto iris.}
\end{figure}

% R code para generar pca_lda.pdf
% library(MASS)
% data(iris)
% X <- as.matrix(iris[,1:4])
% y <- iris$Species
% pca <- prcomp(X, scale. = TRUE)
% lda_fit <- lda(Species ~ ., data = iris)
% Z <- predict(lda_fit)$x
% pdf("pca_lda.pdf")
% par(mfrow=c(1,2))
% plot(pca$x[,1], pca$x[,2], col=as.numeric(y), pch=16, main="PCA")
% plot(Z[,1], Z[,2], col=as.numeric(y), pch=16, main="LDA")
% dev.off()

\section{Unificación mediante optimización regularizada}

Muchos métodos de aprendizaje pueden escribirse como
\[
\hat f = \arg\min_{f\in\mathcal{F}} \left\{\hat R_n(f) + \Omega(f)\right\},
\]

donde $\Omega(f)$ es un término de regularización.

Ejemplos:
\begin{itemize}
\item Ridge: $\Omega(f)=\lambda|\beta|^2$.
\item Lasso: $\Omega(f)=\lambda|\beta|_1$.
\item PCA: restricción sobre el rango.
\item LDA: cociente de Rayleigh.
\end{itemize}

\section{Conclusión}

El aprendizaje automático puede entenderse como una extensión predictiva del análisis multivariante clásico, formulada como un problema de optimización estadística bajo incertidumbre.

\end{document}
