Capítulo 11 Neural Networks

Una Neural Network es una red de neuronas artificiales inspiradas en la biología humana configuradas para realizar tareas específicas como la clasificación o el reconocimiento de patrones.

11.1 Single Layer Neural Networks

Una red neuronal toma un vector de entrada de \(p\) variables \(X = (X_1,X_2, ...,X_p)\) y construye una función no lineal \(f(X)\) para predecir la respuesta \(Y\). Antes vimos modelos de predicción no lineales (ej. árboles) pero lo que distingue a las redes neuronales de estos métodos es la estructura particular del modelo. La Figura 11.1 muestra una red neuronal simple para modelar una respuesta cuantitativa utilizando \(p = 4\) predictores. En la terminología de las redes neuronales, las cuatro variables \(X_1, ..., X_4\) componen las unidades en la capa de entrada. Las flechas indican que cada una las variables de la capa de entrada alimenta a cada una de las \(K\) unidades de la capa de oculta (puede haber \(K\); en este caso hay 5). El modelo de red neuronal tiene unidades ocultas de la forma:

\[\begin{align} f(X) =& \beta_0 + \sum_{k=1}^{K} \beta_k h_k(X) \\ =& \beta_0 + \sum_{k=1}^{K} \beta_k g(w_{k0} + \sum_{j=1}^{p} w_{kj} X_j) \tag{11.1} \end{align}\]

Se construye aquí en dos pasos. Primero las \(K\) activaciones \(A_k\), \(k = 1, ..., K\), en la capa oculta se calculan como funciones de las características de entrada \(X_1, ..., X_p\):

\[\begin{equation} \tag{11.2} A_k = h_k(X) = g(w_{k0} + \sum_{j=1}^{p} w_{kj} X_j) \end{equation}\]

donde \(g(z)\) es una función de activación no lineal que se especifica de antemano. Se puede pensar en cada \(A_k\) como una transformación diferente \(h_k(X)\) de las características originales. Estas activaciones \(K\) de la capa oculta luego alimentan la capa de salida, lo que da como resultado:

\[\begin{equation} \tag{11.3} f(X) = \beta_0 + \sum_{k=1}^{K} \beta_k A_k \end{equation}\]

un modelo de regresión lineal en las \(K = 5\) activaciones. Todos los parámetros \(\beta_0, ..., \beta_k\) y \(w_{10}, ..., w_{Kp}\) deben estimarse a partir de los datos. La función de activación más utilizada en las redes neuronales modernas es el ReLU (rectified linear unit), que toma la forma:

\[\begin{equation} \tag{11.4} g(z) = (z)_{+} = \begin{cases} 0 & \text{si } z < 0 \\ z & \text{en otro caso} \end{cases} \end{equation}\]

El modelo representado en la Figura 11.1 obtiene 5 variables nuevas mediante el cálculo de 5 combinaciones lineales diferentes de \(X\) y luego transforma cada una a través de una función de activación \(g(\cdot)\), el modelo final es lineal en estas últimas.

Single Layer Neural Network

Figura 11.1: Single Layer Neural Network

La no linealidad en la función de activación \(g(\cdot)\) es esencial, ya que sin ella el modelo \(f(X)\) en la ecuación (11.1) colapsaría en un modelo lineal simple en \(X_1, ..., X_p\). Además, tener una función de activación no lineal permite que el modelo capture no linealidades complejas y efectos interacción.

Ajustar una red neuronal requiere estimar los parámetros desconocidos en la ecuación (11.1). cuando la variable de respuesta es cuantitativa normalmente se busca minimizar el \(EMC\).