ia machine learning python estadística

Derivadas del Error Cuadrático Medio: De la teoría a la práctica

Una de las partes confusas del Machine Learning es entender **cómo se calculan las derivadas** del Error Cuadrático Medio (ECM) para actualizar los pesos del modelo. En este post voy a explicar paso a paso, con mucho detalle, cómo llegamos a las fórmulas que usamos en el gradiente descendente..

Por Rafael Aldo Ramos · ·
- vistas
Derivada del Error Cuadrático Medio MSE en Machine Learning con Python

Derivadas del Error Cuadrático Medio: De la teoría a la práctica

Introducción

Una de las partes confusas del Machine Learning es entender cómo se calculan las derivadas del Error Cuadrático Medio (ECM) para actualizar los pesos del modelo. En este post voy a explicar paso a paso, con mucho detalle, cómo llegamos a las fórmulas que usamos en el gradiente descendente.

Si alguna vez te preguntaste:

Este post es para ti.


El problema: Función de predicción

Tenemos un modelo de regresión lineal simple:

y^=wX+b\hat{y} = w \cdot X + b

Donde:

Ejemplo numérico:

X = [2, 4, 5]
y_real = [3, 5, 7]

Con w=1 y b=1:
y_pred = 1*[2,4,5] + 1 = [3, 5, 6]

La función de error (ECM)

Necesitamos una función que mida qué tan mal está nuestro modelo:

ECM=1ni=1n(yiy^i)2ECM = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2

Sustituyendo y^=wX+b\hat{y} = wX + b:

ECM=1n(y(wX+b))2ECM = \frac{1}{n} \sum (y - (wX + b))^2

Esta es nuestra función objetivo que queremos minimizar.


¿Por qué necesitamos derivadas?

Para minimizar el ECM, necesitamos saber:

La derivada nos dice:


La regla de la cadena

Esta es la clave para entender todo. La regla de la cadena dice:

df(g(x))dx=dfdgdgdx\frac{df(g(x))}{dx} = \frac{df}{dg} \cdot \frac{dg}{dx}

En palabras: si una función está compuesta, derivamos “de afuera hacia adentro” y multiplicamos.

Ejemplo simple:

f(x)=(x+2)2f(x) = (x + 2)^2

Esto es una composición:

Derivada: dfdx=2u1=2(x+2)\frac{df}{dx} = 2u \cdot 1 = 2(x + 2)


Derivada del ECM con respecto a w

Vamos paso a paso, sin saltarnos nada.

Paso 1: Escribir la función completa

ECM(w)=1n[y(wX+b)]2ECM(w) = \frac{1}{n} \sum [y - (wX + b)]^2

Paso 2: Identificar la composición

Tenemos tres niveles:

  1. Función exterior: (algo)2(\text{algo})^2
  2. Función del medio: yalgoy - \text{algo}
  3. Función interior: wX+bwX + b

Paso 3: Aplicar la regla de la cadena

Derivamos de afuera hacia adentro:

ECMw=1nw[y(wX+b)]2\frac{\partial ECM}{\partial w} = \frac{1}{n} \sum \frac{\partial}{\partial w}[y - (wX + b)]^2

Primera capa: derivar el cuadrado

Usando la regla de la cadena (u2)=2uu(u^2)' = 2u \cdot u':

=1n2[y(wX+b)]w[y(wX+b)]= \frac{1}{n} \sum 2[y - (wX + b)] \cdot \frac{\partial}{\partial w}[y - (wX + b)]

Segunda capa: derivar lo de adentro

w[y(wX+b)]=w[ywXb]\frac{\partial}{\partial w}[y - (wX + b)] = \frac{\partial}{\partial w}[y - wX - b]

Ahora derivamos término por término:

Por lo tanto: w[ywXb]=0X0=X\frac{\partial}{\partial w}[y - wX - b] = 0 - X - 0 = -X

Paso 4: Juntarlo todo

ECMw=1n2[y(wX+b)](X)\frac{\partial ECM}{\partial w} = \frac{1}{n} \sum 2[y - (wX + b)] \cdot (-X)

=1n2X[yy^]= \frac{1}{n} \sum -2X[y - \hat{y}]

Reordenando:

=21nX(yy^)= -2 \cdot \frac{1}{n} \sum X(y - \hat{y})

=2mean[X(yy^)]= -2 \cdot \text{mean}[X \cdot (y - \hat{y})]

¡Esta es la fórmula final!


Derivada del ECM con respecto a b

Ahora hacemos lo mismo pero derivando respecto a b (bias).

Paso 1: Escribir la función

ECM(b)=1n[y(wX+b)]2ECM(b) = \frac{1}{n} \sum [y - (wX + b)]^2

Paso 2: Aplicar la regla de la cadena

Primera capa: derivar el cuadrado

ECMb=1n2[y(wX+b)]b[y(wX+b)]\frac{\partial ECM}{\partial b} = \frac{1}{n} \sum 2[y - (wX + b)] \cdot \frac{\partial}{\partial b}[y - (wX + b)]

Segunda capa: derivar lo de adentro

b[ywXb]\frac{\partial}{\partial b}[y - wX - b]

Derivamos término por término:

Por lo tanto: b[ywXb]=001=1\frac{\partial}{\partial b}[y - wX - b] = 0 - 0 - 1 = -1

Paso 3: Juntarlo todo

ECMb=1n2[y(wX+b)](1)\frac{\partial ECM}{\partial b} = \frac{1}{n} \sum 2[y - (wX + b)] \cdot (-1)

=21n[yy^]= -2 \cdot \frac{1}{n} \sum [y - \hat{y}]

=2mean[yy^]= -2 \cdot \text{mean}[y - \hat{y}]

¡Esta es la fórmula final para el bias!


Comparación lado a lado

ParámetroDerivadaIntuición
w (peso)2mean[X(yy^)]-2 \cdot \text{mean}[X \cdot (y - \hat{y})]Multiplicamos por X porque w está multiplicando a X
b (bias)2mean[yy^]-2 \cdot \text{mean}[y - \hat{y}]No multiplicamos por nada porque b es solo una suma

La diferencia clave:



Más sobre ia Probar Yagware gratis